pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Add pkgsrc/wip/firefox-57.0beta4



Module Name:	pkgsrc-wip
Committed By:	Ryo ONODERA <ryoon%NetBSD.org@localhost>
Pushed By:	ryoon
Date:		Sun Oct 1 15:23:04 2017 +0900
Changeset:	6d4e76b45645e0aa9ac164451db7f043c6b99386

Added Files:
	firefox/.#distinfo.1.291
	firefox/DESCR
	firefox/Makefile
	firefox/PLIST
	firefox/distinfo
	firefox/files/desktop.in
	firefox/hacks.mk
	firefox/mozilla-common.mk
	firefox/options.mk
	firefox/patches/patch-aa
	firefox/patches/patch-build_gyp.mozbuild
	firefox/patches/patch-build_moz.configure_init.configure
	firefox/patches/patch-build_moz.configure_keyfiles.configure
	firefox/patches/patch-build_moz.configure_memory.configure
	firefox/patches/patch-build_moz.configure_old.configure
	firefox/patches/patch-config_Makefile.in
	firefox/patches/patch-config_baseconfig.mk
	firefox/patches/patch-config_external_moz.build
	firefox/patches/patch-config_stl__wrappers_ios
	firefox/patches/patch-config_stl__wrappers_ostream
	firefox/patches/patch-config_system-headers
	firefox/patches/patch-config_system__wrappers_unwind.h
	firefox/patches/patch-dom_base_moz.build
	firefox/patches/patch-dom_media_AudioStream.cpp
	firefox/patches/patch-dom_media_AudioStream.h
	firefox/patches/patch-dom_media_CubebUtils.cpp
	firefox/patches/patch-dom_media_moz.build
	firefox/patches/patch-dom_media_platforms_ffmpeg_ffvpx_FFVPXRuntimeLinker.cpp
	firefox/patches/patch-gfx_cairo_libpixman_src_pixman-arm-neon-asm.S
	firefox/patches/patch-gfx_gl_GLContextProviderGLX.cpp
	firefox/patches/patch-gfx_graphite2_moz-gr-update.sh
	firefox/patches/patch-gfx_moz.build
	firefox/patches/patch-gfx_skia_generate__mozbuild.py
	firefox/patches/patch-gfx_skia_moz.build
	firefox/patches/patch-gfx_thebes_gfxFont.cpp
	firefox/patches/patch-gfx_thebes_moz.build
	firefox/patches/patch-gfx_ycbcr_moz.build
	firefox/patches/patch-gfx_ycbcr_yuv__row__arm.S
	firefox/patches/patch-image_decoders_nsJPEGDecoder.cpp
	firefox/patches/patch-intl_hyphenation_glue_hnjalloc.h
	firefox/patches/patch-intl_unicharutil_util_moz.build
	firefox/patches/patch-ipc_chromium_src_base_atomicops.h
	firefox/patches/patch-ipc_chromium_src_base_lock__impl__posix.cc
	firefox/patches/patch-ipc_chromium_src_base_message__pump__libevent.cc
	firefox/patches/patch-ipc_chromium_src_base_platform__thread.h
	firefox/patches/patch-ipc_chromium_src_base_platform__thread__posix.cc
	firefox/patches/patch-ipc_chromium_src_base_process__util.h
	firefox/patches/patch-ipc_glue_CrossProcessSemaphore.h
	firefox/patches/patch-ipc_glue_CrossProcessSemaphore__posix.cpp
	firefox/patches/patch-ipc_glue_GeckoChildProcessHost.cpp
	firefox/patches/patch-js_src_build_moz.build
	firefox/patches/patch-js_src_jit_arm_Architecture-arm.cpp
	firefox/patches/patch-js_xpconnect_src_XPCConvert.cpp
	firefox/patches/patch-js_xpconnect_src_xpcprivate.h
	firefox/patches/patch-media_libcubeb_gtest_moz.build
	firefox/patches/patch-media_libcubeb_src_cubeb.c
	firefox/patches/patch-media_libcubeb_src_cubeb__alsa.c
	firefox/patches/patch-media_libcubeb_src_cubeb__oss.c
	firefox/patches/patch-media_libcubeb_src_moz.build
	firefox/patches/patch-media_libcubeb_update.sh
	firefox/patches/patch-media_libsoundtouch_src_cpu__detect__x86.cpp
	firefox/patches/patch-media_libsoundtouch_src_soundtouch__perms.h
	firefox/patches/patch-media_libtheora_lib_arm_armcpu.c
	firefox/patches/patch-media_libtheora_moz.build
	firefox/patches/patch-media_libtremor_moz.build
	firefox/patches/patch-media_libvorbis_moz.build
	firefox/patches/patch-media_libyuv_libyuv_source_mjpeg__decoder.cc
	firefox/patches/patch-media_openmax__dl_dl_api_armCOMM__s.h
	firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc
	firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc
	firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi
	firefox/patches/patch-modules_pdfium_update.sh
	firefox/patches/patch-mozglue_build_arm.cpp
	firefox/patches/patch-mozglue_build_arm.h
	firefox/patches/patch-netwerk_dns_moz.build
	firefox/patches/patch-servo_components_style_build__gecko.rs
	firefox/patches/patch-toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h
	firefox/patches/patch-toolkit_components_terminator_nsTerminator.cpp
	firefox/patches/patch-toolkit_crashreporter_google-breakpad_src_third_party_curl_curlbuild.h
	firefox/patches/patch-toolkit_library_moz.build
	firefox/patches/patch-toolkit_moz.configure
	firefox/patches/patch-toolkit_xre_glxtest.cpp
	firefox/patches/patch-toolkit_xre_nsEmbedFunctions.cpp
	firefox/patches/patch-xpcom_base_nscore.h
	firefox/patches/patch-xpcom_build_XPCOMInit.cpp
	firefox/patches/patch-xpcom_reflect_xptcall_md_unix_Makefile.in
	firefox/patches/patch-xpcom_reflect_xptcall_md_unix_moz.build
	firefox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp
	firefox/xpi.mk

Log Message:
Add pkgsrc/wip/firefox-57.0beta4

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=6d4e76b45645e0aa9ac164451db7f043c6b99386

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 firefox/.#distinfo.1.291                           |  126 +
 firefox/DESCR                                      |   10 +
 firefox/Makefile                                   |  101 +
 firefox/PLIST                                      | 4262 ++++++++++++++++++++
 firefox/distinfo                                   |   85 +
 firefox/files/desktop.in                           |  191 +
 firefox/hacks.mk                                   |   13 +
 firefox/mozilla-common.mk                          |  202 +
 firefox/options.mk                                 |  105 +
 firefox/patches/patch-aa                           |  248 ++
 firefox/patches/patch-build_gyp.mozbuild           |   12 +
 .../patch-build_moz.configure_init.configure       |   37 +
 .../patch-build_moz.configure_keyfiles.configure   |   21 +
 .../patch-build_moz.configure_memory.configure     |   15 +
 .../patch-build_moz.configure_old.configure        |   25 +
 firefox/patches/patch-config_Makefile.in           |   27 +
 firefox/patches/patch-config_baseconfig.mk         |   21 +
 firefox/patches/patch-config_external_moz.build    |   43 +
 firefox/patches/patch-config_stl__wrappers_ios     |    8 +
 firefox/patches/patch-config_stl__wrappers_ostream |    8 +
 firefox/patches/patch-config_system-headers        |   50 +
 .../patches/patch-config_system__wrappers_unwind.h |    9 +
 firefox/patches/patch-dom_base_moz.build           |   14 +
 firefox/patches/patch-dom_media_AudioStream.cpp    |   38 +
 firefox/patches/patch-dom_media_AudioStream.h      |   28 +
 firefox/patches/patch-dom_media_CubebUtils.cpp     |   14 +
 firefox/patches/patch-dom_media_moz.build          |   28 +
 ...a_platforms_ffmpeg_ffvpx_FFVPXRuntimeLinker.cpp |   39 +
 ...h-gfx_cairo_libpixman_src_pixman-arm-neon-asm.S |   39 +
 .../patches/patch-gfx_gl_GLContextProviderGLX.cpp  |   16 +
 .../patches/patch-gfx_graphite2_moz-gr-update.sh   |   30 +
 firefox/patches/patch-gfx_moz.build                |   26 +
 .../patches/patch-gfx_skia_generate__mozbuild.py   |   14 +
 firefox/patches/patch-gfx_skia_moz.build           |   14 +
 firefox/patches/patch-gfx_thebes_gfxFont.cpp       |   21 +
 firefox/patches/patch-gfx_thebes_moz.build         |   19 +
 firefox/patches/patch-gfx_ycbcr_moz.build          |   15 +
 firefox/patches/patch-gfx_ycbcr_yuv__row__arm.S    |   42 +
 .../patches/patch-image_decoders_nsJPEGDecoder.cpp |  367 ++
 .../patches/patch-intl_hyphenation_glue_hnjalloc.h |   16 +
 .../patches/patch-intl_unicharutil_util_moz.build  |   12 +
 .../patch-ipc_chromium_src_base_atomicops.h        |   15 +
 ...atch-ipc_chromium_src_base_lock__impl__posix.cc |   15 +
 ...pc_chromium_src_base_message__pump__libevent.cc |   22 +
 .../patch-ipc_chromium_src_base_platform__thread.h |   16 +
 ...pc_chromium_src_base_platform__thread__posix.cc |   17 +
 .../patch-ipc_chromium_src_base_process__util.h    |   14 +
 .../patches/patch-ipc_glue_CrossProcessSemaphore.h |   21 +
 ...patch-ipc_glue_CrossProcessSemaphore__posix.cpp |  191 +
 .../patch-ipc_glue_GeckoChildProcessHost.cpp       |   21 +
 firefox/patches/patch-js_src_build_moz.build       |   12 +
 .../patch-js_src_jit_arm_Architecture-arm.cpp      |   15 +
 .../patches/patch-js_xpconnect_src_XPCConvert.cpp  |   16 +
 .../patches/patch-js_xpconnect_src_xpcprivate.h    |   17 +
 .../patches/patch-media_libcubeb_gtest_moz.build   |   12 +
 firefox/patches/patch-media_libcubeb_src_cubeb.c   |   37 +
 .../patches/patch-media_libcubeb_src_cubeb__alsa.c |  561 +++
 .../patches/patch-media_libcubeb_src_cubeb__oss.c  |  452 +++
 firefox/patches/patch-media_libcubeb_src_moz.build |   28 +
 firefox/patches/patch-media_libcubeb_update.sh     |   12 +
 ...ch-media_libsoundtouch_src_cpu__detect__x86.cpp |   15 +
 ...tch-media_libsoundtouch_src_soundtouch__perms.h |   14 +
 .../patches/patch-media_libtheora_lib_arm_armcpu.c |   23 +
 firefox/patches/patch-media_libtheora_moz.build    |   16 +
 firefox/patches/patch-media_libtremor_moz.build    |   12 +
 firefox/patches/patch-media_libvorbis_moz.build    |   13 +
 ...ch-media_libyuv_libyuv_source_mjpeg__decoder.cc |   13 +
 .../patch-media_openmax__dl_dl_api_armCOMM__s.h    |   39 +
 ...les_video__capture_linux_device__info__linux.cc |   42 +
 ...s_video__capture_linux_video__capture__linux.cc |   30 +
 ...brtc_modules_video__capture_video__capture.gypi |   34 +
 firefox/patches/patch-modules_pdfium_update.sh     |   16 +
 firefox/patches/patch-mozglue_build_arm.cpp        |   59 +
 firefox/patches/patch-mozglue_build_arm.h          |   15 +
 firefox/patches/patch-netwerk_dns_moz.build        |   14 +
 .../patch-servo_components_style_build__gecko.rs   |   15 +
 ..._protobuf_src_google_protobuf_stubs_atomicops.h |   24 +
 ...-toolkit_components_terminator_nsTerminator.cpp |   27 +
 ...oogle-breakpad_src_third_party_curl_curlbuild.h |   17 +
 firefox/patches/patch-toolkit_library_moz.build    |   57 +
 firefox/patches/patch-toolkit_moz.configure        |   50 +
 firefox/patches/patch-toolkit_xre_glxtest.cpp      |   16 +
 .../patches/patch-toolkit_xre_nsEmbedFunctions.cpp |   24 +
 firefox/patches/patch-xpcom_base_nscore.h          |   15 +
 firefox/patches/patch-xpcom_build_XPCOMInit.cpp    |   28 +
 ...patch-xpcom_reflect_xptcall_md_unix_Makefile.in |   50 +
 .../patch-xpcom_reflect_xptcall_md_unix_moz.build  |   16 +
 ...xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp |   89 +
 firefox/xpi.mk                                     |   25 +
 89 files changed, 8713 insertions(+)

diffs:
diff --git a/firefox/.#distinfo.1.291 b/firefox/.#distinfo.1.291
new file mode 100644
index 0000000000..157e113b9f
--- /dev/null
+++ b/firefox/.#distinfo.1.291
@@ -0,0 +1,126 @@
+$NetBSD: distinfo,v 1.291 2017/08/17 12:47:55 ryoon Exp $
+
+SHA1 (firefox-55.0.3.source.tar.xz) = 8d9b0861ad71845d4b0e668f1981ec99e617ff36
+RMD160 (firefox-55.0.3.source.tar.xz) = aa14f156f2d346bdf787222977ad0642dff084de
+SHA512 (firefox-55.0.3.source.tar.xz) = 3cacc87b97871f3a8c5e97c17ef7025079cb5c81f32377d9402cdad45815ac6c4c4762c79187f1e477910161c2377c42d41de62a50b6741d5d7c1cd70e8c6416
+Size (firefox-55.0.3.source.tar.xz) = 236010652 bytes
+SHA1 (patch-aa) = 373af8f1df58d20e015b231625e60914554fb779
+SHA1 (patch-browser_base_content_baseMenuOverlay.xul) = 1d8959e2df0b546e381cf0e5af71808e8e7bebd7
+SHA1 (patch-browser_components_nsBrowserGlue.js) = c27a9a57056ed3227e60f5663d9275ef4204ab39
+SHA1 (patch-browser_components_preferences_in-content-new_main.xul) = 86395a554db4b052e9f05d3b39e1cab662a752c6
+SHA1 (patch-browser_components_preferences_in-content-new_privacy.js) = 17ffeaefa884e0a4a5bd9c2fc62369911fa46b98
+SHA1 (patch-browser_components_preferences_in-content-new_privacy.xul) = 3113d2ff23e6e74edf23d4486b4fa8d2cac167f1
+SHA1 (patch-browser_components_preferences_in-content_advanced.js) = 931d612d167e5d11d93fdc16bb6e3e5012571889
+SHA1 (patch-browser_components_preferences_in-content_advanced.xul) = 1d88c1cac70e9f90d5cd96cdedfa129389bda005
+SHA1 (patch-browser_confvars.sh) = 6acc570e22c82c3b48ac32dc5d0301468252b979
+SHA1 (patch-browser_locales_en-US_chrome_browser_preferences-old_advanced.dtd) = 10cbe84c1c91afb3a5c35091a78b222513dc426c
+SHA1 (patch-browser_locales_en-US_chrome_browser_preferences_advanced.dtd) = 786423776f159c1303efefd63f0ae3680b397ec8
+SHA1 (patch-build_gyp.mozbuild) = bb3a2f8c1cad0e9cfdaefa721c5992cba2e2bf50
+SHA1 (patch-build_moz.configure_init.configure) = 5ec8da6b5aad7682a88b010a99e19f5d4403e6db
+SHA1 (patch-build_moz.configure_keyfiles.configure) = 4d346c6298e08853681aac018f9289190bc1841a
+SHA1 (patch-build_moz.configure_memory.configure) = 46237c1415eff3f99d4889a6300ec96af925f0a6
+SHA1 (patch-build_moz.configure_old.configure) = 2f452e717f0c9dc8224019b58e531e5e95cc7697
+SHA1 (patch-build_moz.configure_rust.configure) = 5dd3c36429ae297335556d55b99a6acb7dccf93c
+SHA1 (patch-build_pgo_profileserver.py) = b5ca4f309053090aa27521c42c95d2ab2e9130ce
+SHA1 (patch-config_Makefile.in) = 2ad29cef869171aa29b6c3e4ba4a5c99311e0742
+SHA1 (patch-config_baseconfig.mk) = fbc3fd75bf5d794284e5703a9df227949e819136
+SHA1 (patch-config_external_moz.build) = 68708dc0fb94119b9f140d05dd737e69bb6bba81
+SHA1 (patch-config_rules.mk) = f23b183d0201252245e82b775e9566d76ec854b4
+SHA1 (patch-config_stl__wrappers_ios) = 00d723e2f2f252485350ede5833f0bb84c1235c1
+SHA1 (patch-config_stl__wrappers_ostream) = 7be7fe36704ffbdc070a113b46b4f391a598206b
+SHA1 (patch-config_system-headers) = 96bc5e296d1ec9db9d764edadc36605a8f3aebe9
+SHA1 (patch-config_system__wrappers_unwind.h) = b3bdac0710179b9c8f8eabd824216d0114504491
+SHA1 (patch-dom_base_moz.build) = 5200cbfcf7b781324dca4c55d01bc8559a56aa4c
+SHA1 (patch-dom_media_AudioStream.cpp) = 3d2e3d92849a355c05d7ec0ded61d551ffe0c581
+SHA1 (patch-dom_media_AudioStream.h) = 26f70000cc4810834204d15b45e1469dd5f23617
+SHA1 (patch-dom_media_CubebUtils.cpp) = 3632cd0dd4b95f53f01050b8898b33fe198916b6
+SHA1 (patch-dom_media_MediaPrefs.h) = b5815efdfbf79a7ff92197bbd906f702565ea46f
+SHA1 (patch-dom_media_gtest_moz.build) = 6a58e050327ffcdcf2a4041946ddb79d6793d2d9
+SHA1 (patch-dom_media_moz.build) = 844dbb94463b8aab11649a5aa11142de0179d86c
+SHA1 (patch-dom_media_platforms_ffmpeg_ffvpx_FFVPXRuntimeLinker.cpp) = f2965930c50961b42576a983e93a08d67da50a2a
+SHA1 (patch-dom_messagechannel_MessagePort.cpp) = 1710b4da694aaeb8d929f1a143f24f8a615c2776
+SHA1 (patch-dom_messagechannel_MessagePortChild.h) = 73a2ac4702677ad68af0b1fa1247fd0a1d4e4d95
+SHA1 (patch-extensions_spellcheck_hunspell_glue_mozHunspell.cpp) = 30abff0aaabff07e13939a1571cefc5216760109
+SHA1 (patch-gfx_2d_ScaledFontBase.cpp) = 9684d54aa70e3b9b968f121287611cdd9e277f94
+SHA1 (patch-gfx_cairo_libpixman_src_pixman-arm-neon-asm.S) = 6e91ca436b73affe42ed4e683b3400beb28c4bc6
+SHA1 (patch-gfx_gl_GLContextProviderGLX.cpp) = 2cc997cab71a84c1f50a791693519a0626564426
+SHA1 (patch-gfx_graphite2_moz-gr-update.sh) = 09eb2fa66109d38a3aedc940fcaaee5f91e216ae
+SHA1 (patch-gfx_moz.build) = 0d669ac6dc1af17ea8ed7e84e4915947c2a6b1ca
+SHA1 (patch-gfx_skia_generate__mozbuild.py) = fba2f212f84e6cc20a4269e21ed654c348ae8fee
+SHA1 (patch-gfx_skia_moz.build) = 7363e76ac75e27cffe5ee1194741d444a625b871
+SHA1 (patch-gfx_thebes_moz.build) = 685c25bf0e4f70f121c032b413ade8904f029afc
+SHA1 (patch-gfx_ycbcr_moz.build) = 705c36b972ef1533330e4a180002cef1c22755bf
+SHA1 (patch-gfx_ycbcr_yuv__row__arm.S) = 8ae94d3c10fc8472e0d6287a841f1366d4342770
+SHA1 (patch-image_decoders_nsJPEGDecoder.cpp) = ed86c3fbb3aef753eec6f6a97940594aac5f3f2f
+SHA1 (patch-intl_hyphenation_glue_hnjalloc.h) = abe01bea5872a57f3d00bbbf89f958621f08a655
+SHA1 (patch-intl_unicharutil_util_moz.build) = fffed7139faa3f15d6ab3be9b673cb0b14a30ce9
+SHA1 (patch-ipc_chromium_src_base_atomicops.h) = 24b63a6e51d9ab27f2788ee02f2ffa7e1c36f29a
+SHA1 (patch-ipc_chromium_src_base_lock__impl__posix.cc) = 16e37fe54ba1d8d233f6b04dbd06e248305d7f6e
+SHA1 (patch-ipc_chromium_src_base_message__pump__libevent.cc) = 99b9f3f9dd88f1c8008d2fb6058450695394f5cf
+SHA1 (patch-ipc_chromium_src_base_platform__thread.h) = 3ed4f482a8ccbd5db216c2623bf6dd93b0bbc1c9
+SHA1 (patch-ipc_chromium_src_base_platform__thread__posix.cc) = 937a843a7acf3085056e309ea5ab047bd9b95088
+SHA1 (patch-ipc_chromium_src_base_process__util.h) = 4b24c3467866a601d68bb83f44e5fd38fb27188d
+SHA1 (patch-ipc_glue_CrossProcessSemaphore.h) = 778a569887d8ad082abc2fa2fe89a0a943e84d64
+SHA1 (patch-ipc_glue_CrossProcessSemaphore__posix.cpp) = d1afeb74af97cf30c520b42a8d444ff95ef592a9
+SHA1 (patch-ipc_glue_GeckoChildProcessHost.cpp) = 260c29bacd8bf265951b7a412f850bf2b292c836
+SHA1 (patch-js_src_build_moz.build) = 4597a427262d0eb6ce8d14c0f557bfbe3f053e61
+SHA1 (patch-js_src_jit_ExecutableAllocator.h) = aaa7d4cf5b5464db6ed015e63d616adaa59a835d
+SHA1 (patch-js_src_jit_arm_Architecture-arm.cpp) = f0b554c169643b8447b4f29168d61ea257b18782
+SHA1 (patch-js_src_jit_none_MacroAssembler-none.h) = e443b009008e7aedbe1d3595021ecac3e27a99fd
+SHA1 (patch-js_xpconnect_src_XPCConvert.cpp) = 915777e9bb5366be41866cdb6ea0ad2b1c006dde
+SHA1 (patch-js_xpconnect_src_xpcprivate.h) = 97a221c76593be712f670aa409f2f1ad5dc20628
+SHA1 (patch-media_libcubeb_gtest_moz.build) = ebb4be6e6bca4a0ed6858516ec9fdb7828bbe2e1
+SHA1 (patch-media_libcubeb_src_cubeb.c) = 1b1b8d57eb710cad13518ded79a0ddee2681881b
+SHA1 (patch-media_libcubeb_src_cubeb__alsa.c) = 8c99af543c49c23fea102c4ad9ffd617cc90631e
+SHA1 (patch-media_libcubeb_src_cubeb__oss.c) = 88cdfb9b9aa8c2607ca79bfa7fce4353e65638f7
+SHA1 (patch-media_libcubeb_src_moz.build) = 54fa1221f80d460de115bfad9fbb5936403d2980
+SHA1 (patch-media_libcubeb_update.sh) = e8babe57ea7f0f32658b391e9c4f6310e57fc38c
+SHA1 (patch-media_libsoundtouch_src_cpu__detect__x86.cpp) = db61737afa7773e8cbd82976de3a02c917174696
+SHA1 (patch-media_libsoundtouch_src_soundtouch__perms.h) = 2d08a3b4176c155c57b458cb78043318b68d8fe2
+SHA1 (patch-media_libstagefright_binding_DecoderData.cpp) = 6815fbab38ea39b260583724ee95c32e6196a030
+SHA1 (patch-media_libstagefright_binding_MP4Metadata.cpp) = 7246a674a475b2b23a82798f74fa5d5fbbbfb968
+SHA1 (patch-media_libstagefright_binding_include_mp4__demuxer_DecoderData.h) = eb7d82470943ad8eecd1c955a578c23aa2c390e1
+SHA1 (patch-media_libstagefright_binding_include_mp4__demuxer_MP4Metadata.h) = 514212cd98f74eea72f0a3acd0b4205aa4c0d3a2
+SHA1 (patch-media_libstagefright_gtest_moz.build) = a1436e6289a8eb1a00ab7d5836052a3cd721154b
+SHA1 (patch-media_libstagefright_moz.build) = 35abbfee1d35533dc77a8362053f797208b58535
+SHA1 (patch-media_libtheora_lib_arm_armcpu.c) = 3ef05c05799d56b3c160634327d90dd33764c3df
+SHA1 (patch-media_libtheora_moz.build) = cbcb61331fea274b720a4b5c51db1f763fc10d81
+SHA1 (patch-media_libtremor_moz.build) = 87f66296be4db8487eae95b2779a9c02463555cf
+SHA1 (patch-media_libvorbis_moz.build) = cad67e49169ddab075fbfae2e6f0f950c1eccaf0
+SHA1 (patch-media_libyuv_libyuv_source_mjpeg__decoder.cc) = 8a264c439fa4749cd7c5acf96e1ae3f9bae0a886
+SHA1 (patch-media_openmax__dl_dl_api_armCOMM__s.h) = 40b3fa8aaec77d3bfec810f0bc4e76eae449d7c7
+SHA1 (patch-memory_mozalloc_mozalloc__abort.cpp) = 9e94002b01664a42af415639dc94caa127a73ac0
+SHA1 (patch-mobile_android_confvars.sh) = 42d4ba1737dc5b4591f892c804c78fa4e6ddfd71
+SHA1 (patch-modules_libjar_nsZipArchive.cpp) = 133b1658839d9b0f932a601670862c1f4cd70881
+SHA1 (patch-mozglue_build_arm.cpp) = f41ace63b3f1d2a8ccaffc98c3c64d1e22af5249
+SHA1 (patch-mozglue_build_arm.h) = 5e272f4e19b9681d43a63c45d78b0e44a392c7dc
+SHA1 (patch-netwerk_base_moz.build) = fba8c69b33cbf9ed59f54a7daf63e6dfa313a36b
+SHA1 (patch-netwerk_base_nsStandardURL.cpp) = d0aec4ac554ab53994179fa76c9df67ccc2495e3
+SHA1 (patch-netwerk_dns_moz.build) = d4ad35ee7152ca206156403954cbd247d1252ab0
+SHA1 (patch-third__party_python_futures_concurrent_futures_process.py) = 5e5c77334d29814f7548450163b625f451b74942
+SHA1 (patch-toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h) = 5ffb0782bbbff2fd17ad71e98b349b4ec3dc6c8c
+SHA1 (patch-toolkit_components_resistfingerprinting_nsRFPService.cpp) = 14d71a5197b09730b7065f95ee6c4ba3572d8241
+SHA1 (patch-toolkit_components_telemetry_Histograms.json) = 5232d568a68b3396b8deff04820a913f7e85cf99
+SHA1 (patch-toolkit_components_terminator_nsTerminator.cpp) = 5b6d2e5c9f685d32894898d3ef3aec09a1a1e5ce
+SHA1 (patch-toolkit_library_gtest_moz.build) = a8ac2a2930ac00f891a695639acfadef2679a599
+SHA1 (patch-toolkit_library_moz.build) = f77301bd81d37e7a599dbff57fba47428e4a00e2
+SHA1 (patch-toolkit_moz.configure) = 2647f5b2c278d5d710a0faade7b48ccc2fbfc11f
+SHA1 (patch-toolkit_toolkit.mozbuild) = e7c56631a061f80bfb5a6c8825ba42d5f2c1e76a
+SHA1 (patch-toolkit_xre_glxtest.cpp) = cf048491778610454b914400e53072afedd96e7b
+SHA1 (patch-toolkit_xre_nsAppRunner.cpp) = 40c3822ed227108fa6d90323dc19828d5e3ac996
+SHA1 (patch-toolkit_xre_nsEmbedFunctions.cpp) = 4a6ae13adfdfc63d50c1a53ee71aad1ee82e6131
+SHA1 (patch-xpcom_base_nsDebugImpl.cpp) = 80d251f2227ddc78f435ec2a5aa19c6512c1c15c
+SHA1 (patch-xpcom_base_nscore.h) = d7c96eda884d7f370442749c43caba50da61bbe4
+SHA1 (patch-xpcom_build_XPCOMInit.cpp) = 1e7cc3a7fd9515b10307fafa2b01ed689320bd54
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_Makefile.in) = 950874fbc255c93a828bddd84ffe8478094214cc
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp) = 493d1433ae72bbd0c65ab3f51de43fb864a6f58d
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__mips.S) = f310105510bb5fa6c6de122ebdebbfa18423d8d3
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__asm__ppc__netbsd.s) = 8e367d4d0baf24714ee80449fc8d6849ff08ca1c
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__netbsd__m68k.cpp) = b6dc5d54eeaa908d914116429e61f4b65a6a5f8e
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__ppc__netbsd.cpp) = 71a33723a557a6153405f6baec8404b25f841608
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp) = 0792c2c626d906e71c5183994cb32bf8cdb3e239
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcstubs__arm__netbsd.cpp) = 3a902eb9a23b3b5737f3c8cb5f96a5ad9a98a189
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcstubs__asm__mips.S) = 79a4686d368132aff804f217baa685b2e06bc396
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcstubs__asm__sparc64__netbsd.s) = 522bc237bc90d85c98b61a467a431fddd91d8c3c
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcstubs__netbsd__m68k.cpp) = 75db49c9cb6bf2993afba82b731d80389d866212
+SHA1 (patch-xpcom_rust_nsstring_gtest_moz.build) = 3ab2c533b57e9f55a20afffb521a4498418b33eb
diff --git a/firefox/DESCR b/firefox/DESCR
new file mode 100644
index 0000000000..1685779170
--- /dev/null
+++ b/firefox/DESCR
@@ -0,0 +1,10 @@
+Mozilla Firefox is a free, open-source and cross-platform web browser
+for Windows, Linux, MacOS X and many other operating systems.
+
+It is fast and easy to use, and offers many advantages over other web
+browsers, such as tabbed browsing and the ability to block pop-up
+windows.
+
+Firefox also offers excellent bookmark and history management, and it
+can be extended by developers using industry standards such as XML,
+CSS, JavaScript, C++, etc. Many extensions are available.
diff --git a/firefox/Makefile b/firefox/Makefile
new file mode 100644
index 0000000000..401b1e2ec0
--- /dev/null
+++ b/firefox/Makefile
@@ -0,0 +1,101 @@
+# $NetBSD: Makefile,v 1.307 2017/09/30 05:34:11 ryoon Exp $
+
+FIREFOX_VER=		${MOZ_BRANCH}${MOZ_BRANCH_MINOR}
+MOZ_BRANCH=		57.0
+MOZ_BRANCH_MINOR=	b4
+
+DISTNAME=	firefox-${FIREFOX_VER}.source
+PKGNAME=	firefox-${MOZ_BRANCH}${MOZ_BRANCH_MINOR:S/b/beta/:S/esr//}
+CATEGORIES=	www
+MASTER_SITES+=	${MASTER_SITE_MOZILLA:=firefox/releases/${FIREFOX_VER}/source/}
+MASTER_SITES+=	${MASTER_SITE_MOZILLA_ALL:=firefox/releases/${FIREFOX_VER}/source/}
+EXTRACT_SUFX=	.tar.xz
+
+WRKSRC=		${WRKDIR}/${DISTNAME:S/.source//}
+
+MAINTAINER=	ryoon%NetBSD.org@localhost
+HOMEPAGE=	http://www.mozilla.com/en-US/firefox/
+COMMENT=	Web browser with support for extensions (version ${MOZ_BRANCH:C/\..*//})
+LICENSE=	mpl-1.1
+
+MOZILLA_DIR=	# empty
+
+# Note: when updating remember to conditionalise about-background.png in PLIST
+CONFIGURE_ARGS+=	--enable-application=browser
+
+CFLAGS+=	-I${PREFIX}/include/nspr
+
+# workround for link of libxul.so etc.
+LDFLAGS+=		${COMPILER_RPATH_FLAG}${PREFIX}/lib/firefox ${COMPILER_RPATH_FLAG}${PREFIX}/lib
+LDFLAGS.SunOS+=		-lm
+
+NOT_PAX_MPROTECT_SAFE+=	lib/firefox/firefox
+NOT_PAX_MPROTECT_SAFE+=	lib/firefox/firefox-bin
+NOT_PAX_MPROTECT_SAFE+=	lib/firefox/plugin-container
+
+ALL_ENV+=		MOZILLA_PKG_NAME=firefox
+
+# Avoid ld "invalid section index" errors.
+BUILDLINK_TRANSFORM.SunOS+=	rm:-fdata-sections
+BUILDLINK_TRANSFORM.SunOS+=	rm:-ffunction-sections
+
+SUBST_CLASSES+=			dfly_malloc_h
+SUBST_STAGE.dfly_malloc_h=	pre-configure
+SUBST_MESSAGE.dfly_malloc_h=	Dont include malloc.h on dragonflybsd
+SUBST_SED.dfly_malloc_h=	-e 's,HAVE_MALLOC_H,HAVE_MALLOC_H \&\& !defined(__DragonFly__),g'
+SUBST_FILES.dfly_malloc_h=	media/libav/libavutil/mem.c
+SUBST_FILES.dfly_malloc_h+=	media/ffvpx/libavutil/mem.c
+
+LDFLAGS.DragonFly=	-lplc4 -lnspr4
+LDFLAGS.FreeBSD=	-lplc4 -lnspr4
+LDFLAGS.Linux=		-lnspr4
+
+.include "mozilla-common.mk"
+.include "options.mk"
+
+CHECK_INTERPRETER_SKIP+=lib/firefox-sdk/sdk/bin/header.py
+CHECK_INTERPRETER_SKIP+=lib/firefox-sdk/sdk/bin/typelib.py
+CHECK_INTERPRETER_SKIP+=lib/firefox-sdk/sdk/bin/xpidl.py
+CHECK_INTERPRETER_SKIP+=lib/firefox-sdk/sdk/bin/xpt.py
+
+CHECK_WRKREF_SKIP+=lib/firefox/chrome/toolkit/content/global/buildconfig.html
+
+MOZILLA=firefox
+MOZILLA_ICON=	${WRKSRC}/${OBJDIR}/dist/firefox/browser/chrome/icons/default/default48.png
+.if !empty(PKG_OPTIONS:Mofficial-mozilla-branding)
+MOZILLA_NAME=	Firefox
+.else
+MOZILLA_NAME=	Browser
+.endif
+
+SUBST_CLASSES+=		sys-dic
+SUBST_STAGE.sys-dic=	pre-configure
+SUBST_MESSAGE.sys-dic=	Reference to system hunspell dictionaries.
+SUBST_FILES.sys-dic=	extensions/spellcheck/hunspell/glue/mozHunspell.cpp
+SUBST_VARS.sys-dic=	PREFIX
+
+post-extract:
+	mv ${WRKSRC}/gfx/ycbcr/yuv_row_arm.s ${WRKSRC}/gfx/ycbcr/yuv_row_arm.S
+
+pre-configure:
+	cd ${WRKSRC} && autoconf
+	cd ${WRKSRC}/js/src && autoconf
+	cd ${WRKSRC} && mkdir ${OBJDIR}
+	cd ${WRKSRC}/${OBJDIR} && touch old-configure.vars
+
+post-build:
+	${SED} -e 's|@MOZILLA@|${MOZILLA}|g'				\
+	  -e 's|@MOZILLA_NAME@|${MOZILLA_NAME}|g'			\
+	  -e 's|@FIREFOX_ICON@|${MOZILLA}.png|g'			\
+	  < ${FILESDIR}/desktop.in					\
+	  > ${WRKDIR}/desktop
+
+INSTALLATION_DIRS+=	share/applications share/pixmaps
+post-install:
+	${INSTALL_DATA} ${WRKDIR}/desktop				\
+	  ${DESTDIR}${PREFIX}/share/applications/${MOZILLA}.desktop
+	${INSTALL_DATA} ${MOZILLA_ICON}					\
+	  ${DESTDIR}${PREFIX}/share/pixmaps/${MOZILLA}.png
+
+.include "../../sysutils/desktop-file-utils/desktopdb.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/firefox/PLIST b/firefox/PLIST
new file mode 100644
index 0000000000..7d603d756c
--- /dev/null
+++ b/firefox/PLIST
@@ -0,0 +1,4262 @@
+@comment $NetBSD$
+bin/firefox
+lib/firefox/application.ini
+lib/firefox/browser/blocklist.xml
+${PLIST.nobranding}lib/firefox/browser/chrome.manifest
+lib/firefox/browser/chrome/browser/content/branding/about-background.png
+lib/firefox/browser/chrome/browser/content/branding/about-logo.png
+lib/firefox/browser/chrome/browser/content/branding/about-logo%2x.png@localhost
+lib/firefox/browser/chrome/browser/content/branding/about-wordmark.svg
+lib/firefox/browser/chrome/browser/content/branding/about.png
+lib/firefox/browser/chrome/browser/content/branding/aboutDialog.css
+lib/firefox/browser/chrome/browser/content/branding/icon128.png
+lib/firefox/browser/chrome/browser/content/branding/icon16.png
+lib/firefox/browser/chrome/browser/content/branding/icon32.png
+lib/firefox/browser/chrome/browser/content/branding/icon48.png
+lib/firefox/browser/chrome/browser/content/branding/icon64.png
+lib/firefox/browser/chrome/browser/content/branding/identity-icons-brand.svg
+lib/firefox/browser/chrome/browser/content/briefcase.svg
+lib/firefox/browser/chrome/browser/content/browser/aboutDialog-appUpdater.js
+lib/firefox/browser/chrome/browser/content/browser/aboutDialog.css
+lib/firefox/browser/chrome/browser/content/browser/aboutDialog.js
+lib/firefox/browser/chrome/browser/content/browser/aboutDialog.xul
+lib/firefox/browser/chrome/browser/content/browser/aboutNetError.xhtml
+lib/firefox/browser/chrome/browser/content/browser/aboutPrivateBrowsing.css
+lib/firefox/browser/chrome/browser/content/browser/aboutPrivateBrowsing.js
+lib/firefox/browser/chrome/browser/content/browser/aboutPrivateBrowsing.xhtml
+lib/firefox/browser/chrome/browser/content/browser/aboutRobots-icon.png
+lib/firefox/browser/chrome/browser/content/browser/aboutRobots-widget-left.png
+lib/firefox/browser/chrome/browser/content/browser/aboutRobots.xhtml
+lib/firefox/browser/chrome/browser/content/browser/aboutSessionRestore.js
+lib/firefox/browser/chrome/browser/content/browser/aboutSessionRestore.xhtml
+lib/firefox/browser/chrome/browser/content/browser/aboutTabCrashed.css
+lib/firefox/browser/chrome/browser/content/browser/aboutTabCrashed.js
+lib/firefox/browser/chrome/browser/content/browser/aboutTabCrashed.xhtml
+lib/firefox/browser/chrome/browser/content/browser/aboutWelcomeBack.xhtml
+lib/firefox/browser/chrome/browser/content/browser/aboutaccounts/aboutaccounts.css
+lib/firefox/browser/chrome/browser/content/browser/aboutaccounts/aboutaccounts.js
+lib/firefox/browser/chrome/browser/content/browser/aboutaccounts/aboutaccounts.xhtml
+lib/firefox/browser/chrome/browser/content/browser/aboutaccounts/main.css
+lib/firefox/browser/chrome/browser/content/browser/aboutaccounts/normalize.css
+lib/firefox/browser/chrome/browser/content/browser/abouthealthreport/abouthealth.css
+lib/firefox/browser/chrome/browser/content/browser/abouthealthreport/abouthealth.js
+lib/firefox/browser/chrome/browser/content/browser/abouthealthreport/abouthealth.xhtml
+lib/firefox/browser/chrome/browser/content/browser/abouthome/aboutHome.css
+lib/firefox/browser/chrome/browser/content/browser/abouthome/aboutHome.js
+lib/firefox/browser/chrome/browser/content/browser/abouthome/aboutHome.xhtml
+lib/firefox/browser/chrome/browser/content/browser/abouthome/addons.png
+lib/firefox/browser/chrome/browser/content/browser/abouthome/addons%2x.png@localhost
+lib/firefox/browser/chrome/browser/content/browser/abouthome/bookmarks.png
+lib/firefox/browser/chrome/browser/content/browser/abouthome/bookmarks%2x.png@localhost
+lib/firefox/browser/chrome/browser/content/browser/abouthome/downloads.png
+lib/firefox/browser/chrome/browser/content/browser/abouthome/downloads%2x.png@localhost
+lib/firefox/browser/chrome/browser/content/browser/abouthome/history.png
+lib/firefox/browser/chrome/browser/content/browser/abouthome/history%2x.png@localhost
+lib/firefox/browser/chrome/browser/content/browser/abouthome/mozilla.svg
+lib/firefox/browser/chrome/browser/content/browser/abouthome/restore-large.png
+lib/firefox/browser/chrome/browser/content/browser/abouthome/restore-large%2x.png@localhost
+lib/firefox/browser/chrome/browser/content/browser/abouthome/restore.png
+lib/firefox/browser/chrome/browser/content/browser/abouthome/restore%2x.png@localhost
+lib/firefox/browser/chrome/browser/content/browser/abouthome/settings.png
+lib/firefox/browser/chrome/browser/content/browser/abouthome/settings%2x.png@localhost
+lib/firefox/browser/chrome/browser/content/browser/abouthome/snippet1.png
+lib/firefox/browser/chrome/browser/content/browser/abouthome/snippet1%2x.png@localhost
+lib/firefox/browser/chrome/browser/content/browser/abouthome/snippet2.png
+lib/firefox/browser/chrome/browser/content/browser/abouthome/snippet2%2x.png@localhost
+lib/firefox/browser/chrome/browser/content/browser/abouthome/sync.png
+lib/firefox/browser/chrome/browser/content/browser/abouthome/sync%2x.png@localhost
+lib/firefox/browser/chrome/browser/content/browser/baseMenuOverlay.xul
+lib/firefox/browser/chrome/browser/content/browser/blockedSite.xhtml
+lib/firefox/browser/chrome/browser/content/browser/bookmarks/bookmarksPanel.js
+lib/firefox/browser/chrome/browser/content/browser/bookmarks/bookmarksPanel.xul
+lib/firefox/browser/chrome/browser/content/browser/bookmarks/sidebarUtils.js
+lib/firefox/browser/chrome/browser/content/browser/browser-addons.js
+lib/firefox/browser/chrome/browser/content/browser/browser-captivePortal.js
+lib/firefox/browser/chrome/browser/content/browser/browser-compacttheme.js
+lib/firefox/browser/chrome/browser/content/browser/browser-ctrlTab.js
+lib/firefox/browser/chrome/browser/content/browser/browser-customization.js
+lib/firefox/browser/chrome/browser/content/browser/browser-data-submission-info-bar.js
+lib/firefox/browser/chrome/browser/content/browser/browser-development-helpers.js
+lib/firefox/browser/chrome/browser/content/browser/browser-feeds.js
+lib/firefox/browser/chrome/browser/content/browser/browser-fullScreenAndPointerLock.js
+lib/firefox/browser/chrome/browser/content/browser/browser-fullZoom.js
+lib/firefox/browser/chrome/browser/content/browser/browser-gestureSupport.js
+lib/firefox/browser/chrome/browser/content/browser/browser-media.js
+lib/firefox/browser/chrome/browser/content/browser/browser-pageActions.js
+lib/firefox/browser/chrome/browser/content/browser/browser-places.js
+lib/firefox/browser/chrome/browser/content/browser/browser-plugins.js
+lib/firefox/browser/chrome/browser/content/browser/browser-safebrowsing.js
+lib/firefox/browser/chrome/browser/content/browser/browser-sidebar.js
+lib/firefox/browser/chrome/browser/content/browser/browser-sync.js
+lib/firefox/browser/chrome/browser/content/browser/browser-tabPreviews.xml
+lib/firefox/browser/chrome/browser/content/browser/browser-tabsintitlebar.js
+lib/firefox/browser/chrome/browser/content/browser/browser-thumbnails.js
+lib/firefox/browser/chrome/browser/content/browser/browser-trackingprotection.js
+lib/firefox/browser/chrome/browser/content/browser/browser.css
+lib/firefox/browser/chrome/browser/content/browser/browser.js
+lib/firefox/browser/chrome/browser/content/browser/browser.xul
+lib/firefox/browser/chrome/browser/content/browser/content-UITour.js
+lib/firefox/browser/chrome/browser/content/browser/content-sessionStore.js
+lib/firefox/browser/chrome/browser/content/browser/content.js
+lib/firefox/browser/chrome/browser/content/browser/contentSearchUI.css
+lib/firefox/browser/chrome/browser/content/browser/contentSearchUI.js
+lib/firefox/browser/chrome/browser/content/browser/customizableui/panelUI.css
+lib/firefox/browser/chrome/browser/content/browser/customizableui/panelUI.js
+lib/firefox/browser/chrome/browser/content/browser/customizableui/panelUI.xml
+lib/firefox/browser/chrome/browser/content/browser/customizableui/toolbar.xml
+lib/firefox/browser/chrome/browser/content/browser/default-theme-icon.svg
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/1.header.jpg
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/1.icon.jpg
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/1.preview.jpg
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/2.header.jpg
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/2.icon.jpg
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/2.preview.jpg
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/3.header.png
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/3.icon.png
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/3.preview.png
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/4.header.png
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/4.icon.png
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/4.preview.png
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/5.header.png
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/5.icon.jpg
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/5.preview.jpg
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/compact.header.png
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/dark.icon.svg
+lib/firefox/browser/chrome/browser/content/browser/defaultthemes/light.icon.svg
+lib/firefox/browser/chrome/browser/content/browser/downloads/allDownloadsViewOverlay.js
+lib/firefox/browser/chrome/browser/content/browser/downloads/allDownloadsViewOverlay.xul
+lib/firefox/browser/chrome/browser/content/browser/downloads/contentAreaDownloadsView.css
+lib/firefox/browser/chrome/browser/content/browser/downloads/contentAreaDownloadsView.js
+lib/firefox/browser/chrome/browser/content/browser/downloads/contentAreaDownloadsView.xul
+lib/firefox/browser/chrome/browser/content/browser/downloads/download.xml
+lib/firefox/browser/chrome/browser/content/browser/downloads/downloads.css
+lib/firefox/browser/chrome/browser/content/browser/downloads/downloads.js
+lib/firefox/browser/chrome/browser/content/browser/downloads/downloadsOverlay.xul
+lib/firefox/browser/chrome/browser/content/browser/downloads/indicator.js
+lib/firefox/browser/chrome/browser/content/browser/downloads/indicatorOverlay.xul
+lib/firefox/browser/chrome/browser/content/browser/ext-bookmarks.js
+lib/firefox/browser/chrome/browser/content/browser/ext-browser.js
+lib/firefox/browser/chrome/browser/content/browser/ext-browser.json
+lib/firefox/browser/chrome/browser/content/browser/ext-browserAction.js
+lib/firefox/browser/chrome/browser/content/browser/ext-browsingData.js
+lib/firefox/browser/chrome/browser/content/browser/ext-c-browser.js
+lib/firefox/browser/chrome/browser/content/browser/ext-c-devtools-inspectedWindow.js
+lib/firefox/browser/chrome/browser/content/browser/ext-c-devtools-panels.js
+lib/firefox/browser/chrome/browser/content/browser/ext-c-devtools.js
+lib/firefox/browser/chrome/browser/content/browser/ext-c-menus.js
+lib/firefox/browser/chrome/browser/content/browser/ext-c-omnibox.js
+lib/firefox/browser/chrome/browser/content/browser/ext-c-tabs.js
+lib/firefox/browser/chrome/browser/content/browser/ext-chrome-settings-overrides.js
+lib/firefox/browser/chrome/browser/content/browser/ext-commands.js
+lib/firefox/browser/chrome/browser/content/browser/ext-devtools-inspectedWindow.js
+lib/firefox/browser/chrome/browser/content/browser/ext-devtools-network.js
+lib/firefox/browser/chrome/browser/content/browser/ext-devtools-panels.js
+lib/firefox/browser/chrome/browser/content/browser/ext-devtools.js
+lib/firefox/browser/chrome/browser/content/browser/ext-find.js
+lib/firefox/browser/chrome/browser/content/browser/ext-geckoProfiler.js
+lib/firefox/browser/chrome/browser/content/browser/ext-history.js
+lib/firefox/browser/chrome/browser/content/browser/ext-menus.js
+lib/firefox/browser/chrome/browser/content/browser/ext-omnibox.js
+lib/firefox/browser/chrome/browser/content/browser/ext-pageAction.js
+lib/firefox/browser/chrome/browser/content/browser/ext-sessions.js
+lib/firefox/browser/chrome/browser/content/browser/ext-sidebarAction.js
+lib/firefox/browser/chrome/browser/content/browser/ext-tabs.js
+lib/firefox/browser/chrome/browser/content/browser/ext-url-overrides.js
+lib/firefox/browser/chrome/browser/content/browser/ext-windows.js
+lib/firefox/browser/chrome/browser/content/browser/extension.css
+lib/firefox/browser/chrome/browser/content/browser/extension.svg
+lib/firefox/browser/chrome/browser/content/browser/feeds/subscribe.js
+lib/firefox/browser/chrome/browser/content/browser/feeds/subscribe.xhtml
+lib/firefox/browser/chrome/browser/content/browser/hiddenWindow.xul
+lib/firefox/browser/chrome/browser/content/browser/history/history-panel.xul
+lib/firefox/browser/chrome/browser/content/browser/illustrations/error-connection-failure.svg
+lib/firefox/browser/chrome/browser/content/browser/illustrations/error-malformed-url.svg
+lib/firefox/browser/chrome/browser/content/browser/illustrations/error-server-not-found.svg
+lib/firefox/browser/chrome/browser/content/browser/license.html
+lib/firefox/browser/chrome/browser/content/browser/microsoft-translator-attribution.png
+lib/firefox/browser/chrome/browser/content/browser/migration/migration.js
+lib/firefox/browser/chrome/browser/content/browser/migration/migration.xul
+lib/firefox/browser/chrome/browser/content/browser/newtab/alternativeDefaultSites.json
+lib/firefox/browser/chrome/browser/content/browser/newtab/newTab.css
+lib/firefox/browser/chrome/browser/content/browser/newtab/newTab.js
+lib/firefox/browser/chrome/browser/content/browser/newtab/newTab.xhtml
+lib/firefox/browser/chrome/browser/content/browser/nsContextMenu.js
+lib/firefox/browser/chrome/browser/content/browser/pageinfo/feeds.js
+lib/firefox/browser/chrome/browser/content/browser/pageinfo/feeds.xml
+lib/firefox/browser/chrome/browser/content/browser/pageinfo/pageInfo.css
+lib/firefox/browser/chrome/browser/content/browser/pageinfo/pageInfo.js
+lib/firefox/browser/chrome/browser/content/browser/pageinfo/pageInfo.xml
+lib/firefox/browser/chrome/browser/content/browser/pageinfo/pageInfo.xul
+lib/firefox/browser/chrome/browser/content/browser/pageinfo/permissions.js
+lib/firefox/browser/chrome/browser/content/browser/pageinfo/security.js
+lib/firefox/browser/chrome/browser/content/browser/places/bookmarkProperties.js
+lib/firefox/browser/chrome/browser/content/browser/places/bookmarkProperties.xul
+lib/firefox/browser/chrome/browser/content/browser/places/bookmarkProperties2.xul
+lib/firefox/browser/chrome/browser/content/browser/places/browserPlacesViews.js
+lib/firefox/browser/chrome/browser/content/browser/places/controller.js
+lib/firefox/browser/chrome/browser/content/browser/places/downloadsViewOverlay.xul
+lib/firefox/browser/chrome/browser/content/browser/places/editBookmarkOverlay.js
+lib/firefox/browser/chrome/browser/content/browser/places/editBookmarkOverlay.xul
+lib/firefox/browser/chrome/browser/content/browser/places/history-panel.js
+lib/firefox/browser/chrome/browser/content/browser/places/menu.xml
+lib/firefox/browser/chrome/browser/content/browser/places/moveBookmarks.js
+lib/firefox/browser/chrome/browser/content/browser/places/moveBookmarks.xul
+lib/firefox/browser/chrome/browser/content/browser/places/organizer.css
+lib/firefox/browser/chrome/browser/content/browser/places/places.css
+lib/firefox/browser/chrome/browser/content/browser/places/places.js
+lib/firefox/browser/chrome/browser/content/browser/places/places.xul
+lib/firefox/browser/chrome/browser/content/browser/places/placesOverlay.xul
+lib/firefox/browser/chrome/browser/content/browser/places/tree.xml
+lib/firefox/browser/chrome/browser/content/browser/places/treeView.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/applicationManager.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/applicationManager.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/blocklists.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/blocklists.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/colors.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/connection.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/connection.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/containers.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/containers.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/cookies.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/cookies.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/donottrack.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/fonts.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/fonts.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/handlers.css
+lib/firefox/browser/chrome/browser/content/browser/preferences/handlers.xml
+lib/firefox/browser/chrome/browser/content/browser/preferences/in-content/containers.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/in-content/findInPage.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/in-content/main.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/in-content/preferences.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/in-content/preferences.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/in-content/privacy.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/in-content/search.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/in-content/subdialogs.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/in-content/sync.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/languages.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/languages.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/permissions.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/permissions.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/sanitize.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/sanitize.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/selectBookmark.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/selectBookmark.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/siteDataRemoveSelected.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/siteDataRemoveSelected.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/siteDataSettings.css
+lib/firefox/browser/chrome/browser/content/browser/preferences/siteDataSettings.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/siteDataSettings.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/siteListItem.xml
+lib/firefox/browser/chrome/browser/content/browser/preferences/sitePermissions.css
+lib/firefox/browser/chrome/browser/content/browser/preferences/sitePermissions.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/sitePermissions.xul
+lib/firefox/browser/chrome/browser/content/browser/preferences/translation.js
+lib/firefox/browser/chrome/browser/content/browser/preferences/translation.xul
+lib/firefox/browser/chrome/browser/content/browser/report-phishing-overlay.xul
+lib/firefox/browser/chrome/browser/content/browser/robot.ico
+lib/firefox/browser/chrome/browser/content/browser/safeMode.css
+lib/firefox/browser/chrome/browser/content/browser/safeMode.js
+lib/firefox/browser/chrome/browser/content/browser/safeMode.xul
+lib/firefox/browser/chrome/browser/content/browser/sanitize.js
+lib/firefox/browser/chrome/browser/content/browser/sanitize.xul
+lib/firefox/browser/chrome/browser/content/browser/sanitizeDialog.css
+lib/firefox/browser/chrome/browser/content/browser/sanitizeDialog.js
+lib/firefox/browser/chrome/browser/content/browser/schemas/bookmarks.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/browser_action.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/browsing_data.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/chrome_settings_overrides.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/commands.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/devtools.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/devtools_inspected_window.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/devtools_network.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/devtools_panels.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/find.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/geckoProfiler.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/history.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/menus.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/menus_internal.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/omnibox.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/page_action.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/sessions.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/sidebar_action.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/tabs.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/url_overrides.json
+lib/firefox/browser/chrome/browser/content/browser/schemas/windows.json
+lib/firefox/browser/chrome/browser/content/browser/search/search.xml
+lib/firefox/browser/chrome/browser/content/browser/search/searchReset.js
+lib/firefox/browser/chrome/browser/content/browser/search/searchReset.xhtml
+lib/firefox/browser/chrome/browser/content/browser/search/searchbarBindings.css
+lib/firefox/browser/chrome/browser/content/browser/setDesktopBackground.js
+lib/firefox/browser/chrome/browser/content/browser/setDesktopBackground.xul
+lib/firefox/browser/chrome/browser/content/browser/static-robot.png
+lib/firefox/browser/chrome/browser/content/browser/syncedtabs/sidebar.js
+lib/firefox/browser/chrome/browser/content/browser/syncedtabs/sidebar.xhtml
+lib/firefox/browser/chrome/browser/content/browser/tab-content.js
+lib/firefox/browser/chrome/browser/content/browser/tabbrowser.css
+lib/firefox/browser/chrome/browser/content/browser/tabbrowser.xml
+lib/firefox/browser/chrome/browser/content/browser/translation-infobar.xml
+lib/firefox/browser/chrome/browser/content/browser/urlbarBindings.xml
+lib/firefox/browser/chrome/browser/content/browser/usercontext/usercontext.css
+lib/firefox/browser/chrome/browser/content/browser/utilityOverlay.js
+lib/firefox/browser/chrome/browser/content/browser/viewSourceOverlay.xul
+lib/firefox/browser/chrome/browser/content/browser/web-panels.js
+lib/firefox/browser/chrome/browser/content/browser/web-panels.xul
+lib/firefox/browser/chrome/browser/content/browser/webext-panels.js
+lib/firefox/browser/chrome/browser/content/browser/webext-panels.xul
+lib/firefox/browser/chrome/browser/content/browser/webrtcIndicator.js
+lib/firefox/browser/chrome/browser/content/browser/webrtcIndicator.xul
+lib/firefox/browser/chrome/browser/content/cart.svg
+lib/firefox/browser/chrome/browser/content/chill.svg
+lib/firefox/browser/chrome/browser/content/circle.svg
+lib/firefox/browser/chrome/browser/content/dollar.svg
+lib/firefox/browser/chrome/browser/content/fingerprint.svg
+lib/firefox/browser/chrome/browser/content/food.svg
+lib/firefox/browser/chrome/browser/content/fruit.svg
+lib/firefox/browser/chrome/browser/content/gift.svg
+lib/firefox/browser/chrome/browser/content/pet.svg
+lib/firefox/browser/chrome/browser/content/tree.svg
+lib/firefox/browser/chrome/browser/content/vacation.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/aboutNetError.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/aboutSessionRestore-window-icon.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/aboutSessionRestore.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/aboutTabCrashed.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/aboutWelcomeBack.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/accessibility-active.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/accessibility.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/addons/addon-install-blocked.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/addons/addon-install-confirm.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/addons/addon-install-downloading.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/addons/addon-install-error.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/addons/addon-install-installed.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/addons/addon-install-restart.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/addons/addon-install-warning.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/arrow-left.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/back-12.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/back.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/badge-add-engine.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/badge-add-engine%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/blockedSite.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/bookmark-animation.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/bookmark-hollow.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/bookmark-star-on-tray.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/bookmark.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/bookmarks-toolbar.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/browser.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/cert-error.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/characterEncoding.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/check-animation.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/check.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/chevron-animation.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/chevron.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/compacttheme.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/connection-mixed-active-loaded.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/connection-mixed-passive-loaded.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/connection-secure.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/controlcenter/conn-not-secure.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/controlcenter/connection.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/controlcenter/extension.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/controlcenter/mcb-disabled.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/controlcenter/panel.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/controlcenter/permissions.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/controlcenter/tracking-protection.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/controlcenter/warning-gray.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/controlcenter/warning-yellow.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/density-compact.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/density-normal.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/density-touch.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/empty-overflow-panel.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/empty-overflow-panel%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/menuPanel-customizeFinish.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/menuPanel-customizeFinish%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/panelUI.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/subView-arrow-back-inverted-rtl.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/subView-arrow-back-inverted-rtl%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/subView-arrow-back-inverted.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/subView-arrow-back-inverted%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/whimsy.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/customizableui/whimsy%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/customize.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/developer.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/device-desktop.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/device-mobile.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/device-tablet.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/common.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/downloads/allDownloadsViewOverlay.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/downloads/contentAreaDownloadsView.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/downloads/download-blocked.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/downloads/download-icons.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/downloads/download-summary.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/downloads/downloads.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/downloads/notification-start-animation.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/drm-icon.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/e10s-64%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/edit-copy.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/edit-cut.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/edit-paste.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/error-pages.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/favicon-search-16.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/feed.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/feeds/feedIcon.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/feeds/feedIcon16.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/feeds/subscribe.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/find.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/folder.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/forget.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/forward.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/fullscreen-exit.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/fullscreen.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/fullscreen/insecure.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/fullscreen/secure.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/fxa/default-avatar.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/fxa/sync-illustration.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/gear.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/history.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/home.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/icon-search-64.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/identity-icon-notice.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/identity-icon.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/info.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/library-bookmark-animation.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/library.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/link.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/mail.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/menu-badged.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/menu.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/menuPanel-customize.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/menuPanel-customize%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/menuPanel-exit.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/menuPanel-exit%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/menuPanel-help.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/menuPanel-help%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/monitor.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/monitor_16-10.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/new-tab.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/new-window.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/newtab/close.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/newtab/controls.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/newtab/newTab.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/camera-blocked.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/camera.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/default-info.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/desktop-notification-blocked.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/desktop-notification.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/focus-tab-by-prompt.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/geo-blocked.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/geo-detailed.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/geo.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/indexedDB-blocked.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/indexedDB.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/login-detailed.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/login.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/microphone-blocked.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/microphone-detailed.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/microphone.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/persistent-storage-blocked.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/persistent-storage.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/plugin-badge.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/plugin-blocked.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/plugin.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/popup.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/screen-blocked.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/screen.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-icons/update.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/open.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/page-action.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/page-livemarks.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/pageInfo.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/pageInfo.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/panel-icon-arrow-left.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/panel-icon-arrow-right.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/panel-icon-cancel.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/panel-icon-folder.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/panel-icon-retry.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/panic-panel/header-small.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/panic-panel/header-small%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/panic-panel/header.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/panic-panel/header%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/panic-panel/icons.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/panic-panel/icons%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/allBookmarks.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/bookmarks-menu-arrow.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/bookmarks-notification-finish.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/bookmarks-notification-finish%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/bookmarksMenu.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/bookmarksMenu.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/bookmarksToolbar.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/bookmarksToolbar.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/downloads.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/editBookmarkOverlay.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/folder-live.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/folder-smart.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/folder.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/history.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/livemark-item.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/organizer.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/organizer.xml
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/places.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/starred48.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/tag.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/toolbarDropMarker.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/unfiledBookmarks.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/places/unsortedBookmarks.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/alwaysAsk.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/applications.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/containers.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/containers.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/dialog.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/face-sad.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/face-smile.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/fxa-avatar.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/general.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/logo-android.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/logo-ios.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/no-search-bar.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/no-search-results.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/preferences.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/privacy-security.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/privacy.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/search-arrow-indicator.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/search-bar.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/search.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/search.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/siteDataSettings.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/sync-devices.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/in-content/sync.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/preferences/preferences.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/print.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/private-browsing.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/privateBrowsing.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/privatebrowsing/aboutPrivateBrowsing.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/privatebrowsing/favicon.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/privatebrowsing/private-browsing.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/privatebrowsing/tracking-protection-off.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/privatebrowsing/tracking-protection.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/quit.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/readerMode.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/reload-to-stop.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/reload.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/restore-session.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/sanitizeDialog.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/save.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/search-arrow-go.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/search-engine-placeholder.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/search-engine-placeholder%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/search-indicator-badge-add.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/search-indicator-badge-add%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/search-indicator-magnifying-glass.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/search-indicator.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/search-indicator%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/searchReset.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/searchbar.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/session-restore.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/setDesktopBackground.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/settings.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/sidebars-right.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/sidebars.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/slowStartup-16.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/stop-to-reload.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/stop.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/sync-desktopIcon.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/sync-mobileIcon.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/sync.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/synced-tabs.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/syncedtabs/sidebar.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/tab-crashed.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/crashed.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/indicator-tab-attention.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/loading-burst.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/loading.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/newtab.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/pendingpaint.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/tab-audio-blocked.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/tab-audio-muted.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/tab-audio-playing.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/tab-audio-small.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/tab-overflow-indicator.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/tabbrowser/tabDragIndicator.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/toolbarbutton-dropdown-arrow.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/tracking-protection-16.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/translating-16.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/translating-16%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/translation-16.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/translation-16%2x.png@localhost
+lib/firefox/browser/chrome/browser/skin/classic/browser/update-badge-failed.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/update-badge.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/urlbar-tab.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/warning-white.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/warning.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/webIDE.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/webRTC-indicator.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/welcome-back.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/wifi.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/window.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/zoom-in.svg
+lib/firefox/browser/chrome/browser/skin/classic/browser/zoom-out.svg
+lib/firefox/browser/chrome/browser/skin/classic/communicator/communicator.css
+lib/firefox/browser/chrome/chrome.manifest
+lib/firefox/browser/chrome/devtools-shim/content/DevToolsShim.jsm
+lib/firefox/browser/chrome/devtools/content/aboutdebugging/aboutdebugging.css
+lib/firefox/browser/chrome/devtools/content/aboutdebugging/aboutdebugging.xhtml
+lib/firefox/browser/chrome/devtools/content/aboutdebugging/initializer.js
+lib/firefox/browser/chrome/devtools/content/animationinspector/animation-controller.js
+lib/firefox/browser/chrome/devtools/content/animationinspector/animation-inspector.xhtml
+lib/firefox/browser/chrome/devtools/content/animationinspector/animation-panel.js
+lib/firefox/browser/chrome/devtools/content/canvasdebugger/callslist.js
+lib/firefox/browser/chrome/devtools/content/canvasdebugger/canvasdebugger.js
+lib/firefox/browser/chrome/devtools/content/canvasdebugger/canvasdebugger.xul
+lib/firefox/browser/chrome/devtools/content/canvasdebugger/snapshotslist.js
+lib/firefox/browser/chrome/devtools/content/commandline/commandlineoutput.xhtml
+lib/firefox/browser/chrome/devtools/content/commandline/commandlinetooltip.xhtml
+lib/firefox/browser/chrome/devtools/content/debugger/debugger-controller.js
+lib/firefox/browser/chrome/devtools/content/debugger/debugger-view.js
+lib/firefox/browser/chrome/devtools/content/debugger/debugger.css
+lib/firefox/browser/chrome/devtools/content/debugger/debugger.xul
+lib/firefox/browser/chrome/devtools/content/debugger/new/index.html
+lib/firefox/browser/chrome/devtools/content/debugger/utils.js
+lib/firefox/browser/chrome/devtools/content/debugger/views/filter-view.js
+lib/firefox/browser/chrome/devtools/content/debugger/views/global-search-view.js
+lib/firefox/browser/chrome/devtools/content/debugger/views/options-view.js
+lib/firefox/browser/chrome/devtools/content/debugger/views/stack-frames-classic-view.js
+lib/firefox/browser/chrome/devtools/content/debugger/views/stack-frames-view.js
+lib/firefox/browser/chrome/devtools/content/debugger/views/toolbar-view.js
+lib/firefox/browser/chrome/devtools/content/debugger/views/variable-bubble-view.js
+lib/firefox/browser/chrome/devtools/content/debugger/views/watch-expressions-view.js
+lib/firefox/browser/chrome/devtools/content/debugger/views/workers-view.js
+lib/firefox/browser/chrome/devtools/content/dom/dom.html
+lib/firefox/browser/chrome/devtools/content/dom/main.js
+lib/firefox/browser/chrome/devtools/content/framework/connect/connect.css
+lib/firefox/browser/chrome/devtools/content/framework/connect/connect.js
+lib/firefox/browser/chrome/devtools/content/framework/connect/connect.xhtml
+lib/firefox/browser/chrome/devtools/content/framework/dev-edition-promo/dev-edition-logo.png
+lib/firefox/browser/chrome/devtools/content/framework/dev-edition-promo/dev-edition-promo.css
+lib/firefox/browser/chrome/devtools/content/framework/dev-edition-promo/dev-edition-promo.xul
+lib/firefox/browser/chrome/devtools/content/framework/options-panel.css
+lib/firefox/browser/chrome/devtools/content/framework/toolbox-init.js
+lib/firefox/browser/chrome/devtools/content/framework/toolbox-options.xhtml
+lib/firefox/browser/chrome/devtools/content/framework/toolbox-process-window.js
+lib/firefox/browser/chrome/devtools/content/framework/toolbox-process-window.xul
+lib/firefox/browser/chrome/devtools/content/framework/toolbox-window.xul
+lib/firefox/browser/chrome/devtools/content/framework/toolbox.xul
+lib/firefox/browser/chrome/devtools/content/inspector/inspector.js
+lib/firefox/browser/chrome/devtools/content/inspector/inspector.xhtml
+lib/firefox/browser/chrome/devtools/content/inspector/markup/markup.xhtml
+lib/firefox/browser/chrome/devtools/content/memory/initializer.js
+lib/firefox/browser/chrome/devtools/content/memory/memory.xhtml
+lib/firefox/browser/chrome/devtools/content/netmonitor/index.html
+lib/firefox/browser/chrome/devtools/content/netmonitor/src/assets/styles/netmonitor.css
+lib/firefox/browser/chrome/devtools/content/performance/performance-controller.js
+lib/firefox/browser/chrome/devtools/content/performance/performance-view.js
+lib/firefox/browser/chrome/devtools/content/performance/performance.xul
+lib/firefox/browser/chrome/devtools/content/performance/views/details-abstract-subview.js
+lib/firefox/browser/chrome/devtools/content/performance/views/details-js-call-tree.js
+lib/firefox/browser/chrome/devtools/content/performance/views/details-js-flamegraph.js
+lib/firefox/browser/chrome/devtools/content/performance/views/details-memory-call-tree.js
+lib/firefox/browser/chrome/devtools/content/performance/views/details-memory-flamegraph.js
+lib/firefox/browser/chrome/devtools/content/performance/views/details-waterfall.js
+lib/firefox/browser/chrome/devtools/content/performance/views/details.js
+lib/firefox/browser/chrome/devtools/content/performance/views/overview.js
+lib/firefox/browser/chrome/devtools/content/performance/views/recordings.js
+lib/firefox/browser/chrome/devtools/content/performance/views/toolbar.js
+lib/firefox/browser/chrome/devtools/content/responsive.html/index.js
+lib/firefox/browser/chrome/devtools/content/responsive.html/index.xhtml
+lib/firefox/browser/chrome/devtools/content/scratchpad/scratchpad.js
+lib/firefox/browser/chrome/devtools/content/scratchpad/scratchpad.xul
+lib/firefox/browser/chrome/devtools/content/shadereditor/shadereditor.js
+lib/firefox/browser/chrome/devtools/content/shadereditor/shadereditor.xul
+lib/firefox/browser/chrome/devtools/content/shared/frame-script-utils.js
+lib/firefox/browser/chrome/devtools/content/shared/splitview.css
+lib/firefox/browser/chrome/devtools/content/shared/theme-switching.js
+lib/firefox/browser/chrome/devtools/content/shared/vendor/d3.js
+lib/firefox/browser/chrome/devtools/content/shared/vendor/dagre-d3.js
+lib/firefox/browser/chrome/devtools/content/shared/widgets/VariablesView.xul
+lib/firefox/browser/chrome/devtools/content/shared/widgets/color-widget.css
+lib/firefox/browser/chrome/devtools/content/shared/widgets/cubic-bezier.css
+lib/firefox/browser/chrome/devtools/content/shared/widgets/filter-widget.css
+lib/firefox/browser/chrome/devtools/content/shared/widgets/graphs-frame.xhtml
+lib/firefox/browser/chrome/devtools/content/shared/widgets/mdn-docs.css
+lib/firefox/browser/chrome/devtools/content/shared/widgets/spectrum.css
+lib/firefox/browser/chrome/devtools/content/shared/widgets/widgets.css
+lib/firefox/browser/chrome/devtools/content/sourceeditor/codemirror/addon/dialog/dialog.css
+lib/firefox/browser/chrome/devtools/content/sourceeditor/codemirror/addon/hint/show-hint.js
+lib/firefox/browser/chrome/devtools/content/sourceeditor/codemirror/addon/tern/tern.js
+lib/firefox/browser/chrome/devtools/content/sourceeditor/codemirror/cmiframe.html
+lib/firefox/browser/chrome/devtools/content/sourceeditor/codemirror/codemirror.bundle.js
+lib/firefox/browser/chrome/devtools/content/sourceeditor/codemirror/lib/codemirror.css
+lib/firefox/browser/chrome/devtools/content/sourceeditor/codemirror/mozilla.css
+lib/firefox/browser/chrome/devtools/content/sourceeditor/codemirror/old-debugger.css
+lib/firefox/browser/chrome/devtools/content/storage/storage.xul
+lib/firefox/browser/chrome/devtools/content/styleeditor/styleeditor.xul
+lib/firefox/browser/chrome/devtools/content/webaudioeditor/controller.js
+lib/firefox/browser/chrome/devtools/content/webaudioeditor/includes.js
+lib/firefox/browser/chrome/devtools/content/webaudioeditor/models.js
+lib/firefox/browser/chrome/devtools/content/webaudioeditor/views/automation.js
+lib/firefox/browser/chrome/devtools/content/webaudioeditor/views/context.js
+lib/firefox/browser/chrome/devtools/content/webaudioeditor/views/inspector.js
+lib/firefox/browser/chrome/devtools/content/webaudioeditor/views/properties.js
+lib/firefox/browser/chrome/devtools/content/webaudioeditor/views/utils.js
+lib/firefox/browser/chrome/devtools/content/webaudioeditor/webaudioeditor.xul
+lib/firefox/browser/chrome/devtools/content/webconsole/webconsole.xhtml
+lib/firefox/browser/chrome/devtools/content/webconsole/webconsole.xul
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/aboutdebugging.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/addons/controls.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/addons/install-error.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/addons/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/addons/target.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/panel-header.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/panel-menu-entry.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/panel-menu.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/tabs/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/tabs/target.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/target-list.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/workers/multi-e10s-warning.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/workers/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/workers/service-worker-target.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/components/workers/target.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/modules/addon.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/aboutdebugging/modules/worker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/animationinspector/components/animation-details.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/animationinspector/components/animation-target-node.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/animationinspector/components/animation-time-block.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/animationinspector/components/animation-timeline.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/animationinspector/components/keyframes.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/animationinspector/components/rate-selector.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/animationinspector/graph-helper.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/animationinspector/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/canvasdebugger/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/actions/breakpoints.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/actions/event-listeners.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/actions/sources.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/constants.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/globalActions.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/queries.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/reducers/async-requests.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/reducers/breakpoints.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/reducers/event-listeners.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/reducers/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/reducers/sources.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/views/event-listeners-view.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/content/views/sources-view.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/debugger-commands.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/new/debugger.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/new/debugger.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/new/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/new/parser-worker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/new/pretty-print-worker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/new/search-worker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/debugger/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/definitions.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/actions/filter.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/actions/grips.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/components/dom-tree.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/components/main-frame.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/components/main-toolbar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/constants.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/dom-decorator.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/dom-view.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/dom-view.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/grip-provider.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/reducers/filter.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/reducers/grips.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/reducers/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/content/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/dom/dom-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/ToolboxProcess.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/about-devtools-toolbox.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/attach-thread.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/browser-menus.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/components/toolbox-controller.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/components/toolbox-tab.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/components/toolbox-tabs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/components/toolbox-toolbar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/devtools-browser.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/devtools.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/gDevTools.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/menu-item.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/menu.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/selection.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/sidebar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/source-map-url-service.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/target-from-url.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/target.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/toolbox-highlighter-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/toolbox-host-manager.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/toolbox-hosts.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/toolbox-options.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/framework/toolbox.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/actions/box-model.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/actions/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/box-model.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/components/BoxModel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/components/BoxModelApp.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/components/BoxModelEditable.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/components/BoxModelInfo.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/components/BoxModelMain.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/components/BoxModelProperties.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/components/ComputedProperty.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/reducers/box-model.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/types.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/boxmodel/utils/editing-session.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/breadcrumbs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/components/inspector-tab-panel.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/components/inspector-tab-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/computed/computed.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/extensions/actions/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/extensions/actions/sidebar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/extensions/components/ExtensionSidebar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/extensions/components/ObjectTreeView.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/extensions/extension-sidebar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/extensions/reducers/sidebar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/fonts/actions/font-options.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/fonts/actions/fonts.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/fonts/actions/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/fonts/components/App.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/fonts/components/Font.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/fonts/components/FontList.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/fonts/fonts.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/fonts/reducers/font-options.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/fonts/reducers/fonts.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/fonts/types.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/fonts/utils/l10n.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/actions/grids.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/actions/highlighter-settings.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/actions/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/components/Grid.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/components/GridDisplaySettings.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/components/GridItem.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/components/GridList.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/components/GridOutline.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/grid-inspector.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/reducers/grids.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/reducers/highlighter-settings.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/types.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/utils/l10n.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/grids/utils/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/inspector-commands.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/inspector-search.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/layout/components/Accordion.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/layout/components/Accordion.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/layout/components/App.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/layout/components/LayoutPromoteBar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/layout/layout.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/markup/markup.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/markup/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/markup/views/element-container.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/markup/views/element-editor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/markup/views/html-editor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/markup/views/markup-container.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/markup/views/read-only-container.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/markup/views/read-only-editor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/markup/views/root-container.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/markup/views/text-container.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/markup/views/text-editor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/reducers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/rules/models/element-style.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/rules/models/rule.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/rules/models/text-property.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/rules/rules.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/rules/views/class-list-previewer.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/rules/views/rule-editor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/rules/views/text-property-editor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/shared/dom-node-preview.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/shared/highlighters-overlay.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/shared/node-types.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/shared/reflow-tracker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/shared/style-inspector-menu.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/shared/tooltips-overlay.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/shared/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/store.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/inspector/toolsidebar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/components/headers-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/components/headers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/components/json-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/components/main-tabbed-area.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/components/reps/toolbar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/components/search-box.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/components/text-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/converter-child.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/converter-observer.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/css/general.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/css/headers-panel.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/css/json-panel.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/css/main.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/css/search-box.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/css/search.svg
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/css/text-panel.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/css/toolbar.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/json-viewer.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/lib/require.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/jsonview/viewer-config.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/allocations.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/census-display.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/diffing.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/filter.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/io.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/label-display.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/refresh.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/sizes.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/snapshot.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/task-cache.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/tree-map-display.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/actions/view.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/app.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/census-header.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/census-tree-item.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/census.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/dominator-tree-header.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/dominator-tree-item.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/dominator-tree.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/heap.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/individuals-header.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/individuals.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/list.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/shortest-paths.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/snapshot-list-item.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/toolbar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/tree-map.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/tree-map/canvas-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/tree-map/color-coarse-type.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/tree-map/drag-zoom.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/tree-map/draw.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/components/tree-map/start.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/constants.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/dominator-tree-lazy-children.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/models.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers/allocations.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers/census-display.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers/diffing.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers/errors.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers/filter.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers/individuals.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers/label-display.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers/sizes.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers/snapshots.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers/tree-map-display.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/reducers/view.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/store.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/telemetry.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/memory/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/menus.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/actions/batching.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/actions/filters.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/actions/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/actions/requests.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/actions/selection.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/actions/sort.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/actions/timing-markers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/actions/ui.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/app.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/cookies-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/custom-request-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/headers-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/mdn-link.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/monitor-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/network-details-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/params-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/properties-view.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-cause.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-content-size.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-cookies.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-domain.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-duration.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-end-time.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-file.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-latency.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-method.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-protocol.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-remote-ip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-response-header.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-response-time.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-scheme.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-set-cookies.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-start-time.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-status.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-transferred-size.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-type.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-column-waterfall.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-content.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-empty-notice.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-header.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list-item.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/request-list.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/response-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/security-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/source-editor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/stack-trace-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/statistics-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/status-bar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/tabbox-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/timings-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/components/toolbar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/connector/firefox-connector.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/connector/firefox-data-provider.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/connector/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/constants.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/har/har-automation.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/har/har-builder.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/har/har-collector.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/har/har-exporter.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/har/har-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/har/toolbox-overlay.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/middleware/batching.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/middleware/prefs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/middleware/thunk.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/reducers/batching.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/reducers/filters.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/reducers/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/reducers/requests.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/reducers/sort.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/reducers/timing-markers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/reducers/ui.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/request-list-context-menu.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/request-list-header-context-menu.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/request-list-tooltip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/selectors/filters.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/selectors/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/selectors/requests.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/selectors/timing-markers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/selectors/ui.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/utils/create-store.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/utils/filter-autocomplete-provider.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/utils/filter-predicates.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/utils/filter-text-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/utils/format-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/utils/l10n.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/utils/mdn-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/utils/menu.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/utils/prefs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/utils/request-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/utils/sort-predicates.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/netmonitor/src/waterfall-background.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/components/jit-optimizations-item.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/components/jit-optimizations.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/components/recording-button.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/components/recording-controls.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/components/recording-list-item.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/components/recording-list.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/components/waterfall-header.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/components/waterfall-tree-row.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/components/waterfall-tree.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/components/waterfall.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/events.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/categories.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/constants.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/global.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/io.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/logic/frame-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/logic/jit.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/logic/telemetry.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/logic/tree-model.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/logic/waterfall-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/marker-blueprint-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/marker-dom-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/marker-formatters.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/markers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/waterfall-ticks.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/widgets/graphs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/widgets/marker-details.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/widgets/markers-overview.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/modules/widgets/tree-view.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/actions.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/dom-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/event-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/input-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/panel-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/prefs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/profiler-mm-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/recording-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/synth-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/tab-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/urls.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/performance/test/helpers/wait-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/actions/devices.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/actions/display-pixel-ratio.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/actions/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/actions/location.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/actions/network-throttling.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/actions/screenshot.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/actions/touch-simulation.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/actions/viewports.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/app.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/browser/swap.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/browser/tunnel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/browser/web-navigation.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/browser.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/device-adder.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/device-modal.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/device-selector.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/dpr-selector.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/global-toolbar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/network-throttling-selector.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/resizable-viewport.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/viewport-dimension.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/viewport-toolbar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/viewport.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/components/viewports.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/constants.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/images/grippers.svg
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/images/rotate-viewport.svg
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/images/screenshot.svg
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/images/select-arrow.svg
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/images/touch-events.svg
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/index.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/manager.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/reducers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/reducers/devices.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/reducers/display-pixel-ratio.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/reducers/location.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/reducers/network-throttling.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/reducers/screenshot.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/reducers/touch-simulation.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/reducers/viewports.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/responsive-ua.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/store.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/types.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/utils/css.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/utils/e10s.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/utils/l10n.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/utils/message.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsive.html/utils/window.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsivedesign/resize-commands.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsivedesign/responsivedesign-child.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsivedesign/responsivedesign-old.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/responsivedesign/responsivedesign.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/scratchpad/scratchpad-commands.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/scratchpad/scratchpad-manager.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/scratchpad/scratchpad-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shadereditor/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/AppCacheUtils.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/DOMHelpers.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/Jsbeautify.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/SplitView.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/autocomplete-popup.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/browser-loader.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/autocomplete-popup.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/frame.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/h-split-box.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/notification-box.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/notification-box.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/reps/reps.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/reps/reps.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/search-box.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/sidebar-toggle.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/sidebar-toggle.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/splitter/draggable.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/splitter/split-box.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/splitter/split-box.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/stack-trace.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tabs/tabbar.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tabs/tabbar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tabs/tabs.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tabs/tabs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tree.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tree/label-cell.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tree/object-provider.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tree/tree-cell.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tree/tree-header.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tree/tree-row.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tree/tree-view.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/components/tree/tree-view.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/css-angle.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/curl.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/demangle.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/developer-toolbar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/devices.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/doorhanger.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/enum.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/file-saver.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/getjson.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/inplace-editor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/key-shortcuts.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/keycodes.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/natural-sort.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/network-throttling-profiles.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/node-attribute-parser.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/options-view.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/output-parser.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/poller.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/prefs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/react-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/redux/create-store.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/redux/middleware/debounce.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/redux/middleware/history.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/redux/middleware/log.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/redux/middleware/promise.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/redux/middleware/task.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/redux/middleware/thunk.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/redux/middleware/wait-service.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/redux/non-react-subscriber.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/scroll.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/source-map/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/source-map/worker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/source-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/stylesheet-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/suggestion-picker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/telemetry.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/theme.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/undo.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/WasmDis.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/WasmParser.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/immutable.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/jsol.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/jszip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/lodash.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/react-addons-shallow-compare.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/react-dom-server.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/react-dom.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/react-redux.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/react-virtualized.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/react.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/redux.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/reselect.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/seamless-immutable.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/stringvalidator/util/assert.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/vendor/stringvalidator/validator.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/view-source.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/webgl-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/AbstractTreeItem.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/BarGraphWidget.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/BreadcrumbsWidget.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/Chart.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/ColorWidget.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/CubicBezierPresets.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/CubicBezierWidget.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/FastListWidget.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/FilterWidget.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/FlameGraph.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/Graphs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/GraphsWorker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/LineGraphWidget.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/MdnDocsWidget.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/MountainGraphWidget.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/SideMenuWidget.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/SimpleListWidget.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/Spectrum.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/TableWidget.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/TreeWidget.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/VariablesView.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/VariablesViewController.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/CssDocsTooltip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/EventTooltipHelper.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/HTMLTooltip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/ImageTooltipHelper.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/InlineTooltip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/SwatchBasedEditorTooltip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/SwatchColorPickerTooltip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/SwatchCubicBezierTooltip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/SwatchFilterTooltip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/Tooltip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/TooltipToggle.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/tooltip/VariableContentHelper.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/widgets/view-helpers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/shared/zoom-keys.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/autocomplete.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/css-autocompleter.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/debugger.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/editor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/tern/browser.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/tern/comment.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/tern/condense.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/tern/def.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/tern/ecma5.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/tern/infer.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/tern/signal.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/tern/tern.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/sourceeditor/wasm.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/storage/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/storage/ui.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/styleeditor/StyleEditorUI.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/styleeditor/StyleEditorUtil.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/styleeditor/StyleSheetEditor.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/client/styleeditor/styleeditor-commands.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/styleeditor/styleeditor-panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/themes/audio/shutter.wav
+lib/firefox/browser/chrome/devtools/modules/devtools/client/themes/commandline-browser.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/themes/common.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/themes/responsivedesign.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/themes/splitters.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/themes/toolbars.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/themes/variables.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webaudioeditor/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/console-commands.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/console-output.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/hudservice.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/jsterm.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/cookies-tab.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/headers-tab.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/net-info-body.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/net-info-body.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/net-info-group-list.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/net-info-group.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/net-info-group.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/net-info-params.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/net-info-params.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/params-tab.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/post-tab.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/response-tab.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/response-tab.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/size-limit.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/size-limit.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/spinner.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/components/stacktrace-tab.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/data-provider.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/main.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/net-request.css
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/net-request.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/utils/events.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/utils/json.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/net/utils/net.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/actions/filters.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/actions/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/actions/messages.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/actions/ui.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/collapse-button.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/console-output.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/console-table.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/filter-bar.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/filter-button.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/filter-checkbox.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/grip-message-body.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/message-container.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/message-icon.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/message-indent.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/message-repeat.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/message-types/console-api-call.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/message-types/console-command.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/message-types/default-renderer.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/message-types/evaluation-result.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/message-types/network-event-message.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/message-types/page-error.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/components/message.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/constants.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/main.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/new-console-output-wrapper.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/reducers/filters.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/reducers/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/reducers/messages.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/reducers/prefs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/reducers/ui.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/selectors/filters.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/selectors/messages.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/selectors/prefs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/selectors/ui.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/store.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/test/fixtures/stub-generators/stub-snippets.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/test/fixtures/stubs/consoleApi.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/test/fixtures/stubs/cssMessage.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/test/fixtures/stubs/evaluationResult.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/test/fixtures/stubs/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/test/fixtures/stubs/networkEvent.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/test/fixtures/stubs/pageError.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/types.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/utils/context-menu.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/utils/id-generator.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-console-output/utils/messages.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/new-webconsole.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/panel.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/webconsole-connection-proxy.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/webconsole-l10n.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webconsole/webconsole.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/addons.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/app-manager.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/app-projects.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/app-validator.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/config-view.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/project-list.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/runtime-list.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/runtimes.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/simulator-process.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/simulators.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/tab-store.js
+lib/firefox/browser/chrome/devtools/modules/devtools/client/webide/modules/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/accessibility.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/actor-registry.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/addon.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/addons.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/animation.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/breakpoint.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/call-watcher.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/canvas.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/child-process.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/childtab.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/chrome.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/common.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/css-properties.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/csscoverage.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/device.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/emulation.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/environment.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/errordocs.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/eventlooplag.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/frame.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/framerate.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/gcli.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/heap-snapshot-file.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters.css
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/auto-refresh.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/box-model.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/css-grid.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/css-transform.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/eye-dropper.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/geometry-editor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/measuring-tool.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/paused-debugger.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/rulers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/selector.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/shapes.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/simple-outline.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/highlighters/utils/markup.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/inspector.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/layout.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/memory.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/monitor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/object.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/performance-entries.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/performance-recording.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/performance.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/preference.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/pretty-print-worker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/process.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/promises.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/reflow.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/root.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/script.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/source.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/storage.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/string.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/styles.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/stylesheets.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/tab.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/timeline.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/utils/TabSources.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/utils/actor-registry-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/utils/audionodes.json
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/utils/automation-timeline.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/utils/css-grid-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/utils/make-debugger.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/utils/map-uri-to-addon-id.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/utils/shapes-geometry-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/utils/stack.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/utils/walker-search.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/webaudio.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/webbrowser.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/webconsole.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/webconsole/content-process-forward.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/webconsole/listeners.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/webconsole/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/webconsole/worker-listeners.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/webextension-inspected-window.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/webextension-parent.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/webextension.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/webgl.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/window.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/worker-list.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/actors/worker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/child.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/content-process-debugger-server.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/content-server.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/server/css-logic.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/event-parsers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/main.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/performance/framerate.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/performance/memory.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/performance/profiler.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/performance/recorder.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/performance/timeline.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/primitive.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/protocol.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/service-worker-child.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/websocket-server.js
+lib/firefox/browser/chrome/devtools/modules/devtools/server/worker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/DevToolsUtils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/Loader.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/Parser.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/ThreadSafeDevToolsUtils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/acorn/acorn.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/acorn/acorn_loose.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/acorn/walk.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/apps/Devices.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/apps/app-actor-front.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/async-storage.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/async-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/base-loader.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/builtin-modules.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/client/connection-manager.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/client/main.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/content-observer.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/css/color-db.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/css/color.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/css/generated/properties-db.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/css/lexer.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/css/parsing-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/css/properties-db.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/debounce.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/defer.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/deprecated-sync-thenables.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/discovery/discovery.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/dom-node-constants.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/dom-node-filter-constants.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/event-emitter.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/extend.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/flags.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/accessibility.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/actor-registry.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/addons.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/animation.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/call-watcher.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/canvas.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/css-properties.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/csscoverage.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/device.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/emulation.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/eventlooplag.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/framerate.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/gcli.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/highlighters.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/inspector.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/layout.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/memory.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/performance-entries.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/performance-recording.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/performance.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/preference.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/promises.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/reflow.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/storage.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/string.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/styles.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/stylesheets.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/timeline.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/webaudio.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/webextension-inspected-window.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/fronts/webgl.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/command-state.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/addon.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/appcache.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/calllog.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/cmd.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/cookie.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/csscoverage.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/folder.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/highlight.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/inject.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/jsb.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/listen.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/mdn.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/measure.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/media.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/pagemod.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/paintflashing.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/qsa.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/restart.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/rulers.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/screenshot.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/commands/security.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/cli.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/clear.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/commands.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/context.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/help.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/mocks.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/pref.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/preflist.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/commands/test.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/connectors/connectors.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/converters/basic.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/converters/converters.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/converters/html.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/converters/terminal.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/fields/delegate.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/fields/fields.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/fields/selection.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/l10n.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/languages/command.html
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/languages/command.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/languages/javascript.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/languages/languages.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/mozui/completer.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/mozui/inputter.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/mozui/tooltip.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/settings.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/system.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/array.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/boolean.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/command.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/date.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/delegate.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/file.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/fileparser.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/javascript.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/node.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/number.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/resource.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/selection.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/setting.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/string.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/types.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/union.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/types/url.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/focus.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/history.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/intro.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/menu.css
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/menu.html
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/menu.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/ui/view.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/domtemplate.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/fileparser.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/filesystem.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/host.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/l10n.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/legacy.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/prism.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/spell.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/source/lib/gcli/util/util.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/gcli/templater.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/generate-uuid.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/heapsnapshot/CensusUtils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/heapsnapshot/DominatorTreeNode.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/heapsnapshot/HeapAnalysesClient.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/heapsnapshot/HeapAnalysesWorker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/heapsnapshot/HeapSnapshotFileUtils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/heapsnapshot/census-tree-node.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/heapsnapshot/shortest-paths.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/indentation.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/indexed-db.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/inspector/css-logic.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/jsbeautify/beautify.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/jsbeautify/lib/sanitytest.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/jsbeautify/lib/urlencode_unpacker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/jsbeautify/src/beautify-css.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/jsbeautify/src/beautify-html.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/jsbeautify/src/beautify-js.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/jsbeautify/src/beautify-tests.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/l10n.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/layout/dom-matrix-2d.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/layout/utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/loader-plugin-raw.jsm
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/node-properties/node-properties.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/old-event-emitter.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/path.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/performance/recording-common.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/performance/recording-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/platform/chrome/clipboard.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/platform/chrome/stack.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/platform/content/clipboard.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/platform/content/stack.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/plural-form.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/pretty-fast/pretty-fast.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/protocol.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/qrcode/decoder/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/qrcode/encoder/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/qrcode/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/security/auth.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/security/cert.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/security/prompt.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/security/socket.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/sourcemap/source-map.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/accessibility.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/actor-registry.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/addons.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/animation.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/breakpoint.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/call-watcher.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/canvas.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/css-properties.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/csscoverage.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/device.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/emulation.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/environment.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/eventlooplag.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/frame.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/framerate.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/gcli.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/heap-snapshot-file.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/highlighters.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/index.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/inspector.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/layout.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/memory.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/node.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/performance-entries.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/performance-recording.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/performance.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/preference.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/promises.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/reflow.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/script.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/source.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/storage.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/string.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/styles.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/stylesheets.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/timeline.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/webaudio.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/webextension-inspected-window.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/webextension-parent.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/webgl.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/specs/worker.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/sprintfjs/sprintf.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/system.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/task.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/touch/simulator-content.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/touch/simulator-core.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/touch/simulator.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/transport/packets.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/transport/stream-utils.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/transport/transport.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/transport/websocket-transport.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/wasm-source-map.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/webconsole/client.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/webconsole/js-property-provider.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/webconsole/network-helper.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/webconsole/network-monitor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/webconsole/server-logger-monitor.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/webconsole/server-logger.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/webconsole/throttle.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/worker/helper.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/worker/loader.js
+lib/firefox/browser/chrome/devtools/modules/devtools/shared/worker/worker.js
+lib/firefox/browser/chrome/devtools/skin/animationinspector.css
+lib/firefox/browser/chrome/devtools/skin/boxmodel.css
+lib/firefox/browser/chrome/devtools/skin/canvasdebugger.css
+lib/firefox/browser/chrome/devtools/skin/commandline.css
+lib/firefox/browser/chrome/devtools/skin/components-frame.css
+lib/firefox/browser/chrome/devtools/skin/components-h-split-box.css
+lib/firefox/browser/chrome/devtools/skin/computed.css
+lib/firefox/browser/chrome/devtools/skin/dark-theme.css
+lib/firefox/browser/chrome/devtools/skin/debugger.css
+lib/firefox/browser/chrome/devtools/skin/devtools-browser.css
+lib/firefox/browser/chrome/devtools/skin/firebug-theme.css
+lib/firefox/browser/chrome/devtools/skin/floating-scrollbars-dark-theme.css
+lib/firefox/browser/chrome/devtools/skin/floating-scrollbars-responsive-design.css
+lib/firefox/browser/chrome/devtools/skin/fonts.css
+lib/firefox/browser/chrome/devtools/skin/images/add.svg
+lib/firefox/browser/chrome/devtools/skin/images/alerticon-warning.png
+lib/firefox/browser/chrome/devtools/skin/images/alerticon-warning%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/angle-swatch.svg
+lib/firefox/browser/chrome/devtools/skin/images/animation-fast-track.svg
+lib/firefox/browser/chrome/devtools/skin/images/arrow-e.png
+lib/firefox/browser/chrome/devtools/skin/images/arrow-e%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/breadcrumbs-scrollbutton.png
+lib/firefox/browser/chrome/devtools/skin/images/breadcrumbs-scrollbutton%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/breakpoint.svg
+lib/firefox/browser/chrome/devtools/skin/images/clear.svg
+lib/firefox/browser/chrome/devtools/skin/images/close.svg
+lib/firefox/browser/chrome/devtools/skin/images/command-console.svg
+lib/firefox/browser/chrome/devtools/skin/images/command-eyedropper.svg
+lib/firefox/browser/chrome/devtools/skin/images/command-frames.svg
+lib/firefox/browser/chrome/devtools/skin/images/command-measure.svg
+lib/firefox/browser/chrome/devtools/skin/images/command-noautohide.svg
+lib/firefox/browser/chrome/devtools/skin/images/command-paintflashing.svg
+lib/firefox/browser/chrome/devtools/skin/images/command-pick.svg
+lib/firefox/browser/chrome/devtools/skin/images/command-responsivemode.svg
+lib/firefox/browser/chrome/devtools/skin/images/command-rulers.svg
+lib/firefox/browser/chrome/devtools/skin/images/command-screenshot.svg
+lib/firefox/browser/chrome/devtools/skin/images/commandline-icon.svg
+lib/firefox/browser/chrome/devtools/skin/images/controls.png
+lib/firefox/browser/chrome/devtools/skin/images/controls%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/cubic-bezier-swatch.png
+lib/firefox/browser/chrome/devtools/skin/images/cubic-bezier-swatch%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/debugger-step-in.svg
+lib/firefox/browser/chrome/devtools/skin/images/debugger-step-out.svg
+lib/firefox/browser/chrome/devtools/skin/images/debugger-step-over.svg
+lib/firefox/browser/chrome/devtools/skin/images/debugger-toggleBreakpoints.svg
+lib/firefox/browser/chrome/devtools/skin/images/debugging-addons.svg
+lib/firefox/browser/chrome/devtools/skin/images/debugging-tabs.svg
+lib/firefox/browser/chrome/devtools/skin/images/debugging-workers.svg
+lib/firefox/browser/chrome/devtools/skin/images/diff.svg
+lib/firefox/browser/chrome/devtools/skin/images/dock-bottom.svg
+lib/firefox/browser/chrome/devtools/skin/images/dock-side.svg
+lib/firefox/browser/chrome/devtools/skin/images/dock-undock.svg
+lib/firefox/browser/chrome/devtools/skin/images/dropmarker.svg
+lib/firefox/browser/chrome/devtools/skin/images/editor-error.png
+lib/firefox/browser/chrome/devtools/skin/images/filetypes/dir-close.svg
+lib/firefox/browser/chrome/devtools/skin/images/filetypes/dir-open.svg
+lib/firefox/browser/chrome/devtools/skin/images/filetypes/globe.svg
+lib/firefox/browser/chrome/devtools/skin/images/filter-swatch.svg
+lib/firefox/browser/chrome/devtools/skin/images/filter.svg
+lib/firefox/browser/chrome/devtools/skin/images/filters.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/arrow-down.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/arrow-up.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/breadcrumbs-divider.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/breakpoint.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/close.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/command-console.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/command-eyedropper.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/command-frames.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/command-measure.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/command-noautohide.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/command-paintflashing.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/command-pick.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/command-responsivemode.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/command-rulers.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/command-scratchpad.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/command-screenshot.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/commandline-icon.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/debugger-blackbox.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/debugger-prettyprint.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/debugger-step-in.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/debugger-step-out.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/debugger-step-over.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/debugger-toggleBreakpoints.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/disable.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/dock-bottom.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/dock-side.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/dock-undock.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/pane-collapse.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/pane-expand.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/pause.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/play.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/read-only.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/rewind.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/tool-debugger-paused.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/tool-options.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/twisty-closed-firebug.svg
+lib/firefox/browser/chrome/devtools/skin/images/firebug/twisty-open-firebug.svg
+lib/firefox/browser/chrome/devtools/skin/images/gcli_sec_bad.svg
+lib/firefox/browser/chrome/devtools/skin/images/gcli_sec_good.svg
+lib/firefox/browser/chrome/devtools/skin/images/gcli_sec_moderate.svg
+lib/firefox/browser/chrome/devtools/skin/images/geometry-editor.svg
+lib/firefox/browser/chrome/devtools/skin/images/globe.svg
+lib/firefox/browser/chrome/devtools/skin/images/grid.svg
+lib/firefox/browser/chrome/devtools/skin/images/help.svg
+lib/firefox/browser/chrome/devtools/skin/images/import.svg
+lib/firefox/browser/chrome/devtools/skin/images/item-arrow-dark-ltr.svg
+lib/firefox/browser/chrome/devtools/skin/images/item-arrow-dark-rtl.svg
+lib/firefox/browser/chrome/devtools/skin/images/item-arrow-ltr.svg
+lib/firefox/browser/chrome/devtools/skin/images/item-arrow-rtl.svg
+lib/firefox/browser/chrome/devtools/skin/images/item-toggle.svg
+lib/firefox/browser/chrome/devtools/skin/images/pane-collapse.svg
+lib/firefox/browser/chrome/devtools/skin/images/pane-expand.svg
+lib/firefox/browser/chrome/devtools/skin/images/pause.svg
+lib/firefox/browser/chrome/devtools/skin/images/performance-details-call-tree.svg
+lib/firefox/browser/chrome/devtools/skin/images/performance-details-flamegraph.svg
+lib/firefox/browser/chrome/devtools/skin/images/performance-details-waterfall.svg
+lib/firefox/browser/chrome/devtools/skin/images/play.svg
+lib/firefox/browser/chrome/devtools/skin/images/power.svg
+lib/firefox/browser/chrome/devtools/skin/images/profiler-stopwatch.svg
+lib/firefox/browser/chrome/devtools/skin/images/pseudo-class.svg
+lib/firefox/browser/chrome/devtools/skin/images/reload.svg
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsive-horizontal-resizer.png
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsive-horizontal-resizer%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsive-se-resizer.png
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsive-se-resizer%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsive-vertical-resizer.png
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsive-vertical-resizer%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsiveui-home.png
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsiveui-rotate.png
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsiveui-rotate%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsiveui-screenshot.png
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsiveui-screenshot%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsiveui-touch.png
+lib/firefox/browser/chrome/devtools/skin/images/responsivemode/responsiveui-touch%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/rewind.svg
+lib/firefox/browser/chrome/devtools/skin/images/sad-face.svg
+lib/firefox/browser/chrome/devtools/skin/images/search-clear-dark.svg
+lib/firefox/browser/chrome/devtools/skin/images/search-clear-failed.svg
+lib/firefox/browser/chrome/devtools/skin/images/search-clear-light.svg
+lib/firefox/browser/chrome/devtools/skin/images/search.svg
+lib/firefox/browser/chrome/devtools/skin/images/security-state-broken.svg
+lib/firefox/browser/chrome/devtools/skin/images/security-state-insecure.svg
+lib/firefox/browser/chrome/devtools/skin/images/security-state-secure.svg
+lib/firefox/browser/chrome/devtools/skin/images/security-state-weak.svg
+lib/firefox/browser/chrome/devtools/skin/images/sort-ascending-arrow.svg
+lib/firefox/browser/chrome/devtools/skin/images/sort-descending-arrow.svg
+lib/firefox/browser/chrome/devtools/skin/images/toggle-tools.png
+lib/firefox/browser/chrome/devtools/skin/images/toggle-tools%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/tool-canvas.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-debugger-paused.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-debugger.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-dom.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-inspector.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-memory-active.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-memory.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-network.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-options.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-profiler-active.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-profiler.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-scratchpad.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-shadereditor.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-storage.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-styleeditor.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-webaudio.svg
+lib/firefox/browser/chrome/devtools/skin/images/tool-webconsole.svg
+lib/firefox/browser/chrome/devtools/skin/images/tracer-icon.png
+lib/firefox/browser/chrome/devtools/skin/images/tracer-icon%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/vview-delete.png
+lib/firefox/browser/chrome/devtools/skin/images/vview-delete%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/vview-edit.png
+lib/firefox/browser/chrome/devtools/skin/images/vview-edit%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/vview-lock.png
+lib/firefox/browser/chrome/devtools/skin/images/vview-lock%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/vview-open-inspector.png
+lib/firefox/browser/chrome/devtools/skin/images/vview-open-inspector%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/images/webconsole.svg
+lib/firefox/browser/chrome/devtools/skin/inspector.css
+lib/firefox/browser/chrome/devtools/skin/jit-optimizations.css
+lib/firefox/browser/chrome/devtools/skin/layout.css
+lib/firefox/browser/chrome/devtools/skin/light-theme.css
+lib/firefox/browser/chrome/devtools/skin/markup.css
+lib/firefox/browser/chrome/devtools/skin/memory.css
+lib/firefox/browser/chrome/devtools/skin/performance.css
+lib/firefox/browser/chrome/devtools/skin/rules.css
+lib/firefox/browser/chrome/devtools/skin/scratchpad.css
+lib/firefox/browser/chrome/devtools/skin/shadereditor.css
+lib/firefox/browser/chrome/devtools/skin/splitview.css
+lib/firefox/browser/chrome/devtools/skin/storage.css
+lib/firefox/browser/chrome/devtools/skin/styleeditor.css
+lib/firefox/browser/chrome/devtools/skin/toolbars.css
+lib/firefox/browser/chrome/devtools/skin/toolbox.css
+lib/firefox/browser/chrome/devtools/skin/tooltip/arrow-horizontal-dark.png
+lib/firefox/browser/chrome/devtools/skin/tooltip/arrow-horizontal-dark%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/tooltip/arrow-horizontal-light.png
+lib/firefox/browser/chrome/devtools/skin/tooltip/arrow-horizontal-light%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/tooltip/arrow-vertical-dark.png
+lib/firefox/browser/chrome/devtools/skin/tooltip/arrow-vertical-dark%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/tooltip/arrow-vertical-light.png
+lib/firefox/browser/chrome/devtools/skin/tooltip/arrow-vertical-light%2x.png@localhost
+lib/firefox/browser/chrome/devtools/skin/tooltips.css
+lib/firefox/browser/chrome/devtools/skin/webaudioeditor.css
+lib/firefox/browser/chrome/devtools/skin/webconsole.css
+lib/firefox/browser/chrome/devtools/skin/widgets.css
+lib/firefox/browser/chrome/en-US/locale/branding/brand.dtd
+lib/firefox/browser/chrome/en-US/locale/branding/brand.properties
+lib/firefox/browser/chrome/en-US/locale/branding/browserconfig.properties
+lib/firefox/browser/chrome/en-US/locale/browser-region/region.properties
+lib/firefox/browser/chrome/en-US/locale/browser/aboutAccounts.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/aboutDialog.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/aboutHealthReport.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/aboutHome.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/aboutPrivateBrowsing.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/aboutPrivateBrowsing.properties
+lib/firefox/browser/chrome/en-US/locale/browser/aboutRobots.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/aboutSearchReset.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/aboutSessionRestore.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/aboutTabCrashed.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/accounts.properties
+lib/firefox/browser/chrome/en-US/locale/browser/appstrings.properties
+lib/firefox/browser/chrome/en-US/locale/browser/baseMenuOverlay.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/bookmarks.html
+lib/firefox/browser/chrome/en-US/locale/browser/browser.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/browser.properties
+lib/firefox/browser/chrome/en-US/locale/browser/customizableui/customizableWidgets.properties
+lib/firefox/browser/chrome/en-US/locale/browser/downloads/downloads.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/downloads/downloads.properties
+lib/firefox/browser/chrome/en-US/locale/browser/downloads/settingsChange.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/engineManager.properties
+lib/firefox/browser/chrome/en-US/locale/browser/feeds/subscribe.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/feeds/subscribe.properties
+lib/firefox/browser/chrome/en-US/locale/browser/lightweightThemes.properties
+lib/firefox/browser/chrome/en-US/locale/browser/migration/migration.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/migration/migration.properties
+lib/firefox/browser/chrome/en-US/locale/browser/netError.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/newTab.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/newTab.properties
+lib/firefox/browser/chrome/en-US/locale/browser/pageInfo.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/pageInfo.properties
+lib/firefox/browser/chrome/en-US/locale/browser/places/bookmarkProperties.properties
+lib/firefox/browser/chrome/en-US/locale/browser/places/editBookmarkOverlay.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/places/moveBookmarks.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/places/places.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/places/places.properties
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/advanced.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/applicationManager.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/applicationManager.properties
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/applications.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/blocklists.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/colors.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/connection.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/containers.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/containers.properties
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/content.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/cookies.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/donottrack.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/fonts.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/languages.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/main.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/permissions.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/preferences.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/preferences.properties
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/privacy.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/search.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/security.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/selectBookmark.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/siteDataSettings.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/sync.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/tabs.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/preferences/translation.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/quitDialog.properties
+lib/firefox/browser/chrome/en-US/locale/browser/safeMode.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/safebrowsing/phishing-afterload-warning-message.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/safebrowsing/report-phishing.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/safebrowsing/safebrowsing.properties
+lib/firefox/browser/chrome/en-US/locale/browser/sanitize.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/search.properties
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/amazondotcom.xml
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/bing.xml
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/ddg.xml
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/google-nocodes.xml
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/google.xml
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/images/amazon.ico
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/images/wikipedia.ico
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/images/yahoo.ico
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/images/yandex-en.ico
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/images/yandex-ru.ico
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/list.json
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/twitter.xml
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/wikipedia.xml
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/yahoo-en-CA.xml
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/yahoo.xml
+lib/firefox/browser/chrome/en-US/locale/browser/searchplugins/yandex-en.xml
+lib/firefox/browser/chrome/en-US/locale/browser/setDesktopBackground.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/shellservice.properties
+lib/firefox/browser/chrome/en-US/locale/browser/sitePermissions.properties
+lib/firefox/browser/chrome/en-US/locale/browser/syncBrand.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/syncSetup.properties
+lib/firefox/browser/chrome/en-US/locale/browser/tabbrowser.properties
+lib/firefox/browser/chrome/en-US/locale/browser/taskbar.properties
+lib/firefox/browser/chrome/en-US/locale/browser/translation.dtd
+lib/firefox/browser/chrome/en-US/locale/browser/translation.properties
+lib/firefox/browser/chrome/en-US/locale/browser/webrtcIndicator.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/VariablesView.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/aboutdebugging.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/aboutdebugging.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/animationinspector.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/app-manager.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/appcacheutils.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/boxmodel.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/canvasdebugger.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/canvasdebugger.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/components.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/connection-screen.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/connection-screen.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/debugger.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/debugger.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/device.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/dom.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/filterwidget.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/font-inspector.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/graphs.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/har.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/inspector.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/jit-optimizations.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/jsonview.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/layout.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/markers.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/memory.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/menus.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/netmonitor.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/performance.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/performance.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/responsive.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/responsiveUI.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/scratchpad.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/scratchpad.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/shadereditor.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/shadereditor.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/shared.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/sourceeditor.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/sourceeditor.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/startup.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/storage.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/storage.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/styleeditor.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/styleeditor.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/toolbox.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/toolbox.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/webConsole.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/webaudioeditor.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/webaudioeditor.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/webconsole.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/webide.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/client/webide.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/shared/csscoverage.dtd
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/shared/csscoverage.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/shared/debugger.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/shared/eyedropper.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/shared/gcli.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/shared/gclicommands.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/shared/shared.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/shared/styleinspector.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/devtools/shim/key-shortcuts.properties
+lib/firefox/browser/chrome/en-US/locale/en-US/formautofill.properties
+lib/firefox/browser/chrome/en-US/locale/pdfviewer/chrome.properties
+lib/firefox/browser/chrome/en-US/locale/pdfviewer/viewer.properties
+lib/firefox/browser/chrome/icons/default/default16.png
+lib/firefox/browser/chrome/icons/default/default32.png
+lib/firefox/browser/chrome/icons/default/default48.png
+lib/firefox/browser/chrome/pdfjs/content/PdfJs.jsm
+lib/firefox/browser/chrome/pdfjs/content/PdfJsNetwork.jsm
+lib/firefox/browser/chrome/pdfjs/content/PdfJsTelemetry.jsm
+lib/firefox/browser/chrome/pdfjs/content/PdfStreamConverter.jsm
+lib/firefox/browser/chrome/pdfjs/content/PdfjsChromeUtils.jsm
+lib/firefox/browser/chrome/pdfjs/content/PdfjsContentUtils.jsm
+lib/firefox/browser/chrome/pdfjs/content/build/pdf.js
+lib/firefox/browser/chrome/pdfjs/content/build/pdf.worker.js
+lib/firefox/browser/chrome/pdfjs/content/pdfjschildbootstrap-enabled.js
+lib/firefox/browser/chrome/pdfjs/content/pdfjschildbootstrap.js
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/78-EUC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/78-EUC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/78-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/78-RKSJ-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/78-RKSJ-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/78-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/78ms-RKSJ-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/78ms-RKSJ-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/83pv-RKSJ-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/90ms-RKSJ-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/90ms-RKSJ-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/90msp-RKSJ-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/90msp-RKSJ-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/90pv-RKSJ-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/90pv-RKSJ-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Add-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Add-RKSJ-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Add-RKSJ-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Add-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-CNS1-0.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-CNS1-1.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-CNS1-2.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-CNS1-3.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-CNS1-4.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-CNS1-5.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-CNS1-6.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-CNS1-UCS2.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-GB1-0.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-GB1-1.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-GB1-2.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-GB1-3.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-GB1-4.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-GB1-5.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-GB1-UCS2.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Japan1-0.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Japan1-1.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Japan1-2.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Japan1-3.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Japan1-4.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Japan1-5.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Japan1-6.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Japan1-UCS2.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Korea1-0.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Korea1-1.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Korea1-2.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Adobe-Korea1-UCS2.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/B5-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/B5-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/B5pc-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/B5pc-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/CNS-EUC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/CNS-EUC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/CNS1-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/CNS1-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/CNS2-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/CNS2-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/ETHK-B5-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/ETHK-B5-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/ETen-B5-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/ETen-B5-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/ETenms-B5-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/ETenms-B5-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/EUC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/EUC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Ext-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Ext-RKSJ-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Ext-RKSJ-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Ext-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GB-EUC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GB-EUC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GB-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GB-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBK-EUC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBK-EUC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBK2K-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBK2K-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBKp-EUC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBKp-EUC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBT-EUC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBT-EUC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBT-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBT-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBTpc-EUC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBTpc-EUC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBpc-EUC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/GBpc-EUC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKdla-B5-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKdla-B5-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKdlb-B5-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKdlb-B5-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKgccs-B5-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKgccs-B5-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKm314-B5-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKm314-B5-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKm471-B5-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKm471-B5-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKscs-B5-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/HKscs-B5-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Hankaku.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Hiragana.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSC-EUC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSC-EUC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSC-Johab-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSC-Johab-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSCms-UHC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSCms-UHC-HW-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSCms-UHC-HW-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSCms-UHC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSCpc-EUC-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/KSCpc-EUC-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Katakana.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/LICENSE
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/NWP-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/NWP-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/RKSJ-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/RKSJ-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/Roman.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniCNS-UCS2-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniCNS-UCS2-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniCNS-UTF16-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniCNS-UTF16-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniCNS-UTF32-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniCNS-UTF32-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniCNS-UTF8-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniCNS-UTF8-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniGB-UCS2-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniGB-UCS2-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniGB-UTF16-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniGB-UTF16-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniGB-UTF32-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniGB-UTF32-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniGB-UTF8-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniGB-UTF8-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS-UCS2-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS-UCS2-HW-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS-UCS2-HW-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS-UCS2-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS-UTF16-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS-UTF16-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS-UTF32-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS-UTF32-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS-UTF8-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS-UTF8-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS2004-UTF16-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS2004-UTF16-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS2004-UTF32-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS2004-UTF32-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS2004-UTF8-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJIS2004-UTF8-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJISPro-UCS2-HW-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJISPro-UCS2-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJISPro-UTF8-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJISX0213-UTF32-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJISX0213-UTF32-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJISX02132004-UTF32-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniJISX02132004-UTF32-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniKS-UCS2-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniKS-UCS2-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniKS-UTF16-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniKS-UTF16-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniKS-UTF32-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniKS-UTF32-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniKS-UTF8-H.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/UniKS-UTF8-V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/V.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/cmaps/WP-Symbol.bcmap
+lib/firefox/browser/chrome/pdfjs/content/web/debugger.js
+lib/firefox/browser/chrome/pdfjs/content/web/images/annotation-check.svg
+lib/firefox/browser/chrome/pdfjs/content/web/images/annotation-comment.svg
+lib/firefox/browser/chrome/pdfjs/content/web/images/annotation-help.svg
+lib/firefox/browser/chrome/pdfjs/content/web/images/annotation-insert.svg
+lib/firefox/browser/chrome/pdfjs/content/web/images/annotation-key.svg
+lib/firefox/browser/chrome/pdfjs/content/web/images/annotation-newparagraph.svg
+lib/firefox/browser/chrome/pdfjs/content/web/images/annotation-noicon.svg
+lib/firefox/browser/chrome/pdfjs/content/web/images/annotation-note.svg
+lib/firefox/browser/chrome/pdfjs/content/web/images/annotation-paragraph.svg
+lib/firefox/browser/chrome/pdfjs/content/web/images/findbarButton-next-rtl.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/findbarButton-next-rtl%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/findbarButton-next.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/findbarButton-next%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/findbarButton-previous-rtl.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/findbarButton-previous-rtl%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/findbarButton-previous.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/findbarButton-previous%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/grab.cur
+lib/firefox/browser/chrome/pdfjs/content/web/images/grabbing.cur
+lib/firefox/browser/chrome/pdfjs/content/web/images/loading-icon.gif
+lib/firefox/browser/chrome/pdfjs/content/web/images/loading-small.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/loading-small%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-documentProperties.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-documentProperties%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-firstPage.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-firstPage%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-handTool.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-handTool%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-lastPage.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-lastPage%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-rotateCcw.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-rotateCcw%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-rotateCw.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-rotateCw%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-selectTool.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/secondaryToolbarButton-selectTool%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/shadow.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/texture.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-bookmark.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-bookmark%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-download.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-download%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-menuArrows.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-menuArrows%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-openFile.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-openFile%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageDown-rtl.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageDown-rtl%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageDown.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageDown%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageUp-rtl.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageUp-rtl%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageUp.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageUp%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-presentationMode.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-presentationMode%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-print.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-print%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-search.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-search%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-secondaryToolbarToggle-rtl.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-secondaryToolbarToggle-rtl%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-secondaryToolbarToggle.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-secondaryToolbarToggle%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-sidebarToggle-rtl.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-sidebarToggle-rtl%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-sidebarToggle.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-sidebarToggle%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-viewAttachments.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-viewAttachments%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-viewOutline-rtl.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-viewOutline-rtl%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-viewOutline.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-viewOutline%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-viewThumbnail.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-viewThumbnail%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-zoomIn.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-zoomIn%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-zoomOut.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-zoomOut%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/treeitem-collapsed-rtl.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/treeitem-collapsed-rtl%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/treeitem-collapsed.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/treeitem-collapsed%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/images/treeitem-expanded.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/treeitem-expanded%2x.png@localhost
+lib/firefox/browser/chrome/pdfjs/content/web/viewer.css
+lib/firefox/browser/chrome/pdfjs/content/web/viewer.html
+lib/firefox/browser/chrome/pdfjs/content/web/viewer.js
+lib/firefox/browser/chrome/webide/content/addons.js
+lib/firefox/browser/chrome/webide/content/addons.xhtml
+lib/firefox/browser/chrome/webide/content/details.js
+lib/firefox/browser/chrome/webide/content/details.xhtml
+lib/firefox/browser/chrome/webide/content/devicepreferences.js
+lib/firefox/browser/chrome/webide/content/devicepreferences.xhtml
+lib/firefox/browser/chrome/webide/content/monitor.js
+lib/firefox/browser/chrome/webide/content/monitor.xhtml
+lib/firefox/browser/chrome/webide/content/newapp.js
+lib/firefox/browser/chrome/webide/content/newapp.xul
+lib/firefox/browser/chrome/webide/content/prefs.js
+lib/firefox/browser/chrome/webide/content/prefs.xhtml
+lib/firefox/browser/chrome/webide/content/project-listing.js
+lib/firefox/browser/chrome/webide/content/project-listing.xhtml
+lib/firefox/browser/chrome/webide/content/project-panel.js
+lib/firefox/browser/chrome/webide/content/runtime-listing.js
+lib/firefox/browser/chrome/webide/content/runtime-listing.xhtml
+lib/firefox/browser/chrome/webide/content/runtime-panel.js
+lib/firefox/browser/chrome/webide/content/runtimedetails.js
+lib/firefox/browser/chrome/webide/content/runtimedetails.xhtml
+lib/firefox/browser/chrome/webide/content/simulator.js
+lib/firefox/browser/chrome/webide/content/simulator.xhtml
+lib/firefox/browser/chrome/webide/content/webide.js
+lib/firefox/browser/chrome/webide/content/webide.xul
+lib/firefox/browser/chrome/webide/content/wifi-auth.js
+lib/firefox/browser/chrome/webide/content/wifi-auth.xhtml
+lib/firefox/browser/chrome/webide/skin/addons.css
+lib/firefox/browser/chrome/webide/skin/config-view.css
+lib/firefox/browser/chrome/webide/skin/deck.css
+lib/firefox/browser/chrome/webide/skin/default-app-icon.png
+lib/firefox/browser/chrome/webide/skin/details.css
+lib/firefox/browser/chrome/webide/skin/icons.png
+lib/firefox/browser/chrome/webide/skin/monitor.css
+lib/firefox/browser/chrome/webide/skin/newapp.css
+lib/firefox/browser/chrome/webide/skin/noise.png
+lib/firefox/browser/chrome/webide/skin/panel-listing.css
+lib/firefox/browser/chrome/webide/skin/rocket.svg
+lib/firefox/browser/chrome/webide/skin/runtimedetails.css
+lib/firefox/browser/chrome/webide/skin/simulator.css
+lib/firefox/browser/chrome/webide/skin/throbber.svg
+lib/firefox/browser/chrome/webide/skin/webide.css
+lib/firefox/browser/chrome/webide/skin/wifi-auth.css
+lib/firefox/browser/components/ChromeProfileMigrator.js
+lib/firefox/browser/components/ExperimentsService.js
+lib/firefox/browser/components/FeedConverter.js
+lib/firefox/browser/components/FeedWriter.js
+lib/firefox/browser/components/FirefoxProfileMigrator.js
+lib/firefox/browser/components/ProfileMigrator.js
+lib/firefox/browser/components/SelfSupportService.js
+lib/firefox/browser/components/WebContentConverter.js
+lib/firefox/browser/components/aboutNewTabService.js
+lib/firefox/browser/components/aboutdebugging-registration.js
+lib/firefox/browser/components/components.manifest
+lib/firefox/browser/components/devtools-startup.js
+lib/firefox/browser/components/interfaces.xpt
+lib/firefox/browser/components/nsBrowserContentHandler.js
+lib/firefox/browser/components/nsBrowserGlue.js
+lib/firefox/browser/components/nsSessionStartup.js
+lib/firefox/browser/components/nsSessionStore.js
+lib/firefox/browser/components/nsSetDefaultBrowser.js
+lib/firefox/browser/defaults/blocklists/addons.json
+lib/firefox/browser/defaults/blocklists/certificates.json
+lib/firefox/browser/defaults/blocklists/gfx.json
+lib/firefox/browser/defaults/blocklists/plugins.json
+lib/firefox/browser/defaults/permissions
+lib/firefox/browser/defaults/pinning/pins.json
+lib/firefox/browser/defaults/preferences/debugger.js
+lib/firefox/browser/defaults/preferences/devtools-startup-prefs.js
+lib/firefox/browser/defaults/preferences/devtools.js
+lib/firefox/browser/defaults/preferences/firefox-branding.js
+lib/firefox/browser/defaults/preferences/firefox-l10n.js
+lib/firefox/browser/defaults/preferences/firefox.js
+lib/firefox/browser/defaults/preferences/webide-prefs.js
+lib/firefox/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/chrome.manifest
+lib/firefox/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/install.rdf
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/bootstrap.js
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome.manifest
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/common/Actions.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/common/Dedupe.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/common/PerfService.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/common/PrerenderData.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/common/Reducers.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/activity-stream-initial-state.js
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/activity-stream-prerendered.html
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/activity-stream.bundle.js
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/activity-stream.css
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/activity-stream.html
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-delete-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-dismiss-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-edit-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-highlights-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-historyItem-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-import-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-info-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-info-option-12.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-newWindow-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-pin-12.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-pin-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-pocket-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-topsites-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-trending-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-unpin-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/glyph-webextension-16.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/assets/topic-show-more-12.svg
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/aliexpress-com%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/allegro-pl%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/amazon%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/avito-ru%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/bbc-uk%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/ebay%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/facebook-com%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/leboncoin-fr%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/ok-ru%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/olx-pl%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/reddit-com%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/twitter-com%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/vk-com%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/wikipedia-org%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/wykop-pl%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/images/youtube-com%2x.png@localhost
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/content/tippytop/top_sites.json
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/data/locales.json
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/ActivityStream.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/ActivityStreamMessageChannel.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/ActivityStreamPrefs.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/FilterAdult.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/HighlightsFeed.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/LinksCache.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/LocalizationFeed.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/ManualMigration.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/NewTabInit.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/PlacesFeed.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/PrefsFeed.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/Screenshots.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/SectionsManager.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/ShortURL.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/SnippetsFeed.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/Store.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/SystemTickFeed.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/TelemetryFeed.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/TippyTopProvider.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/TopSitesFeed.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/TopStoriesFeed.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/lib/UserDomainAffinityProvider.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/vendor/Redux.jsm
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/vendor/react-dom.js
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/vendor/react-intl.js
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/vendor/react-redux.js
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/vendor/react.js
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/chrome/content/vendor/redux.js
+lib/firefox/browser/features/activity-stream%mozilla.org@localhost/install.rdf
+lib/firefox/browser/features/aushelper%mozilla.org@localhost/bootstrap.js
+lib/firefox/browser/features/aushelper%mozilla.org@localhost/install.rdf
+lib/firefox/browser/features/e10srollout%mozilla.org@localhost/bootstrap.js
+lib/firefox/browser/features/e10srollout%mozilla.org@localhost/install.rdf
+lib/firefox/browser/features/firefox%getpocket.com@localhost/bootstrap.js
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome.manifest
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/AboutPocket.jsm
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/Pocket.jsm
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/main.js
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/css/firasans.css
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/css/normalize.css
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/css/saved.css
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/css/signup.css
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/fonts/FiraSans-Regular.woff
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocket.svg
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketerror%1x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketerror%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketlogo%1x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketlogo%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketlogosolo%1x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketlogosolo%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketmenuitem16.png
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketmenuitem16%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketsignup_button%1x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketsignup_button%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketsignup_devices%1x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketsignup_devices%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketsignup_hero%1x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/pocketsignup_hero%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/signup_firefoxlogo%1x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/signup_firefoxlogo%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/signup_help%1x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/signup_help%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/tag_close%1x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/tag_close%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/tag_closeactive%1x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/img/tag_closeactive%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/js/messages.js
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/js/saved.js
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/js/signup.js
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/js/tmpl.js
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/js/vendor/handlebars.runtime.js
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/js/vendor/jquery-2.1.1.min.js
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/js/vendor/jquery.tokeninput.min.js
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/license.txt
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/saved.html
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/signup.html
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/tmpl/saved_premiumextras.handlebars
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/tmpl/saved_premiumshell.handlebars
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/tmpl/saved_shell.handlebars
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/tmpl/signup_shell.handlebars
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/panels/tmpl/signupstoryboard_shell.handlebars
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/pktApi.jsm
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/content/pocket-content-process.js
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/skin/linux/menuPanel.png
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/skin/linux/menuPanel%2x.png@localhost
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/skin/shared/library-pocket-animation.svg
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/skin/shared/pocket-animation.svg
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/skin/shared/pocket.css
+lib/firefox/browser/features/firefox%getpocket.com@localhost/chrome/skin/shared/pocket.svg
+lib/firefox/browser/features/firefox%getpocket.com@localhost/en-US/locale/en-US/pocket.properties
+lib/firefox/browser/features/firefox%getpocket.com@localhost/install.rdf
+lib/firefox/browser/features/followonsearch%mozilla.com@localhost/bootstrap.js
+lib/firefox/browser/features/followonsearch%mozilla.com@localhost/chrome.manifest
+lib/firefox/browser/features/followonsearch%mozilla.com@localhost/chrome/content/followonsearch-fs.js
+lib/firefox/browser/features/followonsearch%mozilla.com@localhost/install.rdf
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/bootstrap.js
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome.manifest
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/FormAutofillFrameScript.js
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/addressReferences.js
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/editAddress.xhtml
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/editCreditCard.xhtml
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/editDialog.js
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/formautofill.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/formautofill.xml
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/formfill-anchor.svg
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/heuristicsRegexp.js
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/icon-address-save.svg
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/icon-address-update.svg
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/icon-credit-card-generic.svg
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/icon-credit-card.svg
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/manageAddresses.xhtml
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/manageCreditCards.xhtml
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/manageDialog.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/manageDialog.js
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/content/nameReferences.js
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/FormAutofillContent.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/FormAutofillDoorhanger.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/FormAutofillHandler.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/FormAutofillHeuristics.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/FormAutofillNameUtils.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/FormAutofillParent.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/FormAutofillPreferences.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/FormAutofillSync.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/FormAutofillUtils.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/MasterPassword.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/ProfileAutoCompleteResult.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/ProfileStorage.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/phonenumberutils/PhoneNumber.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/phonenumberutils/PhoneNumberMetaData.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/res/phonenumberutils/PhoneNumberNormalizer.jsm
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/skin/linux/autocomplete-item.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/skin/linux/editDialog.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/skin/osx/autocomplete-item.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/skin/osx/editDialog.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/skin/shared/autocomplete-item.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/skin/shared/editAddress.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/skin/shared/editCreditCard.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/skin/shared/editDialog.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/skin/windows/autocomplete-item.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/chrome/skin/windows/editDialog.css
+lib/firefox/browser/features/formautofill%mozilla.org@localhost/install.rdf
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/bootstrap.js
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome.manifest
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/figure_addons.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/figure_customize.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/figure_default.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/figure_library.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/figure_performance.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/figure_private.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/figure_screenshots.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/figure_singlesearch.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/figure_sync.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_addons-colored.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_addons.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_customize-colored.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_customize.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_default-colored.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_default.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_library-colored.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_library.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_performance-colored.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_performance.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_private-colored.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_private.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_screenshots-colored.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_screenshots.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_singlesearch-colored.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_singlesearch.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_sync-colored.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_sync.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/icons_tour-complete.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/img/watermark.svg
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/lib/UITour-lib.js
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/modules/OnboardingTourType.jsm
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/onboarding-tour-agent.js
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/onboarding.css
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/chrome/content/onboarding.js
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/en-US/locale/en-US/onboarding.properties
+lib/firefox/browser/features/onboarding%mozilla.org@localhost/install.rdf
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/bootstrap.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/install.rdf
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ach/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ar/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ast/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/az/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/be/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/bg/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/bn_BD/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ca/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/cak/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/cs/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/cy/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/da/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/de/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/dsb/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/el/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/en_GB/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/en_US/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/eo/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/es_AR/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/es_CL/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/es_ES/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/es_MX/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/et/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/eu/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/fa/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/fi/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/fr/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/fy_NL/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ga_IE/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/gu_IN/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/he/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/hi_IN/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/hr/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/hsb/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/hu/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/hy_AM/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/id/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/it/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ja/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ka/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/kab/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/kk/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/km/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ko/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/lij/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/lo/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/lt/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/mk/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/mr/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ms/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/my/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/nb_NO/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/nl/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/nn_NO/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/pa_IN/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/pl/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/pt_BR/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/pt_PT/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/rm/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ro/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ru/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/sk/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/sl/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/sq/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/sr/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/sv_SE/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ta/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/te/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/th/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/tl/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/tr/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/uk/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/ur/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/uz/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/vi/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/zh_CN/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/_locales/zh_TW/messages.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/assertIsBlankDocument.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/assertIsTrusted.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/background/analytics.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/background/auth.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/background/communication.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/background/deviceInfo.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/background/main.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/background/selectorLoader.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/background/senderror.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/background/startBackground.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/background/takeshot.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/blank.html
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/blobConverters.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/build/buildSettings.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/build/inlineSelectionCss.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/build/onboardingCss.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/build/onboardingHtml.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/build/raven.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/build/shot.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/catcher.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/clipboard.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/domainFromUrl.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/back-highlight.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/back.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/cancel.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/cloud.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/copy.png
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/done.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/download.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/icon-16-v2.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/icon-32-v2.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/icon-highlight-32-v2.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/icon-starred-32-v2.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/icon-welcome-face-without-eyes.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/menu-fullpage.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/menu-myshot-white.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/menu-myshot.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/menu-visible.svg
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/onboarding-1.png
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/onboarding-2.png
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/onboarding-3.png
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/onboarding-4.png
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/icons/onboarding-5.png
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/log.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/makeUuid.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/manifest.json
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/onboarding/slides.html
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/onboarding/slides.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/randomString.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/selector/callBackground.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/selector/documentMetadata.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/selector/shooter.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/selector/ui.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/selector/uicontrol.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/selector/util.js
+lib/firefox/browser/features/screenshots%mozilla.org@localhost/webextension/sitehelper.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/bootstrap.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome.manifest
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/content/AboutPages.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/content/about-studies/about-studies.css
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/content/about-studies/about-studies.html
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/content/about-studies/about-studies.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/content/about-studies/common.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/content/about-studies/img/shield-logo.png
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/content/about-studies/shield-studies.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/content/shield-content-frame.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/content/shield-content-process.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/ActionSandboxManager.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/AddonStudies.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/Addons.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/CleanupManager.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/ClientEnvironment.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/EventEmitter.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/FilterExpressions.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/Heartbeat.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/LogManager.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/NormandyApi.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/NormandyDriver.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/PreferenceExperiments.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/PreferenceFilters.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/RecipeRunner.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/Sampling.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/SandboxManager.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/ShieldPreferences.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/ShieldRecipeClient.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/Storage.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/Uptake.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/lib/Utils.jsm
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/skin/osx/Heartbeat.css
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/skin/shared/Heartbeat.css
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/skin/shared/heartbeat-icon.svg
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/skin/shared/heartbeat-star-lit.svg
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/skin/shared/heartbeat-star-off.svg
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/vendor/LICENSE_THIRDPARTY
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/vendor/PropTypes.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/vendor/React.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/vendor/ReactDOM.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/vendor/classnames.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/chrome/vendor/mozjexl.js
+lib/firefox/browser/features/shield-recipe-client%mozilla.org@localhost/install.rdf
+lib/firefox/browser/features/webcompat%mozilla.org@localhost/bootstrap.js
+lib/firefox/browser/features/webcompat%mozilla.org@localhost/chrome.manifest
+lib/firefox/browser/features/webcompat%mozilla.org@localhost/chrome/content/data/ua_overrides.jsm
+lib/firefox/browser/features/webcompat%mozilla.org@localhost/chrome/content/lib/ua_overrider.jsm
+lib/firefox/browser/features/webcompat%mozilla.org@localhost/install.rdf
+lib/firefox/browser/icons/mozicon128.png
+lib/firefox/browser/modules/AboutHome.jsm
+lib/firefox/browser/modules/AboutNewTab.jsm
+lib/firefox/browser/modules/AttributionCode.jsm
+lib/firefox/browser/modules/AutoMigrate.jsm
+lib/firefox/browser/modules/BrowserUITelemetry.jsm
+lib/firefox/browser/modules/BrowserUsageTelemetry.jsm
+lib/firefox/browser/modules/ContentClick.jsm
+lib/firefox/browser/modules/ContentCrashHandlers.jsm
+lib/firefox/browser/modules/ContentLinkHandler.jsm
+lib/firefox/browser/modules/ContentMetaHandler.jsm
+lib/firefox/browser/modules/ContentObservers.js
+lib/firefox/browser/modules/ContentSearch.jsm
+lib/firefox/browser/modules/ContentWebRTC.jsm
+lib/firefox/browser/modules/ContextMenu.jsm
+lib/firefox/browser/modules/CustomizableUI.jsm
+lib/firefox/browser/modules/CustomizableWidgets.jsm
+lib/firefox/browser/modules/CustomizeMode.jsm
+lib/firefox/browser/modules/DirectoryLinksProvider.jsm
+lib/firefox/browser/modules/DownloadsCommon.jsm
+lib/firefox/browser/modules/DownloadsSubview.jsm
+lib/firefox/browser/modules/DownloadsTaskbar.jsm
+lib/firefox/browser/modules/DownloadsViewUI.jsm
+lib/firefox/browser/modules/DragPositionManager.jsm
+lib/firefox/browser/modules/E10SUtils.jsm
+lib/firefox/browser/modules/ExtensionPopups.jsm
+lib/firefox/browser/modules/ExtensionsUI.jsm
+lib/firefox/browser/modules/Feeds.jsm
+lib/firefox/browser/modules/FormSubmitObserver.jsm
+lib/firefox/browser/modules/FormValidationHandler.jsm
+lib/firefox/browser/modules/HeadlessShell.jsm
+lib/firefox/browser/modules/LaterRun.jsm
+lib/firefox/browser/modules/MigrationUtils.jsm
+lib/firefox/browser/modules/NewTabPrefsProvider.jsm
+lib/firefox/browser/modules/NewTabRemoteResources.jsm
+lib/firefox/browser/modules/NewTabSearchProvider.jsm
+lib/firefox/browser/modules/NewTabURL.jsm
+lib/firefox/browser/modules/NewTabWebChannel.jsm
+lib/firefox/browser/modules/PageActions.jsm
+lib/firefox/browser/modules/PanelMultiView.jsm
+lib/firefox/browser/modules/PanelWideWidgetTracker.jsm
+lib/firefox/browser/modules/ParseBreakpadSymbols-worker.js
+lib/firefox/browser/modules/ParseCppFiltSymbols-worker.js
+lib/firefox/browser/modules/ParseNMSymbols-worker.js
+lib/firefox/browser/modules/ParseSymbols.jsm
+lib/firefox/browser/modules/PermissionUI.jsm
+lib/firefox/browser/modules/PingCentre.jsm
+lib/firefox/browser/modules/PlacesUIUtils.jsm
+lib/firefox/browser/modules/PluginContent.jsm
+lib/firefox/browser/modules/ProcessHangMonitor.jsm
+lib/firefox/browser/modules/ReaderParent.jsm
+lib/firefox/browser/modules/RecentWindow.jsm
+lib/firefox/browser/modules/RemotePrompt.jsm
+lib/firefox/browser/modules/Sanitizer.jsm
+lib/firefox/browser/modules/ScrollbarSampler.jsm
+lib/firefox/browser/modules/SearchWidgetTracker.jsm
+lib/firefox/browser/modules/ShellService.jsm
+lib/firefox/browser/modules/SiteDataManager.jsm
+lib/firefox/browser/modules/SitePermissions.jsm
+lib/firefox/browser/modules/TransientPrefs.jsm
+lib/firefox/browser/modules/UITour.jsm
+lib/firefox/browser/modules/UpdateTopLevelContentWindowIDHelper.jsm
+lib/firefox/browser/modules/ZoomUI.jsm
+lib/firefox/browser/modules/devtools/devtools.js
+lib/firefox/browser/modules/devtools/gDevTools.jsm
+lib/firefox/browser/modules/distribution.js
+lib/firefox/browser/modules/experiments/Experiments.jsm
+lib/firefox/browser/modules/offlineAppCache.jsm
+lib/firefox/browser/modules/sessionstore/ContentRestore.jsm
+lib/firefox/browser/modules/sessionstore/DocShellCapabilities.jsm
+lib/firefox/browser/modules/sessionstore/GlobalState.jsm
+lib/firefox/browser/modules/sessionstore/PrivacyFilter.jsm
+lib/firefox/browser/modules/sessionstore/RecentlyClosedTabsAndWindowsMenuUtils.jsm
+lib/firefox/browser/modules/sessionstore/RunState.jsm
+lib/firefox/browser/modules/sessionstore/SessionCookies.jsm
+lib/firefox/browser/modules/sessionstore/SessionFile.jsm
+lib/firefox/browser/modules/sessionstore/SessionMigration.jsm
+lib/firefox/browser/modules/sessionstore/SessionSaver.jsm
+lib/firefox/browser/modules/sessionstore/SessionStorage.jsm
+lib/firefox/browser/modules/sessionstore/SessionStore.jsm
+lib/firefox/browser/modules/sessionstore/SessionWorker.js
+lib/firefox/browser/modules/sessionstore/SessionWorker.jsm
+lib/firefox/browser/modules/sessionstore/StartupPerformance.jsm
+lib/firefox/browser/modules/sessionstore/TabAttributes.jsm
+lib/firefox/browser/modules/sessionstore/TabState.jsm
+lib/firefox/browser/modules/sessionstore/TabStateCache.jsm
+lib/firefox/browser/modules/sessionstore/TabStateFlusher.jsm
+lib/firefox/browser/modules/syncedtabs/EventEmitter.jsm
+lib/firefox/browser/modules/syncedtabs/SyncedTabsDeckComponent.js
+lib/firefox/browser/modules/syncedtabs/SyncedTabsDeckStore.js
+lib/firefox/browser/modules/syncedtabs/SyncedTabsDeckView.js
+lib/firefox/browser/modules/syncedtabs/SyncedTabsListStore.js
+lib/firefox/browser/modules/syncedtabs/TabListComponent.js
+lib/firefox/browser/modules/syncedtabs/TabListView.js
+lib/firefox/browser/modules/syncedtabs/util.js
+lib/firefox/browser/modules/translation/BingTranslator.jsm
+lib/firefox/browser/modules/translation/LanguageDetector.jsm
+lib/firefox/browser/modules/translation/Translation.jsm
+lib/firefox/browser/modules/translation/TranslationContentHandler.jsm
+lib/firefox/browser/modules/translation/TranslationDocument.jsm
+lib/firefox/browser/modules/translation/YandexTranslator.jsm
+lib/firefox/browser/modules/translation/cld-worker.js
+lib/firefox/browser/modules/translation/cld-worker.js.mem
+lib/firefox/browser/modules/webrtcUI.jsm
+lib/firefox/chrome.manifest
+lib/firefox/chrome/chrome.manifest
+lib/firefox/chrome/en-US/locale/en-US/alerts/alert.dtd
+lib/firefox/chrome/en-US/locale/en-US/alerts/alert.properties
+lib/firefox/chrome/en-US/locale/en-US/autoconfig/autoconfig.properties
+lib/firefox/chrome/en-US/locale/en-US/global-platform/mac/accessible.properties
+lib/firefox/chrome/en-US/locale/en-US/global-platform/mac/intl.properties
+lib/firefox/chrome/en-US/locale/en-US/global-platform/mac/platformKeys.properties
+lib/firefox/chrome/en-US/locale/en-US/global-platform/unix/accessible.properties
+lib/firefox/chrome/en-US/locale/en-US/global-platform/unix/intl.properties
+lib/firefox/chrome/en-US/locale/en-US/global-platform/unix/platformKeys.properties
+lib/firefox/chrome/en-US/locale/en-US/global-platform/win/accessible.properties
+lib/firefox/chrome/en-US/locale/en-US/global-platform/win/intl.properties
+lib/firefox/chrome/en-US/locale/en-US/global-platform/win/platformKeys.properties
+lib/firefox/chrome/en-US/locale/en-US/global/AccessFu.properties
+lib/firefox/chrome/en-US/locale/en-US/global/about.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/aboutAbout.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/aboutNetworking.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/aboutProfiles.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/aboutProfiles.properties
+lib/firefox/chrome/en-US/locale/en-US/global/aboutReader.properties
+lib/firefox/chrome/en-US/locale/en-US/global/aboutRights.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/aboutServiceWorkers.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/aboutServiceWorkers.properties
+lib/firefox/chrome/en-US/locale/en-US/global/aboutSupport.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/aboutSupport.properties
+lib/firefox/chrome/en-US/locale/en-US/global/aboutTelemetry.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/aboutTelemetry.properties
+lib/firefox/chrome/en-US/locale/en-US/global/aboutUrlClassifier.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/aboutUrlClassifier.properties
+lib/firefox/chrome/en-US/locale/en-US/global/aboutWebrtc.properties
+lib/firefox/chrome/en-US/locale/en-US/global/appPicker.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/appstrings.properties
+lib/firefox/chrome/en-US/locale/en-US/global/autocomplete.properties
+lib/firefox/chrome/en-US/locale/en-US/global/brand.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/browser.properties
+lib/firefox/chrome/en-US/locale/en-US/global/charsetMenu.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/charsetMenu.properties
+lib/firefox/chrome/en-US/locale/en-US/global/commonDialog.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/commonDialogs.properties
+lib/firefox/chrome/en-US/locale/en-US/global/config.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/config.properties
+lib/firefox/chrome/en-US/locale/en-US/global/contentAreaCommands.properties
+lib/firefox/chrome/en-US/locale/en-US/global/crashes.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/crashes.properties
+lib/firefox/chrome/en-US/locale/en-US/global/css.properties
+lib/firefox/chrome/en-US/locale/en-US/global/customizeToolbar.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/customizeToolbar.properties
+lib/firefox/chrome/en-US/locale/en-US/global/datetimebox.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/datetimepicker.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/dialog.properties
+lib/firefox/chrome/en-US/locale/en-US/global/dialogOverlay.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/dom/dom.properties
+lib/firefox/chrome/en-US/locale/en-US/global/editMenuOverlay.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/extensions.properties
+lib/firefox/chrome/en-US/locale/en-US/global/fallbackMenubar.properties
+lib/firefox/chrome/en-US/locale/en-US/global/filefield.properties
+lib/firefox/chrome/en-US/locale/en-US/global/filepicker.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/filepicker.properties
+lib/firefox/chrome/en-US/locale/en-US/global/findbar.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/findbar.properties
+lib/firefox/chrome/en-US/locale/en-US/global/finddialog.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/finddialog.properties
+lib/firefox/chrome/en-US/locale/en-US/global/global-strres.properties
+lib/firefox/chrome/en-US/locale/en-US/global/global.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/globalKeys.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/intl.css
+lib/firefox/chrome/en-US/locale/en-US/global/intl.properties
+lib/firefox/chrome/en-US/locale/en-US/global/keys.properties
+lib/firefox/chrome/en-US/locale/en-US/global/languageNames.properties
+lib/firefox/chrome/en-US/locale/en-US/global/layout/HtmlForm.properties
+lib/firefox/chrome/en-US/locale/en-US/global/layout/MediaDocument.properties
+lib/firefox/chrome/en-US/locale/en-US/global/layout/htmlparser.properties
+lib/firefox/chrome/en-US/locale/en-US/global/layout/xmlparser.properties
+lib/firefox/chrome/en-US/locale/en-US/global/layout_errors.properties
+lib/firefox/chrome/en-US/locale/en-US/global/mathml/mathml.properties
+lib/firefox/chrome/en-US/locale/en-US/global/mozilla.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/narrate.properties
+lib/firefox/chrome/en-US/locale/en-US/global/netError.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/netErrorApp.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/notification.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/nsWebBrowserPersist.properties
+lib/firefox/chrome/en-US/locale/en-US/global/plugins.properties
+lib/firefox/chrome/en-US/locale/en-US/global/preferences.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/printPageSetup.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/printPreview.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/printPreviewProgress.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/printProgress.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/printdialog.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/printdialog.properties
+lib/firefox/chrome/en-US/locale/en-US/global/printing.properties
+lib/firefox/chrome/en-US/locale/en-US/global/printjoboptions.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/regionNames.properties
+lib/firefox/chrome/en-US/locale/en-US/global/resetProfile.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/resetProfile.properties
+lib/firefox/chrome/en-US/locale/en-US/global/search/search.properties
+lib/firefox/chrome/en-US/locale/en-US/global/security/caps.properties
+lib/firefox/chrome/en-US/locale/en-US/global/security/csp.properties
+lib/firefox/chrome/en-US/locale/en-US/global/security/security.properties
+lib/firefox/chrome/en-US/locale/en-US/global/svg/svg.properties
+lib/firefox/chrome/en-US/locale/en-US/global/textcontext.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/tree.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/videocontrols.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/viewSource.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/viewSource.properties
+lib/firefox/chrome/en-US/locale/en-US/global/wizard.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/wizard.properties
+lib/firefox/chrome/en-US/locale/en-US/global/xbl.properties
+lib/firefox/chrome/en-US/locale/en-US/global/xml/prettyprint.dtd
+lib/firefox/chrome/en-US/locale/en-US/global/xslt/xslt.properties
+lib/firefox/chrome/en-US/locale/en-US/global/xul.properties
+lib/firefox/chrome/en-US/locale/en-US/mozapps/downloads/downloads.properties
+lib/firefox/chrome/en-US/locale/en-US/mozapps/downloads/settingsChange.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/downloads/unknownContentType.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/downloads/unknownContentType.properties
+lib/firefox/chrome/en-US/locale/en-US/mozapps/extensions/about.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/extensions/blocklist.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/extensions/extensions.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/extensions/extensions.properties
+lib/firefox/chrome/en-US/locale/en-US/mozapps/extensions/newaddon.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/extensions/newaddon.properties
+lib/firefox/chrome/en-US/locale/en-US/mozapps/extensions/update.properties
+lib/firefox/chrome/en-US/locale/en-US/mozapps/handling/handling.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/handling/handling.properties
+lib/firefox/chrome/en-US/locale/en-US/mozapps/preferences/changemp.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/preferences/preferences.properties
+lib/firefox/chrome/en-US/locale/en-US/mozapps/preferences/removemp.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/profile/createProfileWizard.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/profile/profileSelection.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/profile/profileSelection.properties
+lib/firefox/chrome/en-US/locale/en-US/mozapps/update/history.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/update/updates.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/update/updates.properties
+lib/firefox/chrome/en-US/locale/en-US/mozapps/xpinstall/xpinstallConfirm.dtd
+lib/firefox/chrome/en-US/locale/en-US/mozapps/xpinstall/xpinstallConfirm.properties
+lib/firefox/chrome/en-US/locale/en-US/necko/necko.properties
+lib/firefox/chrome/en-US/locale/en-US/passwordmgr/passwordManager.dtd
+lib/firefox/chrome/en-US/locale/en-US/passwordmgr/passwordmgr.properties
+lib/firefox/chrome/en-US/locale/en-US/pipnss/nsserrors.properties
+lib/firefox/chrome/en-US/locale/en-US/pipnss/pipnss.properties
+lib/firefox/chrome/en-US/locale/en-US/pippki/certManager.dtd
+lib/firefox/chrome/en-US/locale/en-US/pippki/deviceManager.dtd
+lib/firefox/chrome/en-US/locale/en-US/pippki/pippki.dtd
+lib/firefox/chrome/en-US/locale/en-US/pippki/pippki.properties
+lib/firefox/chrome/en-US/locale/en-US/places/places.properties
+lib/firefox/chrome/en-US/locale/en-US/pluginproblem/pluginproblem.dtd
+lib/firefox/chrome/en-US/locale/en-US/services/sync.properties
+lib/firefox/chrome/marionette/content/accessibility.js
+lib/firefox/chrome/marionette/content/action.js
+lib/firefox/chrome/marionette/content/addon.js
+lib/firefox/chrome/marionette/content/assert.js
+lib/firefox/chrome/marionette/content/atom.js
+lib/firefox/chrome/marionette/content/browser.js
+lib/firefox/chrome/marionette/content/capture.js
+lib/firefox/chrome/marionette/content/cert.js
+lib/firefox/chrome/marionette/content/cookie.js
+lib/firefox/chrome/marionette/content/dom.js
+lib/firefox/chrome/marionette/content/driver.js
+lib/firefox/chrome/marionette/content/element.js
+lib/firefox/chrome/marionette/content/error.js
+lib/firefox/chrome/marionette/content/evaluate.js
+lib/firefox/chrome/marionette/content/event.js
+lib/firefox/chrome/marionette/content/frame.js
+lib/firefox/chrome/marionette/content/interaction.js
+lib/firefox/chrome/marionette/content/l10n.js
+lib/firefox/chrome/marionette/content/legacyaction.js
+lib/firefox/chrome/marionette/content/listener.js
+lib/firefox/chrome/marionette/content/message.js
+lib/firefox/chrome/marionette/content/modal.js
+lib/firefox/chrome/marionette/content/navigate.js
+lib/firefox/chrome/marionette/content/packets.js
+lib/firefox/chrome/marionette/content/proxy.js
+lib/firefox/chrome/marionette/content/reftest.js
+lib/firefox/chrome/marionette/content/reftest.xul
+lib/firefox/chrome/marionette/content/server.js
+lib/firefox/chrome/marionette/content/session.js
+lib/firefox/chrome/marionette/content/stream-utils.js
+lib/firefox/chrome/marionette/content/transport.js
+lib/firefox/chrome/marionette/content/wait.js
+lib/firefox/chrome/pippki/content/pippki/CAOverlay.xul
+lib/firefox/chrome/pippki/content/pippki/MineOverlay.xul
+lib/firefox/chrome/pippki/content/pippki/OrphanOverlay.xul
+lib/firefox/chrome/pippki/content/pippki/OthersOverlay.xul
+lib/firefox/chrome/pippki/content/pippki/WebSitesOverlay.xul
+lib/firefox/chrome/pippki/content/pippki/certDump.xul
+lib/firefox/chrome/pippki/content/pippki/certManager.js
+lib/firefox/chrome/pippki/content/pippki/certManager.xul
+lib/firefox/chrome/pippki/content/pippki/certViewer.js
+lib/firefox/chrome/pippki/content/pippki/certViewer.xul
+lib/firefox/chrome/pippki/content/pippki/changepassword.js
+lib/firefox/chrome/pippki/content/pippki/changepassword.xul
+lib/firefox/chrome/pippki/content/pippki/choosetoken.js
+lib/firefox/chrome/pippki/content/pippki/choosetoken.xul
+lib/firefox/chrome/pippki/content/pippki/clientauthask.js
+lib/firefox/chrome/pippki/content/pippki/clientauthask.xul
+lib/firefox/chrome/pippki/content/pippki/createCertInfo.js
+lib/firefox/chrome/pippki/content/pippki/createCertInfo.xul
+lib/firefox/chrome/pippki/content/pippki/deletecert.js
+lib/firefox/chrome/pippki/content/pippki/deletecert.xul
+lib/firefox/chrome/pippki/content/pippki/device_manager.js
+lib/firefox/chrome/pippki/content/pippki/device_manager.xul
+lib/firefox/chrome/pippki/content/pippki/downloadcert.js
+lib/firefox/chrome/pippki/content/pippki/downloadcert.xul
+lib/firefox/chrome/pippki/content/pippki/editcacert.js
+lib/firefox/chrome/pippki/content/pippki/editcacert.xul
+lib/firefox/chrome/pippki/content/pippki/exceptionDialog.js
+lib/firefox/chrome/pippki/content/pippki/exceptionDialog.xul
+lib/firefox/chrome/pippki/content/pippki/load_device.js
+lib/firefox/chrome/pippki/content/pippki/load_device.xul
+lib/firefox/chrome/pippki/content/pippki/pippki.js
+lib/firefox/chrome/pippki/content/pippki/protectedAuth.js
+lib/firefox/chrome/pippki/content/pippki/protectedAuth.xul
+lib/firefox/chrome/pippki/content/pippki/resetpassword.js
+lib/firefox/chrome/pippki/content/pippki/resetpassword.xul
+lib/firefox/chrome/pippki/content/pippki/setp12password.js
+lib/firefox/chrome/pippki/content/pippki/setp12password.xul
+lib/firefox/chrome/pippki/content/pippki/viewCertDetails.xul
+lib/firefox/chrome/recording/content/recording.js
+lib/firefox/chrome/recording/content/recording.xul
+lib/firefox/chrome/toolkit/content/extensions/dummy.xul
+lib/firefox/chrome/toolkit/content/extensions/ext-alarms.js
+lib/firefox/chrome/toolkit/content/extensions/ext-backgroundPage.js
+lib/firefox/chrome/toolkit/content/extensions/ext-browser-content.js
+lib/firefox/chrome/toolkit/content/extensions/ext-browserSettings.js
+lib/firefox/chrome/toolkit/content/extensions/ext-c-backgroundPage.js
+lib/firefox/chrome/toolkit/content/extensions/ext-c-extension.js
+lib/firefox/chrome/toolkit/content/extensions/ext-c-identity.js
+lib/firefox/chrome/toolkit/content/extensions/ext-c-runtime.js
+lib/firefox/chrome/toolkit/content/extensions/ext-c-storage.js
+lib/firefox/chrome/toolkit/content/extensions/ext-c-test.js
+lib/firefox/chrome/toolkit/content/extensions/ext-c-toolkit.js
+lib/firefox/chrome/toolkit/content/extensions/ext-c-webRequest.js
+lib/firefox/chrome/toolkit/content/extensions/ext-clipboard.js
+lib/firefox/chrome/toolkit/content/extensions/ext-contextualIdentities.js
+lib/firefox/chrome/toolkit/content/extensions/ext-cookies.js
+lib/firefox/chrome/toolkit/content/extensions/ext-downloads.js
+lib/firefox/chrome/toolkit/content/extensions/ext-extension.js
+lib/firefox/chrome/toolkit/content/extensions/ext-i18n.js
+lib/firefox/chrome/toolkit/content/extensions/ext-identity.js
+lib/firefox/chrome/toolkit/content/extensions/ext-idle.js
+lib/firefox/chrome/toolkit/content/extensions/ext-management.js
+lib/firefox/chrome/toolkit/content/extensions/ext-notifications.js
+lib/firefox/chrome/toolkit/content/extensions/ext-permissions.js
+lib/firefox/chrome/toolkit/content/extensions/ext-privacy.js
+lib/firefox/chrome/toolkit/content/extensions/ext-protocolHandlers.js
+lib/firefox/chrome/toolkit/content/extensions/ext-proxy.js
+lib/firefox/chrome/toolkit/content/extensions/ext-runtime.js
+lib/firefox/chrome/toolkit/content/extensions/ext-storage.js
+lib/firefox/chrome/toolkit/content/extensions/ext-tabs-base.js
+lib/firefox/chrome/toolkit/content/extensions/ext-theme.js
+lib/firefox/chrome/toolkit/content/extensions/ext-toolkit.js
+lib/firefox/chrome/toolkit/content/extensions/ext-toolkit.json
+lib/firefox/chrome/toolkit/content/extensions/ext-topSites.js
+lib/firefox/chrome/toolkit/content/extensions/ext-webNavigation.js
+lib/firefox/chrome/toolkit/content/extensions/ext-webRequest.js
+lib/firefox/chrome/toolkit/content/extensions/schemas/alarms.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/browser_settings.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/clipboard.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/contextual_identities.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/cookies.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/downloads.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/events.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/experiments.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/extension.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/extension_protocol_handlers.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/extension_types.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/i18n.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/identity.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/idle.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/management.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/manifest.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/native_manifest.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/notifications.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/permissions.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/privacy.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/proxy.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/runtime.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/storage.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/test.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/theme.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/top_sites.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/types.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/web_navigation.json
+lib/firefox/chrome/toolkit/content/extensions/schemas/web_request.json
+lib/firefox/chrome/toolkit/content/global/BrowserElementChild.js
+lib/firefox/chrome/toolkit/content/global/BrowserElementChildPreload.js
+lib/firefox/chrome/toolkit/content/global/BrowserElementCopyPaste.js
+lib/firefox/chrome/toolkit/content/global/TopLevelVideoDocument.js
+lib/firefox/chrome/toolkit/content/global/XPCNativeWrapper.js
+lib/firefox/chrome/toolkit/content/global/about.js
+lib/firefox/chrome/toolkit/content/global/about.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutAbout.js
+lib/firefox/chrome/toolkit/content/global/aboutAbout.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutCache.js
+lib/firefox/chrome/toolkit/content/global/aboutCheckerboard.css
+lib/firefox/chrome/toolkit/content/global/aboutCheckerboard.js
+lib/firefox/chrome/toolkit/content/global/aboutCheckerboard.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutMemory.css
+lib/firefox/chrome/toolkit/content/global/aboutMemory.js
+lib/firefox/chrome/toolkit/content/global/aboutMemory.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutNetworking.js
+lib/firefox/chrome/toolkit/content/global/aboutNetworking.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutPerformance.js
+lib/firefox/chrome/toolkit/content/global/aboutPerformance.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutProfiles.js
+lib/firefox/chrome/toolkit/content/global/aboutProfiles.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutRights.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutServiceWorkers.js
+lib/firefox/chrome/toolkit/content/global/aboutServiceWorkers.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutSupport.js
+lib/firefox/chrome/toolkit/content/global/aboutSupport.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutTelemetry.css
+lib/firefox/chrome/toolkit/content/global/aboutTelemetry.js
+lib/firefox/chrome/toolkit/content/global/aboutTelemetry.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutUrlClassifier.css
+lib/firefox/chrome/toolkit/content/global/aboutUrlClassifier.js
+lib/firefox/chrome/toolkit/content/global/aboutUrlClassifier.xhtml
+lib/firefox/chrome/toolkit/content/global/aboutwebrtc/aboutWebrtc.css
+lib/firefox/chrome/toolkit/content/global/aboutwebrtc/aboutWebrtc.html
+lib/firefox/chrome/toolkit/content/global/aboutwebrtc/aboutWebrtc.js
+lib/firefox/chrome/toolkit/content/global/accessibility/AccessFu.css
+lib/firefox/chrome/toolkit/content/global/accessibility/clicked.ogg
+lib/firefox/chrome/toolkit/content/global/accessibility/content-script.js
+lib/firefox/chrome/toolkit/content/global/accessibility/virtual_cursor_key.ogg
+lib/firefox/chrome/toolkit/content/global/accessibility/virtual_cursor_move.ogg
+lib/firefox/chrome/toolkit/content/global/alerts/alert.css
+lib/firefox/chrome/toolkit/content/global/alerts/alert.js
+lib/firefox/chrome/toolkit/content/global/alerts/alert.xul
+lib/firefox/chrome/toolkit/content/global/appPicker.js
+lib/firefox/chrome/toolkit/content/global/appPicker.xul
+lib/firefox/chrome/toolkit/content/global/autocomplete.css
+lib/firefox/chrome/toolkit/content/global/backgroundPageThumbs.xhtml
+lib/firefox/chrome/toolkit/content/global/backgroundPageThumbsContent.js
+lib/firefox/chrome/toolkit/content/global/bindings/autocomplete.xml
+lib/firefox/chrome/toolkit/content/global/bindings/browser.xml
+lib/firefox/chrome/toolkit/content/global/bindings/button.xml
+lib/firefox/chrome/toolkit/content/global/bindings/calendar.js
+lib/firefox/chrome/toolkit/content/global/bindings/checkbox.xml
+lib/firefox/chrome/toolkit/content/global/bindings/colorpicker.xml
+lib/firefox/chrome/toolkit/content/global/bindings/datekeeper.js
+lib/firefox/chrome/toolkit/content/global/bindings/datepicker.js
+lib/firefox/chrome/toolkit/content/global/bindings/datetimebox.css
+lib/firefox/chrome/toolkit/content/global/bindings/datetimebox.xml
+lib/firefox/chrome/toolkit/content/global/bindings/datetimepicker.xml
+lib/firefox/chrome/toolkit/content/global/bindings/datetimepopup.xml
+lib/firefox/chrome/toolkit/content/global/bindings/dialog.xml
+lib/firefox/chrome/toolkit/content/global/bindings/editor.xml
+lib/firefox/chrome/toolkit/content/global/bindings/expander.xml
+lib/firefox/chrome/toolkit/content/global/bindings/filefield.xml
+lib/firefox/chrome/toolkit/content/global/bindings/findbar.xml
+lib/firefox/chrome/toolkit/content/global/bindings/general.xml
+lib/firefox/chrome/toolkit/content/global/bindings/groupbox.xml
+lib/firefox/chrome/toolkit/content/global/bindings/listbox.xml
+lib/firefox/chrome/toolkit/content/global/bindings/menu.xml
+lib/firefox/chrome/toolkit/content/global/bindings/menulist.xml
+lib/firefox/chrome/toolkit/content/global/bindings/notification.xml
+lib/firefox/chrome/toolkit/content/global/bindings/numberbox.xml
+lib/firefox/chrome/toolkit/content/global/bindings/popup.xml
+lib/firefox/chrome/toolkit/content/global/bindings/preferences.xml
+lib/firefox/chrome/toolkit/content/global/bindings/progressmeter.xml
+lib/firefox/chrome/toolkit/content/global/bindings/radio.xml
+lib/firefox/chrome/toolkit/content/global/bindings/remote-browser.xml
+lib/firefox/chrome/toolkit/content/global/bindings/resizer.xml
+lib/firefox/chrome/toolkit/content/global/bindings/richlistbox.xml
+lib/firefox/chrome/toolkit/content/global/bindings/scale.xml
+lib/firefox/chrome/toolkit/content/global/bindings/scrollbar.xml
+lib/firefox/chrome/toolkit/content/global/bindings/scrollbox.xml
+lib/firefox/chrome/toolkit/content/global/bindings/spinbuttons.xml
+lib/firefox/chrome/toolkit/content/global/bindings/spinner.js
+lib/firefox/chrome/toolkit/content/global/bindings/splitter.xml
+lib/firefox/chrome/toolkit/content/global/bindings/stringbundle.xml
+lib/firefox/chrome/toolkit/content/global/bindings/tabbox.xml
+lib/firefox/chrome/toolkit/content/global/bindings/text.xml
+lib/firefox/chrome/toolkit/content/global/bindings/textbox.xml
+lib/firefox/chrome/toolkit/content/global/bindings/timekeeper.js
+lib/firefox/chrome/toolkit/content/global/bindings/timepicker.js
+lib/firefox/chrome/toolkit/content/global/bindings/toolbar.xml
+lib/firefox/chrome/toolkit/content/global/bindings/toolbarbutton.xml
+lib/firefox/chrome/toolkit/content/global/bindings/tree.xml
+lib/firefox/chrome/toolkit/content/global/bindings/videocontrols.css
+lib/firefox/chrome/toolkit/content/global/bindings/videocontrols.xml
+lib/firefox/chrome/toolkit/content/global/bindings/wizard.xml
+lib/firefox/chrome/toolkit/content/global/browser-child.js
+lib/firefox/chrome/toolkit/content/global/browser-content.js
+lib/firefox/chrome/toolkit/content/global/buildconfig.html
+lib/firefox/chrome/toolkit/content/global/commonDialog.css
+lib/firefox/chrome/toolkit/content/global/commonDialog.js
+lib/firefox/chrome/toolkit/content/global/commonDialog.xul
+lib/firefox/chrome/toolkit/content/global/config.js
+lib/firefox/chrome/toolkit/content/global/config.xul
+lib/firefox/chrome/toolkit/content/global/contentAreaUtils.js
+lib/firefox/chrome/toolkit/content/global/customizeToolbar.css
+lib/firefox/chrome/toolkit/content/global/customizeToolbar.js
+lib/firefox/chrome/toolkit/content/global/customizeToolbar.xul
+lib/firefox/chrome/toolkit/content/global/datepicker.xhtml
+lib/firefox/chrome/toolkit/content/global/directionDetector.html
+lib/firefox/chrome/toolkit/content/global/editMenuOverlay.js
+lib/firefox/chrome/toolkit/content/global/editMenuOverlay.xul
+lib/firefox/chrome/toolkit/content/global/filepicker.js
+lib/firefox/chrome/toolkit/content/global/filepicker.properties
+lib/firefox/chrome/toolkit/content/global/filepicker.xul
+lib/firefox/chrome/toolkit/content/global/findUtils.js
+lib/firefox/chrome/toolkit/content/global/finddialog.js
+lib/firefox/chrome/toolkit/content/global/finddialog.xul
+lib/firefox/chrome/toolkit/content/global/globalOverlay.js
+lib/firefox/chrome/toolkit/content/global/gmp-sources/openh264.json
+lib/firefox/chrome/toolkit/content/global/gmp-sources/widevinecdm.json
+lib/firefox/chrome/toolkit/content/global/license.html
+lib/firefox/chrome/toolkit/content/global/manifestMessages.js
+lib/firefox/chrome/toolkit/content/global/menulist.css
+lib/firefox/chrome/toolkit/content/global/minimal-xul.css
+lib/firefox/chrome/toolkit/content/global/mozilla.xhtml
+lib/firefox/chrome/toolkit/content/global/netError.xhtml
+lib/firefox/chrome/toolkit/content/global/notfound.wav
+lib/firefox/chrome/toolkit/content/global/platformHTMLBindings.xml
+lib/firefox/chrome/toolkit/content/global/plugins.css
+lib/firefox/chrome/toolkit/content/global/plugins.html
+lib/firefox/chrome/toolkit/content/global/printPageSetup.js
+lib/firefox/chrome/toolkit/content/global/printPageSetup.xul
+lib/firefox/chrome/toolkit/content/global/printPreviewBindings.xml
+lib/firefox/chrome/toolkit/content/global/printPreviewProgress.js
+lib/firefox/chrome/toolkit/content/global/printPreviewProgress.xul
+lib/firefox/chrome/toolkit/content/global/printProgress.js
+lib/firefox/chrome/toolkit/content/global/printProgress.xul
+lib/firefox/chrome/toolkit/content/global/printUtils.js
+lib/firefox/chrome/toolkit/content/global/printdialog.js
+lib/firefox/chrome/toolkit/content/global/printdialog.xul
+lib/firefox/chrome/toolkit/content/global/printjoboptions.js
+lib/firefox/chrome/toolkit/content/global/printjoboptions.xul
+lib/firefox/chrome/toolkit/content/global/process-content.js
+lib/firefox/chrome/toolkit/content/global/reader/aboutReader.html
+lib/firefox/chrome/toolkit/content/global/reader/aboutReader.js
+lib/firefox/chrome/toolkit/content/global/remote-test-ipc.js
+lib/firefox/chrome/toolkit/content/global/resetProfile.css
+lib/firefox/chrome/toolkit/content/global/resetProfile.js
+lib/firefox/chrome/toolkit/content/global/resetProfile.xul
+lib/firefox/chrome/toolkit/content/global/resetProfileProgress.xul
+lib/firefox/chrome/toolkit/content/global/selectDialog.js
+lib/firefox/chrome/toolkit/content/global/selectDialog.xul
+lib/firefox/chrome/toolkit/content/global/simplifyMode.css
+lib/firefox/chrome/toolkit/content/global/tabprompts.css
+lib/firefox/chrome/toolkit/content/global/tabprompts.xml
+lib/firefox/chrome/toolkit/content/global/test-ipc.xul
+lib/firefox/chrome/toolkit/content/global/textbox.css
+lib/firefox/chrome/toolkit/content/global/timepicker.xhtml
+lib/firefox/chrome/toolkit/content/global/treeUtils.js
+lib/firefox/chrome/toolkit/content/global/unifiedcomplete-top-urls.json
+lib/firefox/chrome/toolkit/content/global/viewPartialSource.js
+lib/firefox/chrome/toolkit/content/global/viewPartialSource.xul
+lib/firefox/chrome/toolkit/content/global/viewSource-content.js
+lib/firefox/chrome/toolkit/content/global/viewSource.css
+lib/firefox/chrome/toolkit/content/global/viewSource.js
+lib/firefox/chrome/toolkit/content/global/viewSource.xul
+lib/firefox/chrome/toolkit/content/global/viewSourceUtils.js
+lib/firefox/chrome/toolkit/content/global/viewZoomOverlay.js
+lib/firefox/chrome/toolkit/content/global/win.xul
+lib/firefox/chrome/toolkit/content/global/xml/XMLMonoPrint.css
+lib/firefox/chrome/toolkit/content/global/xml/XMLPrettyPrint.css
+lib/firefox/chrome/toolkit/content/global/xml/XMLPrettyPrint.xml
+lib/firefox/chrome/toolkit/content/global/xml/XMLPrettyPrint.xsl
+lib/firefox/chrome/toolkit/content/global/xul.css
+lib/firefox/chrome/toolkit/content/mozapps/downloads/unknownContentType.xul
+lib/firefox/chrome/toolkit/content/mozapps/extensions/OpenH264-license.txt
+lib/firefox/chrome/toolkit/content/mozapps/extensions/about.js
+lib/firefox/chrome/toolkit/content/mozapps/extensions/about.xul
+lib/firefox/chrome/toolkit/content/mozapps/extensions/blocklist.css
+lib/firefox/chrome/toolkit/content/mozapps/extensions/blocklist.js
+lib/firefox/chrome/toolkit/content/mozapps/extensions/blocklist.xml
+lib/firefox/chrome/toolkit/content/mozapps/extensions/blocklist.xul
+lib/firefox/chrome/toolkit/content/mozapps/extensions/eula.js
+lib/firefox/chrome/toolkit/content/mozapps/extensions/eula.xul
+lib/firefox/chrome/toolkit/content/mozapps/extensions/extensions.css
+lib/firefox/chrome/toolkit/content/mozapps/extensions/extensions.js
+lib/firefox/chrome/toolkit/content/mozapps/extensions/extensions.xml
+lib/firefox/chrome/toolkit/content/mozapps/extensions/extensions.xul
+lib/firefox/chrome/toolkit/content/mozapps/extensions/gmpPrefs.xul
+lib/firefox/chrome/toolkit/content/mozapps/extensions/newaddon.js
+lib/firefox/chrome/toolkit/content/mozapps/extensions/newaddon.xul
+lib/firefox/chrome/toolkit/content/mozapps/extensions/pluginPrefs.xul
+lib/firefox/chrome/toolkit/content/mozapps/extensions/setting.xml
+lib/firefox/chrome/toolkit/content/mozapps/extensions/update.css
+lib/firefox/chrome/toolkit/content/mozapps/extensions/update.html
+lib/firefox/chrome/toolkit/content/mozapps/extensions/update.js
+lib/firefox/chrome/toolkit/content/mozapps/extensions/updateinfo.xsl
+lib/firefox/chrome/toolkit/content/mozapps/handling/dialog.js
+lib/firefox/chrome/toolkit/content/mozapps/handling/dialog.xul
+lib/firefox/chrome/toolkit/content/mozapps/handling/handler.css
+lib/firefox/chrome/toolkit/content/mozapps/handling/handler.xml
+lib/firefox/chrome/toolkit/content/mozapps/preferences/changemp.js
+lib/firefox/chrome/toolkit/content/mozapps/preferences/changemp.xul
+lib/firefox/chrome/toolkit/content/mozapps/preferences/fontbuilder.js
+lib/firefox/chrome/toolkit/content/mozapps/preferences/removemp.js
+lib/firefox/chrome/toolkit/content/mozapps/preferences/removemp.xul
+lib/firefox/chrome/toolkit/content/mozapps/profile/createProfileWizard.js
+lib/firefox/chrome/toolkit/content/mozapps/profile/createProfileWizard.xul
+lib/firefox/chrome/toolkit/content/mozapps/profile/profileSelection.js
+lib/firefox/chrome/toolkit/content/mozapps/profile/profileSelection.xul
+lib/firefox/chrome/toolkit/content/mozapps/xpinstall/xpinstallConfirm.css
+lib/firefox/chrome/toolkit/content/mozapps/xpinstall/xpinstallConfirm.js
+lib/firefox/chrome/toolkit/content/mozapps/xpinstall/xpinstallConfirm.xul
+lib/firefox/chrome/toolkit/content/mozapps/xpinstall/xpinstallItem.xml
+lib/firefox/chrome/toolkit/content/passwordmgr/passwordManager.js
+lib/firefox/chrome/toolkit/content/passwordmgr/passwordManager.xul
+lib/firefox/chrome/toolkit/content/passwordmgr/recipes.json
+lib/firefox/chrome/toolkit/content/preferences.properties
+lib/firefox/chrome/toolkit/content/providers.json
+lib/firefox/chrome/toolkit/content/satchel/formSubmitListener.js
+lib/firefox/chrome/toolkit/content/xbl-marquee/xbl-marquee.css
+lib/firefox/chrome/toolkit/content/xbl-marquee/xbl-marquee.xml
+lib/firefox/chrome/toolkit/pluginproblem/pluginProblem.xml
+lib/firefox/chrome/toolkit/pluginproblem/pluginProblemBinding.css
+lib/firefox/chrome/toolkit/pluginproblem/pluginProblemContent.css
+lib/firefox/chrome/toolkit/pluginproblem/pluginReplaceBinding.css
+lib/firefox/chrome/toolkit/res/accessiblecaret-normal%1.5x.png@localhost
+lib/firefox/chrome/toolkit/res/accessiblecaret-normal%1x.png@localhost
+lib/firefox/chrome/toolkit/res/accessiblecaret-normal%2.25x.png@localhost
+lib/firefox/chrome/toolkit/res/accessiblecaret-normal%2x.png@localhost
+lib/firefox/chrome/toolkit/res/accessiblecaret-tilt-left%1.5x.png@localhost
+lib/firefox/chrome/toolkit/res/accessiblecaret-tilt-left%1x.png@localhost
+lib/firefox/chrome/toolkit/res/accessiblecaret-tilt-left%2.25x.png@localhost
+lib/firefox/chrome/toolkit/res/accessiblecaret-tilt-left%2x.png@localhost
+lib/firefox/chrome/toolkit/res/accessiblecaret-tilt-right%1.5x.png@localhost
+lib/firefox/chrome/toolkit/res/accessiblecaret-tilt-right%1x.png@localhost
+lib/firefox/chrome/toolkit/res/accessiblecaret-tilt-right%2.25x.png@localhost
+lib/firefox/chrome/toolkit/res/accessiblecaret-tilt-right%2x.png@localhost
+lib/firefox/chrome/toolkit/res/arrow-left.gif
+lib/firefox/chrome/toolkit/res/arrow-right.gif
+lib/firefox/chrome/toolkit/res/arrow.gif
+lib/firefox/chrome/toolkit/res/arrowd-left.gif
+lib/firefox/chrome/toolkit/res/arrowd-right.gif
+lib/firefox/chrome/toolkit/res/arrowd.gif
+lib/firefox/chrome/toolkit/res/broken-image.png
+lib/firefox/chrome/toolkit/res/counterstyles.css
+lib/firefox/chrome/toolkit/res/forms.css
+lib/firefox/chrome/toolkit/res/hiddenWindow.html
+lib/firefox/chrome/toolkit/res/html.css
+lib/firefox/chrome/toolkit/res/loading-image.png
+lib/firefox/chrome/toolkit/res/mathml.css
+lib/firefox/chrome/toolkit/res/noframes.css
+lib/firefox/chrome/toolkit/res/noscript.css
+lib/firefox/chrome/toolkit/res/number-control.css
+lib/firefox/chrome/toolkit/res/quirk.css
+lib/firefox/chrome/toolkit/res/ua.css
+lib/firefox/chrome/toolkit/skin/classic/global/Filepicker.png
+lib/firefox/chrome/toolkit/skin/classic/global/about.css
+lib/firefox/chrome/toolkit/skin/classic/global/aboutCache.css
+lib/firefox/chrome/toolkit/skin/classic/global/aboutCacheEntry.css
+lib/firefox/chrome/toolkit/skin/classic/global/aboutMemory.css
+lib/firefox/chrome/toolkit/skin/classic/global/aboutReader.css
+lib/firefox/chrome/toolkit/skin/classic/global/aboutReaderContent.css
+lib/firefox/chrome/toolkit/skin/classic/global/aboutReaderControls.css
+lib/firefox/chrome/toolkit/skin/classic/global/aboutRights.css
+lib/firefox/chrome/toolkit/skin/classic/global/aboutSupport.css
+lib/firefox/chrome/toolkit/skin/classic/global/alerts/alert.css
+lib/firefox/chrome/toolkit/skin/classic/global/appPicker.css
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/arrow-dn-dis.gif
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/arrow-dn-hov.gif
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/arrow-dn.gif
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/arrow-lft-dis.gif
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/arrow-lft.gif
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/arrow-rit-dis.gif
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/arrow-rit.gif
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/arrow-up-dis.gif
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/arrow-up-hov.gif
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/arrow-up.gif
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/panelarrow-horizontal-themed.svg
+lib/firefox/chrome/toolkit/skin/classic/global/arrow/panelarrow-vertical-themed.svg
+lib/firefox/chrome/toolkit/skin/classic/global/autocomplete.css
+lib/firefox/chrome/toolkit/skin/classic/global/button.css
+lib/firefox/chrome/toolkit/skin/classic/global/checkbox.css
+lib/firefox/chrome/toolkit/skin/classic/global/colorpicker.css
+lib/firefox/chrome/toolkit/skin/classic/global/commonDialog.css
+lib/firefox/chrome/toolkit/skin/classic/global/config.css
+lib/firefox/chrome/toolkit/skin/classic/global/customizeToolbar.css
+lib/firefox/chrome/toolkit/skin/classic/global/datetimeinputpickers.css
+lib/firefox/chrome/toolkit/skin/classic/global/datetimepicker.css
+lib/firefox/chrome/toolkit/skin/classic/global/datetimepopup.css
+lib/firefox/chrome/toolkit/skin/classic/global/dialog.css
+lib/firefox/chrome/toolkit/skin/classic/global/dirListing/dirListing.css
+lib/firefox/chrome/toolkit/skin/classic/global/dropmarker.css
+lib/firefox/chrome/toolkit/skin/classic/global/expander.css
+lib/firefox/chrome/toolkit/skin/classic/global/filefield.css
+lib/firefox/chrome/toolkit/skin/classic/global/filepicker.css
+lib/firefox/chrome/toolkit/skin/classic/global/findBar.css
+lib/firefox/chrome/toolkit/skin/classic/global/global.css
+lib/firefox/chrome/toolkit/skin/classic/global/globalBindings.xml
+lib/firefox/chrome/toolkit/skin/classic/global/groupbox.css
+lib/firefox/chrome/toolkit/skin/classic/global/icons/Authentication.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/Close.gif
+lib/firefox/chrome/toolkit/skin/classic/global/icons/Minimize.gif
+lib/firefox/chrome/toolkit/skin/classic/global/icons/Restore.gif
+lib/firefox/chrome/toolkit/skin/classic/global/icons/arrow-dropdown-12.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/arrow-dropdown-16.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/autocomplete-search.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/autoscroll.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/blacklist_favicon.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/blacklist_large.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/blocked.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/calendar-arrow-left.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/calendar-arrow-right.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/close.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/error-16.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/error.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/find-next-arrow.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/find-previous-arrow.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/help.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/info.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/input-clear.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/loading.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/loading%2x.png@localhost
+lib/firefox/chrome/toolkit/skin/classic/global/icons/question-16.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/question-64.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/resizer-rtl.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/resizer.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/search-textbox.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/spinner-arrow-down.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/spinner-arrow-up.svg
+lib/firefox/chrome/toolkit/skin/classic/global/icons/sslWarning.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/tabprompts-bgtexture.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/warning-16.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/warning-64.png
+lib/firefox/chrome/toolkit/skin/classic/global/icons/warning.svg
+lib/firefox/chrome/toolkit/skin/classic/global/illustrations/about-rights.svg
+lib/firefox/chrome/toolkit/skin/classic/global/in-content/check-partial.svg
+lib/firefox/chrome/toolkit/skin/classic/global/in-content/check.svg
+lib/firefox/chrome/toolkit/skin/classic/global/in-content/common.css
+lib/firefox/chrome/toolkit/skin/classic/global/in-content/dropdown.svg
+lib/firefox/chrome/toolkit/skin/classic/global/in-content/help-glyph.svg
+lib/firefox/chrome/toolkit/skin/classic/global/in-content/info-pages.css
+lib/firefox/chrome/toolkit/skin/classic/global/in-content/radio.svg
+lib/firefox/chrome/toolkit/skin/classic/global/listbox.css
+lib/firefox/chrome/toolkit/skin/classic/global/media/TopLevelImageDocument.css
+lib/firefox/chrome/toolkit/skin/classic/global/media/TopLevelVideoDocument.css
+lib/firefox/chrome/toolkit/skin/classic/global/media/audioMutedButton.svg
+lib/firefox/chrome/toolkit/skin/classic/global/media/audioNoAudioButton.svg
+lib/firefox/chrome/toolkit/skin/classic/global/media/audioUnmutedButton.svg
+lib/firefox/chrome/toolkit/skin/classic/global/media/closedCaptionButton-cc-off.svg
+lib/firefox/chrome/toolkit/skin/classic/global/media/closedCaptionButton-cc-on.svg
+lib/firefox/chrome/toolkit/skin/classic/global/media/error.png
+lib/firefox/chrome/toolkit/skin/classic/global/media/fullscreenEnterButton.svg
+lib/firefox/chrome/toolkit/skin/classic/global/media/fullscreenExitButton.svg
+lib/firefox/chrome/toolkit/skin/classic/global/media/imagedoc-darknoise.png
+lib/firefox/chrome/toolkit/skin/classic/global/media/imagedoc-lightnoise.png
+lib/firefox/chrome/toolkit/skin/classic/global/media/pauseButton.svg
+lib/firefox/chrome/toolkit/skin/classic/global/media/playButton.svg
+lib/firefox/chrome/toolkit/skin/classic/global/media/stalled.png
+lib/firefox/chrome/toolkit/skin/classic/global/media/throbber.png
+lib/firefox/chrome/toolkit/skin/classic/global/media/videocontrols.css
+lib/firefox/chrome/toolkit/skin/classic/global/menu.css
+lib/firefox/chrome/toolkit/skin/classic/global/menu/shared-menu-check-active.svg
+lib/firefox/chrome/toolkit/skin/classic/global/menu/shared-menu-check-black.svg
+lib/firefox/chrome/toolkit/skin/classic/global/menu/shared-menu-check-hover.svg
+lib/firefox/chrome/toolkit/skin/classic/global/menu/shared-menu-check.png
+lib/firefox/chrome/toolkit/skin/classic/global/menu/shared-menu-check%2x.png@localhost
+lib/firefox/chrome/toolkit/skin/classic/global/menulist.css
+lib/firefox/chrome/toolkit/skin/classic/global/narrate.css
+lib/firefox/chrome/toolkit/skin/classic/global/narrate/arrow.svg
+lib/firefox/chrome/toolkit/skin/classic/global/narrate/back.svg
+lib/firefox/chrome/toolkit/skin/classic/global/narrate/fast.svg
+lib/firefox/chrome/toolkit/skin/classic/global/narrate/forward.svg
+lib/firefox/chrome/toolkit/skin/classic/global/narrate/slow.svg
+lib/firefox/chrome/toolkit/skin/classic/global/narrate/start.svg
+lib/firefox/chrome/toolkit/skin/classic/global/narrate/stop.svg
+lib/firefox/chrome/toolkit/skin/classic/global/narrateControls.css
+lib/firefox/chrome/toolkit/skin/classic/global/netError.css
+lib/firefox/chrome/toolkit/skin/classic/global/notification.css
+lib/firefox/chrome/toolkit/skin/classic/global/numberbox.css
+lib/firefox/chrome/toolkit/skin/classic/global/passwordmgr.css
+lib/firefox/chrome/toolkit/skin/classic/global/popup.css
+lib/firefox/chrome/toolkit/skin/classic/global/preferences.css
+lib/firefox/chrome/toolkit/skin/classic/global/printPageSetup.css
+lib/firefox/chrome/toolkit/skin/classic/global/printPreview.css
+lib/firefox/chrome/toolkit/skin/classic/global/progressmeter.css
+lib/firefox/chrome/toolkit/skin/classic/global/radio.css
+lib/firefox/chrome/toolkit/skin/classic/global/radio/radio-check-dis.gif
+lib/firefox/chrome/toolkit/skin/classic/global/radio/radio-check.gif
+lib/firefox/chrome/toolkit/skin/classic/global/reader/RM-Close-24x24.svg
+lib/firefox/chrome/toolkit/skin/classic/global/reader/RM-Content-Width-Minus-42x16.svg
+lib/firefox/chrome/toolkit/skin/classic/global/reader/RM-Content-Width-Plus-44x16.svg
+lib/firefox/chrome/toolkit/skin/classic/global/reader/RM-Line-Height-Minus-38x14.svg
+lib/firefox/chrome/toolkit/skin/classic/global/reader/RM-Line-Height-Plus-38x24.svg
+lib/firefox/chrome/toolkit/skin/classic/global/reader/RM-Minus-24x24.svg
+lib/firefox/chrome/toolkit/skin/classic/global/reader/RM-Plus-24x24.svg
+lib/firefox/chrome/toolkit/skin/classic/global/reader/RM-Type-Controls-24x24.svg
+lib/firefox/chrome/toolkit/skin/classic/global/reader/RM-Type-Controls-Arrow.svg
+lib/firefox/chrome/toolkit/skin/classic/global/resizer.css
+lib/firefox/chrome/toolkit/skin/classic/global/richlistbox.css
+lib/firefox/chrome/toolkit/skin/classic/global/scale.css
+lib/firefox/chrome/toolkit/skin/classic/global/scrollbars.css
+lib/firefox/chrome/toolkit/skin/classic/global/scrollbox.css
+lib/firefox/chrome/toolkit/skin/classic/global/spinbuttons.css
+lib/firefox/chrome/toolkit/skin/classic/global/splitter.css
+lib/firefox/chrome/toolkit/skin/classic/global/splitter/grip-bottom.gif
+lib/firefox/chrome/toolkit/skin/classic/global/splitter/grip-left.gif
+lib/firefox/chrome/toolkit/skin/classic/global/splitter/grip-right.gif
+lib/firefox/chrome/toolkit/skin/classic/global/splitter/grip-top.gif
+lib/firefox/chrome/toolkit/skin/classic/global/tabbox.css
+lib/firefox/chrome/toolkit/skin/classic/global/tabprompts.css
+lib/firefox/chrome/toolkit/skin/classic/global/textbox.css
+lib/firefox/chrome/toolkit/skin/classic/global/toolbar.css
+lib/firefox/chrome/toolkit/skin/classic/global/toolbar/spring.png
+lib/firefox/chrome/toolkit/skin/classic/global/toolbarbutton.css
+lib/firefox/chrome/toolkit/skin/classic/global/tree.css
+lib/firefox/chrome/toolkit/skin/classic/global/tree/columnpicker.gif
+lib/firefox/chrome/toolkit/skin/classic/global/tree/sort-asc-classic.png
+lib/firefox/chrome/toolkit/skin/classic/global/tree/sort-asc.png
+lib/firefox/chrome/toolkit/skin/classic/global/tree/sort-dsc-classic.png
+lib/firefox/chrome/toolkit/skin/classic/global/tree/sort-dsc.png
+lib/firefox/chrome/toolkit/skin/classic/global/tree/twisty-clsd.png
+lib/firefox/chrome/toolkit/skin/classic/global/tree/twisty-open.png
+lib/firefox/chrome/toolkit/skin/classic/global/wizard.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/aboutNetworking.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/aboutProfiles.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/aboutServiceWorkers.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/downloads/downloadButtons.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/downloads/downloadIcon.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/downloads/unknownContentType.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/about.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/alerticon-error.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/alerticon-info-negative.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/alerticon-info-positive.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/alerticon-warning.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/blocklist.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/cancel.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/category-available.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/category-discover.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/category-legacy.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/category-plugins.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/category-recent.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/category-search.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/category-service.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/dictionaryGeneric.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/discover-logo.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/eula.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/experimentGeneric.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/extensionGeneric-16.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/extensionGeneric.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/extensions.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/heart.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/navigation.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/newaddon.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/rating-not-won.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/rating-won.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/themeGeneric.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/extensions/utilities.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/handling/handling.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/places/defaultFavicon.svg
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginActivate.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginBlocked.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginClose.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginCrashed.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginStripe.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginBlocked-64.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginBlocked.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginGeneric-16.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginGeneric.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginHelp-16.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginProblem.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/profile/profileSelection.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/profile/profileicon.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/update/downloadButtons.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/update/updates.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/viewsource/viewsource.css
+lib/firefox/chrome/toolkit/skin/classic/mozapps/xpinstall/xpinstallConfirm.css
+lib/firefox/components/BrowserElementParent.js
+lib/firefox/components/ColorAnalyzer.js
+lib/firefox/components/ConsoleAPIStorage.js
+lib/firefox/components/ContentPrefService2.js
+lib/firefox/components/ContentProcessSingleton.js
+lib/firefox/components/DownloadLegacy.js
+lib/firefox/components/EditorUtils.js
+lib/firefox/components/FeedProcessor.js
+lib/firefox/components/FormHistoryStartup.js
+lib/firefox/components/FxAccountsPush.js
+lib/firefox/components/MainProcessSingleton.js
+lib/firefox/components/NetworkGeolocationProvider.js
+lib/firefox/components/NotificationStorage.js
+lib/firefox/components/PageIconProtocolHandler.js
+lib/firefox/components/PageThumbsProtocol.js
+lib/firefox/components/PlacesCategoriesStarter.js
+lib/firefox/components/PresentationControlService.js
+lib/firefox/components/PresentationDataChannelSessionTransport.js
+lib/firefox/components/PrivateBrowsingTrackingProtectionWhitelist.js
+lib/firefox/components/ProcessSelector.js
+lib/firefox/components/Push.js
+lib/firefox/components/PushComponents.js
+lib/firefox/components/RemoteWebNavigation.js
+lib/firefox/components/SecurityReporter.js
+lib/firefox/components/SlowScriptDebug.js
+lib/firefox/components/TelemetryStartup.js
+lib/firefox/components/TooltipTextProvider.js
+lib/firefox/components/UAOverridesBootstrapper.js
+lib/firefox/components/UnifiedComplete.js
+lib/firefox/components/Weave.js
+lib/firefox/components/WebVTTParserWrapper.js
+lib/firefox/components/WellKnownOpportunisticUtils.js
+lib/firefox/components/XULStore.js
+lib/firefox/components/addonManager.js
+lib/firefox/components/amContentHandler.js
+lib/firefox/components/amInstallTrigger.js
+lib/firefox/components/amWebAPI.js
+lib/firefox/components/captivedetect.js
+lib/firefox/components/components.manifest
+lib/firefox/components/contentAreaDropListener.js
+lib/firefox/components/crypto-SDR.js
+lib/firefox/components/defaultShims.js
+lib/firefox/components/extension-process-script.js
+lib/firefox/components/htmlMenuBuilder.js
+lib/firefox/components/interfaces.xpt
+lib/firefox/components/marionette.js
+lib/firefox/components/mozIntl.js
+lib/firefox/components/mozProtocolHandler.js
+lib/firefox/components/multiprocessShims.js
+lib/firefox/components/nsAsyncShutdown.js
+lib/firefox/components/nsBlocklistService.js
+lib/firefox/components/nsBlocklistServiceContent.js
+lib/firefox/components/nsContentDispatchChooser.js
+lib/firefox/components/nsCrashMonitor.js
+lib/firefox/components/nsDNSServiceDiscovery.js
+lib/firefox/components/nsDefaultCLH.js
+lib/firefox/components/nsFilePicker.js
+lib/firefox/components/nsFormAutoComplete.js
+lib/firefox/components/nsHandlerService-json.js
+lib/firefox/components/nsHandlerService.js
+lib/firefox/components/nsHelperAppDlg.js
+lib/firefox/components/nsINIProcessor.js
+lib/firefox/components/nsInputListAutoComplete.js
+lib/firefox/components/nsLivemarkService.js
+lib/firefox/components/nsLoginInfo.js
+lib/firefox/components/nsLoginManager.js
+lib/firefox/components/nsLoginManagerPrompter.js
+lib/firefox/components/nsPlacesExpiration.js
+lib/firefox/components/nsPrompter.js
+lib/firefox/components/nsSearchService.js
+lib/firefox/components/nsSearchSuggestions.js
+lib/firefox/components/nsSidebar.js
+lib/firefox/components/nsTaggingService.js
+lib/firefox/components/nsTerminatorTelemetry.js
+lib/firefox/components/nsURLFormatter.js
+lib/firefox/components/nsUpdateTimerManager.js
+lib/firefox/components/nsUrlClassifierHashCompleter.js
+lib/firefox/components/nsUrlClassifierLib.js
+lib/firefox/components/nsUrlClassifierListManager.js
+lib/firefox/components/nsWebHandlerApp.js
+lib/firefox/components/recording-cmdline.js
+lib/firefox/components/simpleServices.js
+lib/firefox/components/storage-json.js
+lib/firefox/components/txEXSLTRegExFunctions.js
+lib/firefox/contentaccessible/ImageDocument.css
+lib/firefox/contentaccessible/TopLevelImageDocument.css
+lib/firefox/contentaccessible/TopLevelVideoDocument.css
+lib/firefox/contentaccessible/plaintext.css
+lib/firefox/contentaccessible/viewsource.css
+lib/firefox/defaults/autoconfig/prefcalls.js
+lib/firefox/defaults/pref/channel-prefs.js
+lib/firefox/defaults/pref/marionette.js
+lib/firefox/defaults/pref/services-sync.js
+lib/firefox/dependentlibs.list
+lib/firefox/dictionaries/en-US.aff
+lib/firefox/dictionaries/en-US.dic
+lib/firefox/firefox
+lib/firefox/firefox-bin
+lib/firefox/gmp-clearkey/0.1/libclearkey.so
+lib/firefox/gmp-clearkey/0.1/manifest.json
+lib/firefox/greprefs.js
+lib/firefox/gtk2/libmozgtk.so
+lib/firefox/hyphenation/hyph_af.dic
+lib/firefox/hyphenation/hyph_bg.dic
+lib/firefox/hyphenation/hyph_ca.dic
+lib/firefox/hyphenation/hyph_cy.dic
+lib/firefox/hyphenation/hyph_da.dic
+lib/firefox/hyphenation/hyph_de-1901.dic
+lib/firefox/hyphenation/hyph_de-1996.dic
+lib/firefox/hyphenation/hyph_de-CH.dic
+lib/firefox/hyphenation/hyph_en_US.dic
+lib/firefox/hyphenation/hyph_eo.dic
+lib/firefox/hyphenation/hyph_es.dic
+lib/firefox/hyphenation/hyph_et.dic
+lib/firefox/hyphenation/hyph_fi.dic
+lib/firefox/hyphenation/hyph_fr.dic
+lib/firefox/hyphenation/hyph_gl.dic
+lib/firefox/hyphenation/hyph_hr.dic
+lib/firefox/hyphenation/hyph_hsb.dic
+lib/firefox/hyphenation/hyph_hu.dic
+lib/firefox/hyphenation/hyph_ia.dic
+lib/firefox/hyphenation/hyph_is.dic
+lib/firefox/hyphenation/hyph_it.dic
+lib/firefox/hyphenation/hyph_kmr.dic
+lib/firefox/hyphenation/hyph_la.dic
+lib/firefox/hyphenation/hyph_lt.dic
+lib/firefox/hyphenation/hyph_mn.dic
+lib/firefox/hyphenation/hyph_nb.dic
+lib/firefox/hyphenation/hyph_nl.dic
+lib/firefox/hyphenation/hyph_nn.dic
+lib/firefox/hyphenation/hyph_pl.dic
+lib/firefox/hyphenation/hyph_pt.dic
+lib/firefox/hyphenation/hyph_ru.dic
+lib/firefox/hyphenation/hyph_sh.dic
+lib/firefox/hyphenation/hyph_sl.dic
+lib/firefox/hyphenation/hyph_sv.dic
+lib/firefox/hyphenation/hyph_tr.dic
+lib/firefox/hyphenation/hyph_uk.dic
+lib/firefox/liblgpllibs.so
+${PLIST.avx86}lib/firefox/libmozavcodec.so
+${PLIST.avx86}lib/firefox/libmozavutil.so
+lib/firefox/libmozgtk.so
+lib/firefox/libmozsqlite3.so
+lib/firefox/libxul.so
+lib/firefox/modules/AboutReader.jsm
+lib/firefox/modules/AddonManager.jsm
+lib/firefox/modules/AppConstants.jsm
+lib/firefox/modules/AppMenuNotifications.jsm
+lib/firefox/modules/AsyncPrefs.jsm
+lib/firefox/modules/AsyncShutdown.jsm
+lib/firefox/modules/AutoCompletePopup.jsm
+lib/firefox/modules/BackgroundPageThumbs.jsm
+lib/firefox/modules/Battery.jsm
+lib/firefox/modules/BinarySearch.jsm
+lib/firefox/modules/BookmarkHTMLUtils.jsm
+lib/firefox/modules/BookmarkJSONUtils.jsm
+lib/firefox/modules/Bookmarks.jsm
+lib/firefox/modules/BrowserElementPromptService.jsm
+lib/firefox/modules/BrowserUtils.jsm
+lib/firefox/modules/CanonicalJSON.jsm
+lib/firefox/modules/CertUtils.jsm
+lib/firefox/modules/CharsetMenu.jsm
+lib/firefox/modules/ChromeManifestParser.jsm
+lib/firefox/modules/ClientID.jsm
+lib/firefox/modules/CloudStorage.jsm
+lib/firefox/modules/ClusterLib.js
+lib/firefox/modules/Color.jsm
+lib/firefox/modules/ColorAnalyzer_worker.js
+lib/firefox/modules/ColorConversion.js
+lib/firefox/modules/CommonDialog.jsm
+lib/firefox/modules/CompatWarning.jsm
+lib/firefox/modules/Console.jsm
+lib/firefox/modules/ContentPrefServiceChild.jsm
+lib/firefox/modules/ContentPrefServiceParent.jsm
+lib/firefox/modules/ContentPrefStore.jsm
+lib/firefox/modules/ContentPrefUtils.jsm
+lib/firefox/modules/ContextualIdentityService.jsm
+lib/firefox/modules/CrashMonitor.jsm
+lib/firefox/modules/Credentials.jsm
+lib/firefox/modules/DNSPacket.jsm
+lib/firefox/modules/DNSRecord.jsm
+lib/firefox/modules/DNSResourceRecord.jsm
+lib/firefox/modules/DNSTypes.jsm
+lib/firefox/modules/DOMLocalization.jsm
+lib/firefox/modules/DOMRequestHelper.jsm
+lib/firefox/modules/DataReader.jsm
+lib/firefox/modules/DataWriter.jsm
+lib/firefox/modules/DateTimePickerHelper.jsm
+lib/firefox/modules/DeferredSave.jsm
+lib/firefox/modules/DeferredTask.jsm
+lib/firefox/modules/Deprecated.jsm
+lib/firefox/modules/DownloadCore.jsm
+lib/firefox/modules/DownloadHistory.jsm
+lib/firefox/modules/DownloadIntegration.jsm
+lib/firefox/modules/DownloadLastDir.jsm
+lib/firefox/modules/DownloadList.jsm
+lib/firefox/modules/DownloadPaths.jsm
+lib/firefox/modules/DownloadStore.jsm
+lib/firefox/modules/DownloadUIHelper.jsm
+lib/firefox/modules/DownloadUtils.jsm
+lib/firefox/modules/Downloads.jsm
+lib/firefox/modules/EventEmitter.jsm
+lib/firefox/modules/Extension.jsm
+lib/firefox/modules/ExtensionChild.jsm
+lib/firefox/modules/ExtensionChildDevToolsUtils.jsm
+lib/firefox/modules/ExtensionCommon.jsm
+lib/firefox/modules/ExtensionContent.jsm
+lib/firefox/modules/ExtensionPageChild.jsm
+lib/firefox/modules/ExtensionParent.jsm
+lib/firefox/modules/ExtensionPermissions.jsm
+lib/firefox/modules/ExtensionPreferencesManager.jsm
+lib/firefox/modules/ExtensionSearchHandler.jsm
+lib/firefox/modules/ExtensionSettingsStore.jsm
+lib/firefox/modules/ExtensionStorage.jsm
+lib/firefox/modules/ExtensionStorageSync.jsm
+lib/firefox/modules/ExtensionUtils.jsm
+lib/firefox/modules/FileUtils.jsm
+lib/firefox/modules/FindContent.jsm
+lib/firefox/modules/Finder.jsm
+lib/firefox/modules/FinderHighlighter.jsm
+lib/firefox/modules/FinderIterator.jsm
+lib/firefox/modules/ForgetAboutSite.jsm
+lib/firefox/modules/FormData.jsm
+lib/firefox/modules/FormHistory.jsm
+lib/firefox/modules/FormLikeFactory.jsm
+lib/firefox/modules/FxAccounts.jsm
+lib/firefox/modules/FxAccountsClient.jsm
+lib/firefox/modules/FxAccountsCommon.js
+lib/firefox/modules/FxAccountsConfig.jsm
+lib/firefox/modules/FxAccountsOAuthGrantClient.jsm
+lib/firefox/modules/FxAccountsProfile.jsm
+lib/firefox/modules/FxAccountsProfileClient.jsm
+lib/firefox/modules/FxAccountsStorage.jsm
+lib/firefox/modules/FxAccountsWebChannel.jsm
+lib/firefox/modules/GCTelemetry.jsm
+lib/firefox/modules/GMPExtractorWorker.js
+lib/firefox/modules/GMPInstallManager.jsm
+lib/firefox/modules/GMPUtils.jsm
+lib/firefox/modules/Geometry.jsm
+lib/firefox/modules/History.jsm
+lib/firefox/modules/Http.jsm
+lib/firefox/modules/ISO8601DateUtils.jsm
+lib/firefox/modules/ImageObjectProcessor.jsm
+lib/firefox/modules/IndexedDB.jsm
+lib/firefox/modules/IndexedDBHelper.jsm
+lib/firefox/modules/InlineSpellChecker.jsm
+lib/firefox/modules/InlineSpellCheckerContent.jsm
+lib/firefox/modules/InsecurePasswordUtils.jsm
+lib/firefox/modules/Integration.jsm
+lib/firefox/modules/JSONFile.jsm
+lib/firefox/modules/L10nRegistry.jsm
+lib/firefox/modules/LegacyExtensionsUtils.jsm
+lib/firefox/modules/LightweightThemeConsumer.jsm
+lib/firefox/modules/LightweightThemeManager.jsm
+lib/firefox/modules/LoadContextInfo.jsm
+lib/firefox/modules/Localization.jsm
+lib/firefox/modules/Log.jsm
+lib/firefox/modules/LoginHelper.jsm
+lib/firefox/modules/LoginImport.jsm
+lib/firefox/modules/LoginManagerContent.jsm
+lib/firefox/modules/LoginManagerContextMenu.jsm
+lib/firefox/modules/LoginManagerParent.jsm
+lib/firefox/modules/LoginRecipes.jsm
+lib/firefox/modules/LoginStore.jsm
+lib/firefox/modules/Manifest.jsm
+lib/firefox/modules/ManifestFinder.jsm
+lib/firefox/modules/ManifestIcons.jsm
+lib/firefox/modules/ManifestObtainer.jsm
+lib/firefox/modules/ManifestProcessor.jsm
+lib/firefox/modules/MatchPattern.jsm
+lib/firefox/modules/Memory.jsm
+lib/firefox/modules/MessageChannel.jsm
+lib/firefox/modules/MessageContext.jsm
+lib/firefox/modules/MulticastDNS.jsm
+lib/firefox/modules/NLP.jsm
+lib/firefox/modules/NativeManifests.jsm
+lib/firefox/modules/NativeMessaging.jsm
+lib/firefox/modules/NetUtil.jsm
+lib/firefox/modules/NewTabUtils.jsm
+lib/firefox/modules/NotificationDB.jsm
+lib/firefox/modules/OSCrypto.jsm
+lib/firefox/modules/ObjectUtils.jsm
+lib/firefox/modules/PageMenu.jsm
+lib/firefox/modules/PageMetadata.jsm
+lib/firefox/modules/PageThumbUtils.jsm
+lib/firefox/modules/PageThumbs.jsm
+lib/firefox/modules/PageThumbsWorker.js
+lib/firefox/modules/PerfMeasurement.jsm
+lib/firefox/modules/PerformanceStats-content.js
+lib/firefox/modules/PerformanceStats.jsm
+lib/firefox/modules/PerformanceWatcher-content.js
+lib/firefox/modules/PerformanceWatcher.jsm
+lib/firefox/modules/PermissionsUtils.jsm
+lib/firefox/modules/PlacesBackups.jsm
+lib/firefox/modules/PlacesDBUtils.jsm
+lib/firefox/modules/PlacesRemoteTabsAutocompleteProvider.jsm
+lib/firefox/modules/PlacesSearchAutocompleteProvider.jsm
+lib/firefox/modules/PlacesSyncUtils.jsm
+lib/firefox/modules/PlacesTransactions.jsm
+lib/firefox/modules/PlacesUtils.jsm
+lib/firefox/modules/PluralForm.jsm
+lib/firefox/modules/PopupNotifications.jsm
+lib/firefox/modules/Preferences.jsm
+lib/firefox/modules/Prefetcher.jsm
+lib/firefox/modules/PrivateBrowsingUtils.jsm
+lib/firefox/modules/ProfileAge.jsm
+lib/firefox/modules/Promise-backend.js
+lib/firefox/modules/Promise.jsm
+lib/firefox/modules/PromiseMessage.jsm
+lib/firefox/modules/PromiseUtils.jsm
+lib/firefox/modules/PromiseWorker.jsm
+lib/firefox/modules/ProxyScriptContext.jsm
+lib/firefox/modules/PushCrypto.jsm
+lib/firefox/modules/PushDB.jsm
+lib/firefox/modules/PushRecord.jsm
+lib/firefox/modules/PushService.jsm
+lib/firefox/modules/PushServiceHttp2.jsm
+lib/firefox/modules/PushServiceWebSocket.jsm
+lib/firefox/modules/ReaderMode.jsm
+lib/firefox/modules/RemoteAddonsChild.jsm
+lib/firefox/modules/RemoteAddonsParent.jsm
+lib/firefox/modules/RemoteController.js
+lib/firefox/modules/RemoteFinder.jsm
+lib/firefox/modules/RemotePageManager.jsm
+lib/firefox/modules/RemoteSecurityUI.jsm
+lib/firefox/modules/RemoteWebProgress.jsm
+lib/firefox/modules/ResetProfile.jsm
+lib/firefox/modules/ResponsivenessMonitor.jsm
+lib/firefox/modules/RokuApp.jsm
+lib/firefox/modules/SafeBrowsing.jsm
+lib/firefox/modules/Schemas.jsm
+lib/firefox/modules/ScrollPosition.jsm
+lib/firefox/modules/SearchStaticData.jsm
+lib/firefox/modules/SearchSuggestionController.jsm
+lib/firefox/modules/SelectContentHelper.jsm
+lib/firefox/modules/SelectParentHelper.jsm
+lib/firefox/modules/ServiceRequest.jsm
+lib/firefox/modules/Services.jsm
+lib/firefox/modules/SharedPromptUtils.jsm
+lib/firefox/modules/ShortcutUtils.jsm
+lib/firefox/modules/SimpleServiceDiscovery.jsm
+lib/firefox/modules/Sqlite.jsm
+lib/firefox/modules/Subprocess.jsm
+lib/firefox/modules/Task.jsm
+lib/firefox/modules/TelemetryArchive.jsm
+lib/firefox/modules/TelemetryController.jsm
+lib/firefox/modules/TelemetryEnvironment.jsm
+lib/firefox/modules/TelemetryHealthPing.jsm
+lib/firefox/modules/TelemetryLog.jsm
+lib/firefox/modules/TelemetryModules.jsm
+lib/firefox/modules/TelemetryReportingPolicy.jsm
+lib/firefox/modules/TelemetrySend.jsm
+lib/firefox/modules/TelemetrySession.jsm
+lib/firefox/modules/TelemetryStopwatch.jsm
+lib/firefox/modules/TelemetryStorage.jsm
+lib/firefox/modules/TelemetryTimestamps.jsm
+lib/firefox/modules/TelemetryUtils.jsm
+lib/firefox/modules/ThirdPartyCookieProbe.jsm
+lib/firefox/modules/Timer.jsm
+lib/firefox/modules/Troubleshoot.jsm
+lib/firefox/modules/UITelemetry.jsm
+lib/firefox/modules/UpdatePing.jsm
+lib/firefox/modules/UpdateUtils.jsm
+lib/firefox/modules/UserAgentOverrides.jsm
+lib/firefox/modules/UserAgentUpdates.jsm
+lib/firefox/modules/ValueExtractor.jsm
+lib/firefox/modules/ViewSourceBrowser.jsm
+lib/firefox/modules/WebChannel.jsm
+lib/firefox/modules/WebNavigation.jsm
+lib/firefox/modules/WebNavigationContent.js
+lib/firefox/modules/WebNavigationFrames.jsm
+lib/firefox/modules/WebRequest.jsm
+lib/firefox/modules/WebRequestCommon.jsm
+lib/firefox/modules/WebRequestContent.js
+lib/firefox/modules/WebRequestUpload.jsm
+lib/firefox/modules/WindowDraggingUtils.jsm
+lib/firefox/modules/XPCOMUtils.jsm
+lib/firefox/modules/ZipUtils.jsm
+lib/firefox/modules/accessibility/AccessFu.jsm
+lib/firefox/modules/accessibility/Constants.jsm
+lib/firefox/modules/accessibility/ContentControl.jsm
+lib/firefox/modules/accessibility/EventManager.jsm
+lib/firefox/modules/accessibility/Gestures.jsm
+lib/firefox/modules/accessibility/OutputGenerator.jsm
+lib/firefox/modules/accessibility/PointerAdapter.jsm
+lib/firefox/modules/accessibility/Presentation.jsm
+lib/firefox/modules/accessibility/Traversal.jsm
+lib/firefox/modules/accessibility/Utils.jsm
+lib/firefox/modules/addons/APIExtensionBootstrap.js
+lib/firefox/modules/addons/AddonRepository.jsm
+lib/firefox/modules/addons/AddonRepository_SQLiteMigrator.jsm
+lib/firefox/modules/addons/AddonSettings.jsm
+lib/firefox/modules/addons/AddonUpdateChecker.jsm
+lib/firefox/modules/addons/Content.js
+lib/firefox/modules/addons/E10SAddonsRollout.jsm
+lib/firefox/modules/addons/GMPProvider.jsm
+lib/firefox/modules/addons/LightweightThemeImageOptimizer.jsm
+lib/firefox/modules/addons/PluginProvider.jsm
+lib/firefox/modules/addons/ProductAddonChecker.jsm
+lib/firefox/modules/addons/SpellCheckDictionaryBootstrap.js
+lib/firefox/modules/addons/XPIInstall.jsm
+lib/firefox/modules/addons/XPIProvider.jsm
+lib/firefox/modules/addons/XPIProviderUtils.js
+lib/firefox/modules/css-selector.js
+lib/firefox/modules/ctypes.jsm
+lib/firefox/modules/debug.js
+lib/firefox/modules/devtools/Console.jsm
+lib/firefox/modules/devtools/Loader.jsm
+lib/firefox/modules/devtools/dbg-client.jsm
+lib/firefox/modules/devtools/dbg-server.jsm
+lib/firefox/modules/devtools/event-emitter.js
+lib/firefox/modules/devtools/shared/Loader.jsm
+lib/firefox/modules/jsdebugger.jsm
+lib/firefox/modules/lz4.js
+lib/firefox/modules/lz4_internal.js
+lib/firefox/modules/media/IdpSandbox.jsm
+lib/firefox/modules/media/PeerConnectionIdp.jsm
+lib/firefox/modules/media/RTCStatsReport.jsm
+lib/firefox/modules/microformat-shiv.js
+lib/firefox/modules/narrate/NarrateControls.jsm
+lib/firefox/modules/narrate/Narrator.jsm
+lib/firefox/modules/narrate/VoiceSelect.jsm
+lib/firefox/modules/nsFormAutoCompleteResult.jsm
+lib/firefox/modules/osfile.jsm
+lib/firefox/modules/osfile/osfile_async_front.jsm
+lib/firefox/modules/osfile/osfile_async_worker.js
+lib/firefox/modules/osfile/osfile_native.jsm
+lib/firefox/modules/osfile/osfile_shared_allthreads.jsm
+lib/firefox/modules/osfile/osfile_shared_front.jsm
+lib/firefox/modules/osfile/osfile_unix_allthreads.jsm
+lib/firefox/modules/osfile/osfile_unix_back.jsm
+lib/firefox/modules/osfile/osfile_unix_front.jsm
+lib/firefox/modules/osfile/ospath.jsm
+lib/firefox/modules/osfile/ospath_unix.jsm
+lib/firefox/modules/osfile/ospath_win.jsm
+lib/firefox/modules/presentation/ControllerStateMachine.jsm
+lib/firefox/modules/presentation/ReceiverStateMachine.jsm
+lib/firefox/modules/presentation/StateMachineHelper.jsm
+lib/firefox/modules/reader/JSDOMParser.js
+lib/firefox/modules/reader/Readability.js
+lib/firefox/modules/reader/ReaderWorker.js
+lib/firefox/modules/reader/ReaderWorker.jsm
+lib/firefox/modules/reflect.jsm
+lib/firefox/modules/services-common/async.js
+lib/firefox/modules/services-common/blocklist-clients.js
+lib/firefox/modules/services-common/blocklist-updater.js
+lib/firefox/modules/services-common/hawkclient.js
+lib/firefox/modules/services-common/hawkrequest.js
+lib/firefox/modules/services-common/kinto-http-client.js
+lib/firefox/modules/services-common/kinto-offline-client.js
+lib/firefox/modules/services-common/kinto-storage-adapter.js
+lib/firefox/modules/services-common/logmanager.js
+lib/firefox/modules/services-common/observers.js
+lib/firefox/modules/services-common/rest.js
+lib/firefox/modules/services-common/tokenserverclient.js
+lib/firefox/modules/services-common/uptake-telemetry.js
+lib/firefox/modules/services-common/utils.js
+lib/firefox/modules/services-crypto/WeaveCrypto.js
+lib/firefox/modules/services-crypto/jwcrypto.jsm
+lib/firefox/modules/services-crypto/utils.js
+lib/firefox/modules/services-sync/SyncedTabs.jsm
+lib/firefox/modules/services-sync/UIState.jsm
+lib/firefox/modules/services-sync/addonsreconciler.js
+lib/firefox/modules/services-sync/addonutils.js
+lib/firefox/modules/services-sync/bookmark_repair.js
+lib/firefox/modules/services-sync/bookmark_validator.js
+lib/firefox/modules/services-sync/browserid_identity.js
+lib/firefox/modules/services-sync/collection_repair.js
+lib/firefox/modules/services-sync/collection_validator.js
+lib/firefox/modules/services-sync/constants.js
+lib/firefox/modules/services-sync/doctor.js
+lib/firefox/modules/services-sync/engines.js
+lib/firefox/modules/services-sync/engines/addons.js
+lib/firefox/modules/services-sync/engines/bookmarks.js
+lib/firefox/modules/services-sync/engines/clients.js
+lib/firefox/modules/services-sync/engines/extension-storage.js
+lib/firefox/modules/services-sync/engines/forms.js
+lib/firefox/modules/services-sync/engines/history.js
+lib/firefox/modules/services-sync/engines/passwords.js
+lib/firefox/modules/services-sync/engines/prefs.js
+lib/firefox/modules/services-sync/engines/tabs.js
+lib/firefox/modules/services-sync/keys.js
+lib/firefox/modules/services-sync/main.js
+lib/firefox/modules/services-sync/policies.js
+lib/firefox/modules/services-sync/record.js
+lib/firefox/modules/services-sync/resource.js
+lib/firefox/modules/services-sync/rest.js
+lib/firefox/modules/services-sync/service.js
+lib/firefox/modules/services-sync/stages/declined.js
+lib/firefox/modules/services-sync/stages/enginesync.js
+lib/firefox/modules/services-sync/status.js
+lib/firefox/modules/services-sync/telemetry.js
+lib/firefox/modules/services-sync/util.js
+lib/firefox/modules/sessionstore/PrivacyLevel.jsm
+lib/firefox/modules/sessionstore/SessionHistory.jsm
+lib/firefox/modules/sessionstore/Utils.jsm
+lib/firefox/modules/subprocess/subprocess_common.jsm
+lib/firefox/modules/subprocess/subprocess_shared.js
+lib/firefox/modules/subprocess/subprocess_shared_unix.js
+lib/firefox/modules/subprocess/subprocess_unix.jsm
+lib/firefox/modules/subprocess/subprocess_worker_common.js
+lib/firefox/modules/subprocess/subprocess_worker_unix.js
+lib/firefox/modules/third_party/jsesc/jsesc.js
+lib/firefox/modules/vtt.jsm
+lib/firefox/modules/workers/PromiseWorker.js
+lib/firefox/modules/workers/require.js
+lib/firefox/pingsender
+lib/firefox/platform.ini
+lib/firefox/plugin-container
+lib/firefox/removed-files
+lib/firefox/res/EditorOverride.css
+lib/firefox/res/contenteditable.css
+lib/firefox/res/designmode.css
+lib/firefox/res/dtd/htmlmathml-f.ent
+lib/firefox/res/fonts/mathfont.properties
+lib/firefox/res/fonts/mathfontSTIXGeneral.properties
+lib/firefox/res/fonts/mathfontUnicode.properties
+lib/firefox/res/grabber.gif
+lib/firefox/res/html/folder.png
+lib/firefox/res/language.properties
+lib/firefox/res/svg.css
+lib/firefox/res/table-add-column-after-active.gif
+lib/firefox/res/table-add-column-after-hover.gif
+lib/firefox/res/table-add-column-after.gif
+lib/firefox/res/table-add-column-before-active.gif
+lib/firefox/res/table-add-column-before-hover.gif
+lib/firefox/res/table-add-column-before.gif
+lib/firefox/res/table-add-row-after-active.gif
+lib/firefox/res/table-add-row-after-hover.gif
+lib/firefox/res/table-add-row-after.gif
+lib/firefox/res/table-add-row-before-active.gif
+lib/firefox/res/table-add-row-before-hover.gif
+lib/firefox/res/table-add-row-before.gif
+lib/firefox/res/table-remove-column-active.gif
+lib/firefox/res/table-remove-column-hover.gif
+lib/firefox/res/table-remove-column.gif
+lib/firefox/res/table-remove-row-active.gif
+lib/firefox/res/table-remove-row-hover.gif
+lib/firefox/res/table-remove-row.gif
+lib/firefox/run-mozilla.sh
+share/applications/firefox.desktop
+share/pixmaps/firefox.png
diff --git a/firefox/distinfo b/firefox/distinfo
new file mode 100644
index 0000000000..4af51d6deb
--- /dev/null
+++ b/firefox/distinfo
@@ -0,0 +1,85 @@
+$NetBSD: distinfo,v 1.296 2017/09/30 05:34:11 ryoon Exp $
+
+SHA1 (firefox-57.0b4.source.tar.xz) = 47596e59536f032425daa69c2af9059ccf242655
+RMD160 (firefox-57.0b4.source.tar.xz) = d2aedf3ec69d1d95b1b172bb73b8034a45749e76
+SHA512 (firefox-57.0b4.source.tar.xz) = 7147dab2a3f6ba1210998ccababe1ff2bb9a8bdd904c3126f1e6656c47cc33ac1a8dcf527a3b249dd20e1cfdd600c23413b376edcb875e94d0c0028e901def27
+Size (firefox-57.0b4.source.tar.xz) = 249695668 bytes
+SHA1 (patch-aa) = a2b7c767773f462452701237b2b06c9a4f01d1b5
+SHA1 (patch-build_gyp.mozbuild) = bb3a2f8c1cad0e9cfdaefa721c5992cba2e2bf50
+SHA1 (patch-build_moz.configure_init.configure) = 5ec8da6b5aad7682a88b010a99e19f5d4403e6db
+SHA1 (patch-build_moz.configure_keyfiles.configure) = 4d346c6298e08853681aac018f9289190bc1841a
+SHA1 (patch-build_moz.configure_memory.configure) = 9fd2e46440733aeca8dd81b7aa26e9a4029eb956
+SHA1 (patch-build_moz.configure_old.configure) = 2f452e717f0c9dc8224019b58e531e5e95cc7697
+SHA1 (patch-config_Makefile.in) = 2ad29cef869171aa29b6c3e4ba4a5c99311e0742
+SHA1 (patch-config_baseconfig.mk) = fbc3fd75bf5d794284e5703a9df227949e819136
+SHA1 (patch-config_external_moz.build) = 0a198c8578a8e8335be8d080f37c77f24c2d8b32
+SHA1 (patch-config_stl__wrappers_ios) = 00d723e2f2f252485350ede5833f0bb84c1235c1
+SHA1 (patch-config_stl__wrappers_ostream) = 7be7fe36704ffbdc070a113b46b4f391a598206b
+SHA1 (patch-config_system-headers) = 96bc5e296d1ec9db9d764edadc36605a8f3aebe9
+SHA1 (patch-config_system__wrappers_unwind.h) = b3bdac0710179b9c8f8eabd824216d0114504491
+SHA1 (patch-dom_base_moz.build) = 5200cbfcf7b781324dca4c55d01bc8559a56aa4c
+SHA1 (patch-dom_media_AudioStream.cpp) = 5ccc3b6a09e869a5a50998118157da7d6cc517ef
+SHA1 (patch-dom_media_AudioStream.h) = dec0f7e4ec7541b3e5b5574b6ebfae9a8957e165
+SHA1 (patch-dom_media_CubebUtils.cpp) = 3632cd0dd4b95f53f01050b8898b33fe198916b6
+SHA1 (patch-dom_media_moz.build) = 844dbb94463b8aab11649a5aa11142de0179d86c
+SHA1 (patch-dom_media_platforms_ffmpeg_ffvpx_FFVPXRuntimeLinker.cpp) = f2965930c50961b42576a983e93a08d67da50a2a
+SHA1 (patch-gfx_cairo_libpixman_src_pixman-arm-neon-asm.S) = 6e91ca436b73affe42ed4e683b3400beb28c4bc6
+SHA1 (patch-gfx_gl_GLContextProviderGLX.cpp) = 2cc997cab71a84c1f50a791693519a0626564426
+SHA1 (patch-gfx_graphite2_moz-gr-update.sh) = 09eb2fa66109d38a3aedc940fcaaee5f91e216ae
+SHA1 (patch-gfx_moz.build) = 0d669ac6dc1af17ea8ed7e84e4915947c2a6b1ca
+SHA1 (patch-gfx_skia_generate__mozbuild.py) = fba2f212f84e6cc20a4269e21ed654c348ae8fee
+SHA1 (patch-gfx_skia_moz.build) = 7363e76ac75e27cffe5ee1194741d444a625b871
+SHA1 (patch-gfx_thebes_gfxFont.cpp) = ae35bcde06e4ae0755c053999c76c10713ac0b27
+SHA1 (patch-gfx_thebes_moz.build) = 685c25bf0e4f70f121c032b413ade8904f029afc
+SHA1 (patch-gfx_ycbcr_moz.build) = 705c36b972ef1533330e4a180002cef1c22755bf
+SHA1 (patch-gfx_ycbcr_yuv__row__arm.S) = 8ae94d3c10fc8472e0d6287a841f1366d4342770
+SHA1 (patch-image_decoders_nsJPEGDecoder.cpp) = ed86c3fbb3aef753eec6f6a97940594aac5f3f2f
+SHA1 (patch-intl_hyphenation_glue_hnjalloc.h) = abe01bea5872a57f3d00bbbf89f958621f08a655
+SHA1 (patch-intl_unicharutil_util_moz.build) = fffed7139faa3f15d6ab3be9b673cb0b14a30ce9
+SHA1 (patch-ipc_chromium_src_base_atomicops.h) = 24b63a6e51d9ab27f2788ee02f2ffa7e1c36f29a
+SHA1 (patch-ipc_chromium_src_base_lock__impl__posix.cc) = 16e37fe54ba1d8d233f6b04dbd06e248305d7f6e
+SHA1 (patch-ipc_chromium_src_base_message__pump__libevent.cc) = 99b9f3f9dd88f1c8008d2fb6058450695394f5cf
+SHA1 (patch-ipc_chromium_src_base_platform__thread.h) = 3ed4f482a8ccbd5db216c2623bf6dd93b0bbc1c9
+SHA1 (patch-ipc_chromium_src_base_platform__thread__posix.cc) = 937a843a7acf3085056e309ea5ab047bd9b95088
+SHA1 (patch-ipc_chromium_src_base_process__util.h) = 4b24c3467866a601d68bb83f44e5fd38fb27188d
+SHA1 (patch-ipc_glue_CrossProcessSemaphore.h) = 778a569887d8ad082abc2fa2fe89a0a943e84d64
+SHA1 (patch-ipc_glue_CrossProcessSemaphore__posix.cpp) = 3052338871447cedaeafe8369afe82233183c884
+SHA1 (patch-ipc_glue_GeckoChildProcessHost.cpp) = 260c29bacd8bf265951b7a412f850bf2b292c836
+SHA1 (patch-js_src_build_moz.build) = 4597a427262d0eb6ce8d14c0f557bfbe3f053e61
+SHA1 (patch-js_src_jit_arm_Architecture-arm.cpp) = f0b554c169643b8447b4f29168d61ea257b18782
+SHA1 (patch-js_xpconnect_src_XPCConvert.cpp) = 915777e9bb5366be41866cdb6ea0ad2b1c006dde
+SHA1 (patch-js_xpconnect_src_xpcprivate.h) = 97a221c76593be712f670aa409f2f1ad5dc20628
+SHA1 (patch-media_libcubeb_gtest_moz.build) = ebb4be6e6bca4a0ed6858516ec9fdb7828bbe2e1
+SHA1 (patch-media_libcubeb_src_cubeb.c) = 1b1b8d57eb710cad13518ded79a0ddee2681881b
+SHA1 (patch-media_libcubeb_src_cubeb__alsa.c) = 1b2890eea9d1b69ace8e5d6806e49ce4eb011236
+SHA1 (patch-media_libcubeb_src_cubeb__oss.c) = 88cdfb9b9aa8c2607ca79bfa7fce4353e65638f7
+SHA1 (patch-media_libcubeb_src_moz.build) = 5fca6701cc890120a04483f52c25242ee7b1c051
+SHA1 (patch-media_libcubeb_update.sh) = e8babe57ea7f0f32658b391e9c4f6310e57fc38c
+SHA1 (patch-media_libsoundtouch_src_cpu__detect__x86.cpp) = db61737afa7773e8cbd82976de3a02c917174696
+SHA1 (patch-media_libsoundtouch_src_soundtouch__perms.h) = 2d08a3b4176c155c57b458cb78043318b68d8fe2
+SHA1 (patch-media_libtheora_lib_arm_armcpu.c) = 3ef05c05799d56b3c160634327d90dd33764c3df
+SHA1 (patch-media_libtheora_moz.build) = cbcb61331fea274b720a4b5c51db1f763fc10d81
+SHA1 (patch-media_libtremor_moz.build) = 87f66296be4db8487eae95b2779a9c02463555cf
+SHA1 (patch-media_libvorbis_moz.build) = cad67e49169ddab075fbfae2e6f0f950c1eccaf0
+SHA1 (patch-media_libyuv_libyuv_source_mjpeg__decoder.cc) = 8a264c439fa4749cd7c5acf96e1ae3f9bae0a886
+SHA1 (patch-media_openmax__dl_dl_api_armCOMM__s.h) = 40b3fa8aaec77d3bfec810f0bc4e76eae449d7c7
+SHA1 (patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc) = 0141dd1372c13ea1fce6e2f5ffb65e0cb0f3a13e
+SHA1 (patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc) = a69bc7b7096b410582e725f9dbec57fee90d6686
+SHA1 (patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi) = 772a858fb74d404a6b86e5634bc3eec586a1b06a
+SHA1 (patch-modules_pdfium_update.sh) = fb8e80310d8b6784140c8f6c4186427f7090b4db
+SHA1 (patch-mozglue_build_arm.cpp) = f41ace63b3f1d2a8ccaffc98c3c64d1e22af5249
+SHA1 (patch-mozglue_build_arm.h) = 5e272f4e19b9681d43a63c45d78b0e44a392c7dc
+SHA1 (patch-netwerk_dns_moz.build) = d4ad35ee7152ca206156403954cbd247d1252ab0
+SHA1 (patch-servo_components_style_build__gecko.rs) = fca2260a70b496fc010f165ff4d68788b7e28632
+SHA1 (patch-toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h) = 5ffb0782bbbff2fd17ad71e98b349b4ec3dc6c8c
+SHA1 (patch-toolkit_components_terminator_nsTerminator.cpp) = 5b6d2e5c9f685d32894898d3ef3aec09a1a1e5ce
+SHA1 (patch-toolkit_crashreporter_google-breakpad_src_third_party_curl_curlbuild.h) = 0730c0c5d8e0865aa8a2f311b27559a3f6793a52
+SHA1 (patch-toolkit_library_moz.build) = 34e757ad08ebaee1cbc69993ec0f6774d41a14a2
+SHA1 (patch-toolkit_moz.configure) = 3dd9df2ac5c3f942b7f2616c2fae6bd36d3437e7
+SHA1 (patch-toolkit_xre_glxtest.cpp) = cf048491778610454b914400e53072afedd96e7b
+SHA1 (patch-toolkit_xre_nsEmbedFunctions.cpp) = 4a6ae13adfdfc63d50c1a53ee71aad1ee82e6131
+SHA1 (patch-xpcom_base_nscore.h) = d7c96eda884d7f370442749c43caba50da61bbe4
+SHA1 (patch-xpcom_build_XPCOMInit.cpp) = 1e7cc3a7fd9515b10307fafa2b01ed689320bd54
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_Makefile.in) = 950874fbc255c93a828bddd84ffe8478094214cc
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_moz.build) = 528f7254966d883c18e33744e28780a93055d560
+SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp) = 0792c2c626d906e71c5183994cb32bf8cdb3e239
diff --git a/firefox/files/desktop.in b/firefox/files/desktop.in
new file mode 100644
index 0000000000..d72090e1aa
--- /dev/null
+++ b/firefox/files/desktop.in
@@ -0,0 +1,191 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=@MOZILLA_NAME@ Web Browser
+Name[am]=
+Name[ar]=
+Name[az]=@MOZILLA_NAME@ Veb Səyyahı
+Name[be]=
+Name[bg]=Интернет браузър @MOZILLA_NAME@
+Name[bn]=
+Name[bs]=@MOZILLA_NAME@ web preglednik
+Name[ca]=Navegador web @MOZILLA_NAME@
+Name[cs]=Prohlížeč WWW @MOZILLA_NAME@
+Name[cy]=Y Porwr Gwe @MOZILLA_NAME@
+Name[da]=@MOZILLA_NAME@ - internetsurfning
+Name[de]=@MOZILLA_NAME@ Webbrowser
+Name[el]=Περιηγητής Διαδικτύου @MOZILLA_NAME@
+Name[en_CA]=@MOZILLA_NAME@ Web Browser
+Name[en_GB]=@MOZILLA_NAME@ Web Browser
+Name[es]=Navegador Web @MOZILLA_NAME@
+Name[et]=@MOZILLA_NAME@ veebibrauser
+Name[eu]=@MOZILLA_NAME@ web arakatzailea
+Name[fi]=@MOZILLA_NAME@, WWW-selain
+Name[fr]=Navigateur Web @MOZILLA_NAME@
+Name[ga]=Brabhsálaí Lín @MOZILLA_NAME@
+Name[gu]=એપીફની વૅબ બ્રાઉઝર
+Name[he]=דפדפן @MOZILLA_NAME@
+Name[hi]=
+Name[hr]=@MOZILLA_NAME@ Web preglednik
+Name[hu]=@MOZILLA_NAME@ webböngésző
+Name[id]=Web Browser @MOZILLA_NAME@
+Name[it]=Browser web @MOZILLA_NAME@
+Name[ja]=@MOZILLA_NAME@ ウェブ・ブラウザ
+Name[ko]=@MOZILLA_NAME@ 웹 브라우저
+Name[li]=@MOZILLA_NAME@ Web Browser
+Name[lt]=@MOZILLA_NAME@ web naršyklė
+Name[mk]=@MOZILLA_NAME@ веб прелистувач
+Name[ml]=എപ്പിഫാനി വെബ്ബ് ബ്രൌസ‌ര്
+Name[mn]=@MOZILLA_NAME@ веб хөтөч
+Name[ms]=Pelungsur Web @MOZILLA_NAME@
+Name[nb]=@MOZILLA_NAME@ nettleser
+Name[nl]=@MOZILLA_NAME@ Webbrowser
+Name[nn]=@MOZILLA_NAME@ nettlesar
+Name[no]=@MOZILLA_NAME@ nettleser
+Name[pa]=ਏਪੀਫਾਨੀ ਵੈੱਬ ਬਰਾਊਜ਼ਰ
+Name[pl]=Przeglądarka WWW @MOZILLA_NAME@
+Name[pt]=Navegador Web @MOZILLA_NAME@
+Name[pt_BR]=Navegador Web @MOZILLA_NAME@
+Name[ro]=Navigatorul @MOZILLA_NAME@
+Name[ru]=Веб-браузер @MOZILLA_NAME@
+Name[sk]=
+Name[sl]=Spletni brskalnik @MOZILLA_NAME@
+Name[sq]=@MOZILLA_NAME@ - Shfletuesi Web
+Name[sr]=
+Name[sr@Latn]=Veb čitač Spoznaja
+Name[sv]=Webbläsaren @MOZILLA_NAME@
+Name[ta]=எபிபனி வலை உலாவி
+Name[tk]=@MOZILLA_NAME@ Web Ahtarçisi
+Name[tr]=@MOZILLA_NAME@ Web Tarayıcı
+Name[uk]=Переглядач web @MOZILLA_NAME@
+Name[vi]=Trình Duyệt Web @MOZILLA_NAME@
+Name[wa]=Betchteu waibe epiphany
+Name[zh_CN]=@MOZILLA_NAME@ Web 浏览器
+Name[zh_TW]=@MOZILLA_NAME@ 網頁瀏覽器
+GenericName=Web Browser
+GenericName[ar]=متصفّح الانترنت
+GenericName[az]=Veb Səyyahı
+GenericName[be]=Вандроўнік па павуціньню
+GenericName[bg]=Браузър
+GenericName[bn]=ওয়েব ব্রাউজার
+GenericName[bs]=Web preglednik
+GenericName[ca]=Navegador web
+GenericName[cs]=Prohlížeč WWW
+GenericName[cy]=Porwr Gwe
+GenericName[da]=Internetsurfning
+GenericName[de]=Webbrowser
+GenericName[el]=Περιηγητής Ιστοσελίδων
+GenericName[en_CA]=Web Browser
+GenericName[en_GB]=Web Browser
+GenericName[es]=Navegador web
+GenericName[et]=Veebilehitseja
+GenericName[eu]=Web arakatzailea
+GenericName[fi]=WWW-selain
+GenericName[fr]=Navigateur Web @MOZILLA_NAME@
+GenericName[ga]=Brabhsálaí Lín
+GenericName[gu]=વેબ બ્રાઉઝર
+GenericName[he]=דפדפן אינטרנט
+GenericName[hi]=वेब ब्राउज़र
+GenericName[hr]=Web preglednik
+GenericName[hu]=Webböngésző
+GenericName[id]=Browser Web
+GenericName[it]=Browser web
+GenericName[ja]=GNOME ウェブ・ブラウザ
+GenericName[ko]=웹 브라우저
+GenericName[li]=Wèb Browser
+GenericName[lt]=Web naršyklė
+GenericName[mk]=Веб прелистувач
+GenericName[mn]=Веб хөтөч
+GenericName[ms]=Pelungsur Web
+GenericName[nb]=Nettleser
+GenericName[nl]=Web-browser
+GenericName[nn]=Nettlesar
+GenericName[no]=Nettleser
+GenericName[pa]=ਵੈਬ ਬਰਾਊਜ਼
+GenericName[pl]=Przeglądarka WWW
+GenericName[pt]=Navegador Web
+GenericName[pt_BR]=Navegador Web
+GenericName[ro]=Navigator Internet
+GenericName[ru]=Веб-браузер
+GenericName[sk]=WWW prehliadač
+GenericName[sl]=Spletni brskalnik
+GenericName[sq]=Shfletuesi Web
+GenericName[sr]=Веб читач
+GenericName[sr@Latn]=Veb čitač
+GenericName[sv]=Webbläsare
+GenericName[ta]=வலை உலாவி
+GenericName[th]=เว็บบราวเซอร์
+GenericName[tk]=Web Ahtarçysy
+GenericName[tr]=Web Tarayıcı
+GenericName[uk]=Переглядач web-сторінок
+GenericName[vi]=Trình duyệt Web
+GenericName[wa]=Betchteu waibe
+GenericName[zh_CN]=Web 浏览器
+GenericName[zh_TW]=網頁瀏覽器
+Comment=Browse the web
+Comment[ar]=تصفح الانترنت
+Comment[az]=Vebi gəzin
+Comment[be]=Вандраваць па павуціньню
+Comment[bg]=Сърфиране в интернет
+Comment[bn]=ওয়েব ব্রাউজ করুন
+Comment[bs]=Pregledaj na internetu
+Comment[ca]=Navegueu per la web
+Comment[cs]=Prohlížet WWW
+Comment[cy]=Pori'r we
+Comment[da]=Surf på internettet
+Comment[de]=Im Web surfen
+Comment[el]=Περιήγηση στον παγκόσμιο ιστό
+Comment[en_CA]=Browse the web
+Comment[en_GB]=Browse the web
+Comment[es]=Navegar por la web
+Comment[et]=Sirvi veebi
+Comment[eu]=Arakatu web-a
+Comment[fi]=Selaa WWW:tä
+Comment[fr]=Naviguer sur Internet
+Comment[ga]=Brabhsáil an Líon
+Comment[gu]=વેબમાં શોધો
+Comment[he]=גלוש ברשת
+Comment[hi]=वेब ब्राउज़ करें
+Comment[hr]=Pregledaj Web
+Comment[hu]=A világháló böngészése
+Comment[id]=Jelajah web
+Comment[it]=Esplora il web
+Comment[ja]=ウェブを閲覧します
+Comment[ko]=웹을 돌아 다닙니다
+Comment[li]=Blajere op internet
+Comment[lt]=Naršyti internete
+Comment[mk]=Прелистувајте на веб
+Comment[ml]=വലക്കെട്ട് തിരയുക
+Comment[mn]=Веб броузе хийх
+Comment[ms]=Layari web
+Comment[nb]=Surf på nettet
+Comment[nl]=Websurfen
+Comment[nn]=Surf på nettet
+Comment[no]=Surf på nettet
+Comment[pa]=ਵੈਬ ਬਰਾਊਜ਼
+Comment[pl]=Przeglądanie stron WWW
+Comment[pt]=Navegar na web
+Comment[pt_BR]=Navegar na web
+Comment[ro]=Navigare Internet
+Comment[ru]=Веб-браузер
+Comment[sk]=Prehliadať internet
+Comment[sl]=Brskaj po spletu
+Comment[sq]=Eksploro web-in
+Comment[sr]=Прегледај веб
+Comment[sr@Latn]=Pregledaj veb
+Comment[sv]=Surfa på nätet
+Comment[ta]=வலையில் உலாவு
+Comment[th]=ใช้งานเว็บบราวเซอร์ @MOZILLA_NAME@
+Comment[tk]=Webi Ahtar
+Comment[tr]=Web'e Gözat
+Comment[uk]=Програма перегляду web-сторінок
+Comment[vi]=Duyệt web
+Comment[wa]=Naivyî avå les waibes
+Comment[zh_CN]=浏览 Web
+Comment[zh_TW]=瀏覽網頁
+Exec=@MOZILLA@ %u
+Icon=@FIREFOX_ICON@
+StartupNotify=false
+Terminal=false
+Type=Application
+Categories=Application;Network;
+MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;
diff --git a/firefox/hacks.mk b/firefox/hacks.mk
new file mode 100644
index 0000000000..700a3d5a9e
--- /dev/null
+++ b/firefox/hacks.mk
@@ -0,0 +1,13 @@
+# $NetBSD: hacks.mk,v 1.5 2016/06/16 12:08:21 ryoon Exp $
+
+.if !defined(FIREFOX_HACKS_MK)
+FIREFOX_HACKS_MK=	defined
+
+.include "../../mk/bsd.fast.prefs.mk"
+.include "../../mk/compiler.mk"
+
+.if !empty(PKGSRC_COMPILER:Mclang)
+CXXFLAGS+=	-Wno-return-type-c-linkage
+.endif
+
+.endif	# FIREFOX_HACKS_MK
diff --git a/firefox/mozilla-common.mk b/firefox/mozilla-common.mk
new file mode 100644
index 0000000000..fb1dc61a4f
--- /dev/null
+++ b/firefox/mozilla-common.mk
@@ -0,0 +1,202 @@
+# $NetBSD: mozilla-common.mk,v 1.98 2017/09/30 05:34:11 ryoon Exp $
+#
+# common Makefile fragment for mozilla packages based on gecko 2.0.
+#
+# used by www/firefox/Makefile
+# used by www/seamonkey/Makefile
+
+.include "../../mk/bsd.prefs.mk"
+
+.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
+BUILD_DEPENDS+=		yasm>=1.1:../../devel/yasm
+
+# Enable Google widevine CDM. This requires external libwidevinecdm.so.
+#CONFIGURE_ARGS+=	--enable-eme=widevine
+.endif
+
+HAS_CONFIGURE=		yes
+CONFIGURE_ARGS+=	--prefix=${PREFIX}
+USE_TOOLS+=		pkg-config perl gmake autoconf213 unzip zip
+USE_LANGUAGES+=		c99 c++
+UNLIMIT_RESOURCES+=	datasize
+
+CONFIGURE_ENV+=		BINDGEN_CFLAGS="-isystem${PREFIX}/include/nspr \
+			-isystem${X11BASE}/include/pixman-1"
+
+test:
+	cd ${WRKSRC}/${OBJDIR}/dist/bin &&	\
+	     ./run-mozilla.sh ${WRKSRC}/mach check-spidermonkey
+
+# tar(1) of OpenBSD 5.5 has no --exclude command line option.
+.if ${OPSYS} == "OpenBSD"
+TOOLS_PLATFORM.tar=	${TOOLS_PATH.bsdtar}
+USE_TOOLS+=		bsdtar
+.endif
+GCC_REQD+=		4.9
+.if ${MACHINE_ARCH} == "i386"
+# Fix for PR pkg/48152.
+CXXFLAGS+=		-march=i586
+# This is required for SSE2 code under i386.
+CXXFLAGS+=		-mstackrealign
+.endif
+
+CHECK_PORTABILITY_SKIP+=${MOZILLA_DIR}security/nss/tests/libpkix/libpkix.sh
+CHECK_PORTABILITY_SKIP+=${MOZILLA_DIR}security/nss/tests/multinit/multinit.sh
+CHECK_PORTABILITY_SKIP+=${MOZILLA_DIR}js/src/tests/update-test262.sh
+CHECK_PORTABILITY_SKIP+=${MOZILLA_DIR}intl/icu/source/configure
+CHECK_PORTABILITY_SKIP+=${MOZILLA_DIR}browser/components/loop/run-all-loop-tests.sh
+CHECK_PORTABILITY_SKIP+=${MOZILLA_DIR}browser/extensions/loop/run-all-loop-tests.sh
+
+CONFIGURE_ARGS+=	--enable-pie
+CONFIGURE_ARGS+=	--disable-tests
+CONFIGURE_ARGS+=	--with-pthreads
+CONFIGURE_ARGS+=	--enable-system-cairo
+CONFIGURE_ARGS+=	--enable-system-pixman
+CONFIGURE_ARGS+=	--with-system-libvpx
+# textproc/hunspell 1.3 is too old
+#CONFIGURE_ARGS+=	--enable-system-hunspell
+CONFIGURE_ARGS+=	--enable-system-ffi
+CONFIGURE_ARGS+=	--with-system-icu
+CONFIGURE_ARGS+=	--with-system-nss
+CONFIGURE_ARGS+=	--with-system-nspr
+CONFIGURE_ARGS+=	--with-system-jpeg
+CONFIGURE_ARGS+=	--with-system-zlib
+CONFIGURE_ARGS+=	--with-system-bz2
+CONFIGURE_ARGS+=	--with-system-libevent=${BUILDLINK_PREFIX.libevent}
+CONFIGURE_ARGS+=	--disable-crashreporter
+CONFIGURE_ARGS+=	--disable-necko-wifi
+CONFIGURE_ARGS+=	--enable-chrome-format=flat
+CONFIGURE_ARGS+=	--disable-libjpeg-turbo
+
+CONFIGURE_ARGS+=	--disable-elf-hack
+CONFIGURE_ARGS+=	--disable-gconf
+#CONFIGURE_ARGS+=	--enable-readline
+CONFIGURE_ARGS+=	--disable-icf
+CONFIGURE_ARGS+=	--disable-updater
+
+SUBST_CLASSES+=			fix-paths
+SUBST_STAGE.fix-paths=		pre-configure
+SUBST_MESSAGE.fix-paths=	Fixing absolute paths.
+SUBST_FILES.fix-paths+=		${MOZILLA_DIR}xpcom/io/nsAppFileLocationProvider.cpp
+SUBST_SED.fix-paths+=		-e 's,/usr/lib/mozilla/plugins,${PREFIX}/lib/netscape/plugins,g'
+
+CONFIG_GUESS_OVERRIDE+=		${MOZILLA_DIR}build/autoconf/config.guess
+CONFIG_GUESS_OVERRIDE+=		${MOZILLA_DIR}js/src/build/autoconf/config.guess
+CONFIG_GUESS_OVERRIDE+=		${MOZILLA_DIR}nsprpub/build/autoconf/config.guess
+CONFIG_GUESS_OVERRIDE+=		${MOZILLA_DIR}/js/ctypes/libffi/config.guess
+CONFIG_SUB_OVERRIDE+=		${MOZILLA_DIR}build/autoconf/config.sub
+CONFIG_SUB_OVERRIDE+=		${MOZILLA_DIR}js/src/build/autoconf/config.sub
+CONFIG_SUB_OVERRIDE+=		${MOZILLA_DIR}nsprpub/build/autoconf/config.sub
+CONFIG_SUB_OVERRIDE+=		${MOZILLA_DIR}/js/ctypes/libffi/config.sub
+
+CONFIGURE_ENV+=		CPP=${CPP}
+
+SUBST_CLASSES+=		python
+SUBST_STAGE.python=	pre-configure
+SUBST_MESSAGE.python=	Fixing path to python.
+SUBST_FILES.python+=	media/webrtc/trunk/build/common.gypi
+SUBST_SED.python+=	-e 's,<!(python,<!(${PYTHONBIN},'
+
+# Build outside ${WRKSRC}
+# Try to avoid conflict with config/makefiles/xpidl/Makefile.in
+OBJDIR=			../build
+CONFIGURE_DIRS=		${OBJDIR}
+CONFIGURE_SCRIPT=	${WRKSRC}/configure
+
+PLIST_VARS+=	sps vorbis tremor glskia throwwrapper mozglue avx86
+
+.include "../../mk/endian.mk"
+.if ${MACHINE_ENDIAN} == "little"
+PLIST.glskia=	yes
+.endif
+
+.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
+PLIST.avx86=	yes	# see media/libav/README_MOZILLA: only used on x86
+.endif
+
+.if ${MACHINE_ARCH} != "sparc64"
+# For some reasons the configure test for GCC bug 26905 still triggers on
+# sparc64, which makes mozilla skip the installation of a few wrapper headers.
+# Other archs end up with one additional file in the SDK headers
+PLIST.throwwrapper=	yes
+.endif
+
+.if !empty(MACHINE_PLATFORM:S/i386/x86/:MLinux-*-x86*)
+PLIST.sps=	yes
+.endif
+
+.if !empty(MACHINE_PLATFORM:MLinux-*-arm*)
+PLIST.tremor=	yes
+.else
+PLIST.vorbis=	yes
+.endif
+
+# See ${WRKSRC}/mozglue/build/moz.build: libmozglue is built and
+# installed as a shared library on these platforms.
+.if ${OPSYS} == "Cygwin" || ${OPSYS} == "Darwin" # or Android
+PLIST.mozglue=	yes
+.endif
+
+# See ${WRKSRC}/security/sandbox/mac/Sandbox.mm: On Darwin, sandboxing
+# support is only available when the toolkit is cairo-cocoa.
+CONFIGURE_ARGS.Darwin+=	--disable-sandbox
+
+# See ${WRKSRC}/configure.in: It tries to use MacOS X 10.6 SDK by
+# default, which is not always possible.
+.if !empty(MACHINE_PLATFORM:MDarwin-8.*-*)
+CONFIGURE_ARGS+=	--enable-macos-target=10.4
+.elif !empty(MACHINE_PLATFORM:MDarwin-9.*-*)
+CONFIGURE_ARGS+=	--enable-macos-target=10.5
+.endif
+
+# Makefiles sometimes call "rm -f" without more arguments. Kludge around ...
+.PHONY: create-rm-wrapper
+pre-configure: create-rm-wrapper
+create-rm-wrapper:
+	printf '#!/bin/sh\n[ "$$*" = "-f" ] && exit 0\nexec /bin/rm $$@\n' > \
+	  ${WRAPPER_DIR}/bin/rm
+	chmod +x ${WRAPPER_DIR}/bin/rm
+
+# The configure test for __thread succeeds, but later we end up with:
+# dist/bin/libxul.so: undefined reference to `__tls_get_addr'
+CONFIGURE_ENV.NetBSD+=	ac_cv_thread_keyword=no
+
+.if ${OPSYS} == "SunOS"
+# native libbz2.so hides BZ2_crc32Table
+PREFER.bzip2?=	pkgsrc
+.endif
+
+.if ${OPSYS} == "OpenBSD"
+PLIST_SUBST+=	DLL_SUFFIX=".so.1.0"
+.elif ${OPSYS} == "Darwin"
+PLIST_SUBST+=	DLL_SUFFIX=".dylib"
+.else
+PLIST_SUBST+=	DLL_SUFFIX=".so"
+.endif
+
+.include "../../archivers/bzip2/buildlink3.mk"
+BUILDLINK_API_DEPENDS.libevent+=	libevent>=1.1
+.include "../../devel/libevent/buildlink3.mk"
+.include "../../devel/libffi/buildlink3.mk"
+BUILDLINK_API_DEPENDS.nspr+=	nspr>=4.14
+.include "../../devel/nspr/buildlink3.mk"
+.include "../../textproc/icu/buildlink3.mk"
+BUILDLINK_API_DEPENDS.nss+=	nss>=3.29.5
+.include "../../devel/nss/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../mk/jpeg.buildlink3.mk"
+.include "../../graphics/MesaLib/buildlink3.mk"
+BUILDLINK_API_DEPENDS.cairo+=	cairo>=1.10.2nb4
+.include "../../graphics/cairo/buildlink3.mk"
+.include "../../lang/clang/buildlink3.mk"
+BUILDLINK_API_DEPENDS.rust+=	rust>=1.20.0
+.include "../../lang/rust/buildlink3.mk"
+BUILDLINK_API_DEPENDS.libvpx+=	libvpx>=1.3.0
+.include "../../multimedia/libvpx/buildlink3.mk"
+.include "../../net/libIDL/buildlink3.mk"
+# textproc/hunspell 1.3 is too old
+#.include "../../textproc/hunspell/buildlink3.mk"
+.include "../../multimedia/ffmpeg3/buildlink3.mk"
+.include "../../x11/libXt/buildlink3.mk"
+BUILDLINK_API_DEPENDS.pixman+= pixman>=0.25.2
+.include "../../x11/pixman/buildlink3.mk"
diff --git a/firefox/options.mk b/firefox/options.mk
new file mode 100644
index 0000000000..756bc7abd3
--- /dev/null
+++ b/firefox/options.mk
@@ -0,0 +1,105 @@
+# $NetBSD: options.mk,v 1.42 2017/08/10 14:46:15 ryoon Exp $
+
+PKG_OPTIONS_VAR=	PKG_OPTIONS.firefox
+
+PKG_SUPPORTED_OPTIONS=	official-mozilla-branding
+PKG_SUPPORTED_OPTIONS+=	debug debug-info mozilla-jemalloc webrtc
+PKG_SUPPORTED_OPTIONS+=	alsa oss pulseaudio dbus
+PLIST_VARS+=		gnome jemalloc debug
+
+.if ${OPSYS} == "Linux"
+PKG_SUGGESTED_OPTIONS+=	pulseaudio mozilla-jemalloc dbus
+.else
+PKG_SUGGESTED_OPTIONS+=	oss dbus
+.endif
+
+# On NetBSD/amd64 6.99.21 libxul.so is invalid when --enable-webrtc is set.
+PKG_SUGGESTED_OPTIONS.Linux+=	webrtc
+
+.include "../../mk/bsd.options.mk"
+
+CONFIGURE_ARGS+=	--enable-default-toolkit=cairo-gtk3
+.include "../../x11/gtk2/buildlink3.mk"
+.include "../../x11/gtk3/buildlink3.mk"
+
+.if !empty(PKG_OPTIONS:Malsa)
+CONFIGURE_ARGS+=	--enable-alsa
+.include "../../audio/alsa-lib/buildlink3.mk"
+.else
+CONFIGURE_ARGS+=	--disable-alsa
+.endif
+
+.if !empty(PKG_OPTIONS:Moss)
+CONFIGURE_ARGS+=	--with-oss
+.include "../../mk/oss.buildlink3.mk"
+.endif
+
+.if !empty(PKG_OPTIONS:Mmozilla-jemalloc)
+PLIST.jemalloc=		yes
+CONFIGURE_ARGS+=	--enable-jemalloc
+CONFIGURE_ARGS+=	--enable-replace-malloc
+.else
+CONFIGURE_ARGS+=	--disable-jemalloc
+.endif
+
+.include "../../mk/compiler.mk"
+.if !empty(PKGSRC_COMPILER:Mgcc)
+.if ${CC_VERSION:S/gcc-//:S/.//g} >= 480
+# Modern gcc does not run any "tracking" passes when compiling with -O0,
+# which makes the generated debug info mostly useless. So explicitly
+# request them.
+O0TRACKING=-fvar-tracking-assignments -fvar-tracking
+.endif
+.endif
+
+.if !empty(PKG_OPTIONS:Mdebug)
+CONFIGURE_ARGS+=	--enable-debug="-g -O0 ${O0TRACKING}"
+CONFIGURE_ARGS+=	--disable-optimize
+CONFIGURE_ARGS+=	--enable-debug-js-modules
+CONFIGURE_ARGS+=	--disable-install-strip
+PLIST.debug=		yes
+.else
+.if !empty(PKG_OPTIONS:Mdebug-info)
+CONFIGURE_ARGS+=	--enable-debug-symbols
+CONFIGURE_ARGS+=	--enable-optimize=-O0
+.else
+CONFIGURE_ARGS+=	--disable-debug-symbols
+.endif
+CONFIGURE_ARGS+=	--disable-debug
+CONFIGURE_ARGS+=	--enable-optimize=-O2
+CONFIGURE_ARGS+=	--enable-install-strip
+.endif
+
+.if !empty(PKG_OPTIONS:Mpulseaudio)
+.include "../../audio/pulseaudio/buildlink3.mk"
+CONFIGURE_ARGS+=	--enable-pulseaudio
+.else
+CONFIGURE_ARGS+=	--disable-pulseaudio
+.endif
+
+.if !empty(PKG_OPTIONS:Mdbus)
+.include "../../sysutils/dbus-glib/buildlink3.mk"
+CONFIGURE_ARGS+=	--enable-dbus
+.else
+CONFIGURE_ARGS+=	--disable-dbus
+.endif
+
+PLIST_VARS+=		branding nobranding
+.if !empty(PKG_OPTIONS:Mofficial-mozilla-branding)
+CONFIGURE_ARGS+=	--enable-official-branding
+LICENSE=		mozilla-trademark-license
+RESTRICTED=		Trademark holder prohibits distribution of modified versions.
+NO_BIN_ON_CDROM=	${RESTRICTED}
+NO_BIN_ON_FTP=		${RESTRICTED}
+PLIST.branding=		yes
+.else
+PLIST.nobranding=	yes
+.endif
+
+PLIST_VARS+=		webrtc
+.if !empty(PKG_OPTIONS:Mwebrtc)
+.include "../../graphics/libv4l/buildlink3.mk"
+CONFIGURE_ARGS+=	--enable-webrtc
+.else
+CONFIGURE_ARGS+=	--disable-webrtc
+.endif
diff --git a/firefox/patches/patch-aa b/firefox/patches/patch-aa
new file mode 100644
index 0000000000..1eb2bae0f3
--- /dev/null
+++ b/firefox/patches/patch-aa
@@ -0,0 +1,248 @@
+$NetBSD: patch-aa,v 1.54 2017/09/30 05:34:11 ryoon Exp $
+
+* Disable libjpeg-turbo check
+* Add system libraries option
+* Add OSS audio support
+
+--- old-configure.in.orig	2017-09-14 20:15:53.000000000 +0000
++++ old-configure.in
+@@ -1963,11 +1963,7 @@ if test "$MOZ_SYSTEM_JPEG" = 1; then
+                      #include <jpeglib.h> ],
+                    [ #if JPEG_LIB_VERSION < $MOZJPEG
+                      #error "Insufficient JPEG library version ($MOZJPEG required)."
+-                     #endif
+-                     #ifndef JCS_EXTENSIONS
+-                     #error "libjpeg-turbo JCS_EXTENSIONS required"
+-                     #endif
+-                     ],
++                     #endif ],
+                    MOZ_SYSTEM_JPEG=1,
+                    AC_MSG_ERROR([Insufficient JPEG library version for --with-system-jpeg]))
+ fi
+@@ -2606,6 +2602,9 @@ if test -n "$MOZ_WEBRTC"; then
+     AC_DEFINE(MOZ_WEBRTC_ASSERT_ALWAYS)
+     MOZ_RAW=1
+ 
++    dnl with libv4l2 we can support more cameras
++    PKG_CHECK_MODULES(MOZ_LIBV4L2, libv4l2)
++
+ dnl enable once Signaling lands
+     MOZ_WEBRTC_SIGNALING=1
+     AC_DEFINE(MOZ_WEBRTC_SIGNALING)
+@@ -2648,7 +2647,7 @@ dnl Use integers over floats for audio o
+ dnl (regarless of the CPU architecture, because audio
+ dnl backends for those platforms don't support floats. We also
+ dnl use integers on ARM with other OS, because it's more efficient.
+-if test "$OS_TARGET" = "Android" -o "$CPU_ARCH" = "arm"; then
++if test -n "$MOZ_INTEGER_SAMPLES"; then
+     MOZ_SAMPLE_TYPE_S16=1
+     AC_DEFINE(MOZ_SAMPLE_TYPE_S16)
+     AC_SUBST(MOZ_SAMPLE_TYPE_S16)
+@@ -2686,6 +2685,111 @@ if test -n "$MOZ_APPLEMEDIA"; then
+ fi
+ fi # COMPILE_ENVIRONMENT
+ 
++dnl ========================================================
++dnl Check for libogg
++dnl ========================================================
++
++MOZ_ARG_WITH_BOOL(system-ogg,
++[  --with-system-ogg       Use system libogg (located with pkgconfig)],
++MOZ_SYSTEM_OGG=1,
++MOZ_SYSTEM_OGG=)
++
++if test -n "$MOZ_SYSTEM_OGG"; then
++    PKG_CHECK_MODULES(MOZ_OGG, ogg >= 1.3.0)
++
++    _SAVE_LIBS=$LIBS
++    LIBS="$LIBS $MOZ_OGG_LIBS"
++    AC_CHECK_FUNC(ogg_set_mem_functions, [],
++      [AC_DEFINE(MOZ_OGG_NO_MEM_REPORTING)])
++    LIBS=$_SAVE_LIBS
++fi
++
++AC_SUBST(MOZ_SYSTEM_OGG)
++
++dnl ========================================================
++dnl Check for libvorbis
++dnl ========================================================
++
++MOZ_ARG_WITH_BOOL(system-vorbis,
++[  --with-system-vorbis    Use system libvorbis (located with pkgconfig)],
++MOZ_SYSTEM_VORBIS=1,
++MOZ_SYSTEM_VORBIS=)
++
++if test -n "$MOZ_SYSTEM_VORBIS"; then
++    PKG_CHECK_MODULES(MOZ_VORBIS, vorbis vorbisenc >= 1.3.5)
++fi
++
++AC_SUBST(MOZ_SYSTEM_VORBIS)
++
++dnl ========================================================
++dnl Check for integer-only libvorbis aka tremor
++dnl ========================================================
++
++MOZ_ARG_WITH_BOOL(system-tremor,
++[  --with-system-tremor    Use system libtremor (located with pkgconfig)],
++MOZ_SYSTEM_TREMOR=1,
++MOZ_SYSTEM_TREMOR=)
++
++if test -n "$MOZ_SYSTEM_TREMOR"; then
++    PKG_CHECK_MODULES(MOZ_TREMOR, vorbisidec >= 1.2.1)
++fi
++
++AC_SUBST(MOZ_SYSTEM_TREMOR)
++
++dnl ========================================================
++dnl Check for libtheora
++dnl ========================================================
++
++MOZ_ARG_WITH_BOOL(system-theora,
++[  --with-system-theora    Use system libtheora (located with pkgconfig)],
++MOZ_SYSTEM_THEORA=1,
++MOZ_SYSTEM_THEORA=)
++
++if test -n "$MOZ_SYSTEM_THEORA"; then
++    PKG_CHECK_MODULES(MOZ_THEORA, theora >= 1.2)
++fi
++
++AC_SUBST(MOZ_SYSTEM_THEORA)
++
++dnl ========================================================
++dnl Check for libSoundTouch
++dnl ========================================================
++
++MOZ_ARG_WITH_BOOL(system-soundtouch,
++[  --with-system-soundtouch Use system libSoundTouch (located with pkgconfig)],
++MOZ_SYSTEM_SOUNDTOUCH=1,
++MOZ_SYSTEM_SOUNDTOUCH=)
++
++if test -n "$MOZ_SYSTEM_SOUNDTOUCH"; then
++    PKG_CHECK_MODULES(MOZ_SOUNDTOUCH, soundtouch >= 1.9.0)
++
++    AC_LANG_SAVE
++    AC_LANG_CPLUSPLUS
++    _SAVE_CXXFLAGS=$CXXFLAGS
++    CXXFLAGS="$CXXFLAGS $MOZ_SOUNDTOUCH_CFLAGS"
++    AC_CACHE_CHECK(for soundtouch sample type,
++                   ac_cv_soundtouch_sample_type,
++                   [AC_TRY_COMPILE([#include <SoundTouch.h>
++                                    #ifndef SOUNDTOUCH_INTEGER_SAMPLES
++                                    #error soundtouch expects float samples
++                                    #endif],
++                                   [],
++                                   [ac_cv_soundtouch_sample_type=short],
++                                   [ac_cv_soundtouch_sample_type=float])])
++    CXXFLAGS=$_SAVE_CXXFLAGS
++    AC_LANG_RESTORE
++
++    if test \( -n "$MOZ_SAMPLE_TYPE_S16" -a "$ac_cv_soundtouch_sample_type" != short \) \
++         -o \( -n "$MOZ_SAMPLE_TYPE_FLOAT32" -a "$ac_cv_soundtouch_sample_type" != float \) ; then
++        AC_MSG_ERROR([SoundTouch library is built with incompatible sample type. Either rebuild the library with/without --enable-integer-samples, chase default Mozilla sample type or remove --with-system-soundtouch.])
++    fi
++fi
++
++if test -n "$MOZ_SYSTEM_SOUNDTOUCH"; then
++    AC_DEFINE(MOZ_SYSTEM_SOUNDTOUCH)
++fi
++AC_SUBST(MOZ_SYSTEM_SOUNDTOUCH)
++
+ dnl system libvpx Support
+ dnl ========================================================
+ MOZ_ARG_WITH_BOOL(system-libvpx,
+@@ -2846,6 +2950,67 @@ AC_DEFINE(MOZ_WEBM_ENCODER)
+ AC_SUBST(MOZ_WEBM_ENCODER)
+ 
+ dnl ==================================
++dnl = Check OSS availability
++dnl ==================================
++
++dnl If using Linux, Solaris or BSDs, ensure that OSS is available
++case "$OS_TARGET" in
++Linux|SunOS|DragonFly|FreeBSD|NetBSD|GNU/kFreeBSD)
++    MOZ_OSS=1
++    ;;
++esac
++
++MOZ_ARG_WITH_STRING(oss,
++[  --with-oss[=PFX]        Enable OpenSoundSystem support [installed at prefix PFX]],
++   OSSPREFIX=$withval)
++
++if test -n "$OSSPREFIX"; then
++    if test "$OSSPREFIX" != "no"; then
++        MOZ_OSS=1
++    else
++        MOZ_OSS=
++    fi
++fi
++
++_SAVE_CFLAGS=$CFLAGS
++_SAVE_LIBS=$LIBS
++if test -n "$MOZ_OSS"; then
++    dnl Prefer 4Front implementation
++    AC_MSG_CHECKING([MOZ_OSS_CFLAGS])
++    if test "$OSSPREFIX" != "yes"; then
++        oss_conf=${OSSPREFIX%/usr}/etc/oss.conf
++        if test -f "$oss_conf"; then
++            . "$oss_conf"
++        else
++            OSSLIBDIR=$OSSPREFIX/lib/oss
++        fi
++        if test -d "$OSSLIBDIR"; then
++            MOZ_OSS_CFLAGS="$MOZ_OSS_CFLAGS -I$OSSLIBDIR/include"
++        fi
++    fi
++    AC_MSG_RESULT([$MOZ_OSS_CFLAGS])
++
++    CFLAGS="$CFLAGS $MOZ_OSS_CFLAGS"
++    MOZ_CHECK_HEADERS(sys/soundcard.h soundcard.h)
++
++    if test "$ac_cv_header_sys_soundcard_h" != "yes" -a \
++            "$ac_cv_header_soundcard_h" != "yes"; then
++        AC_MSG_ERROR([Need OSS for Ogg, Wave or WebM decoding on $OS_TARGET.  Disable with --without-oss.])
++    fi
++
++    dnl Assume NetBSD implementation over SunAudio
++    AC_CHECK_LIB(ossaudio, _oss_ioctl,
++        [AC_DEFINE_UNQUOTED(CUBEB_OSS_DEFAULT_OUTPUT, "/dev/sound")
++         MOZ_OSS_LIBS="$MOZ_OSS_LIBS -lossaudio"])
++fi
++CFLAGS=$_SAVE_CFLAGS
++LIBS=$_SAVE_LIBS
++
++AC_SUBST(MOZ_OSS)
++AC_SUBST_LIST(MOZ_OSS_CFLAGS)
++AC_SUBST_LIST(MOZ_OSS_LIBS)
++
++dnl ==================================
+ dnl = Check alsa availability on Linux
+ dnl ==================================
+ 
+@@ -4396,6 +4561,27 @@ dnl ====================================
+ AC_SUBST(MOZ_LINUX_32_SSE2_STARTUP_ERROR)
+ 
+ dnl ========================================================
++dnl Check for graphite2
++dnl ========================================================
++if test -n "$MOZ_SYSTEM_GRAPHITE2"; then
++    dnl graphite2.pc has bogus version, check manually
++    _SAVE_CFLAGS=$CFLAGS
++    CFLAGS="$CFLAGS $MOZ_GRAPHITE2_CFLAGS"
++    AC_TRY_COMPILE([ #include <graphite2/Font.h>
++                     #define GR2_VERSION_REQUIRE(major,minor,bugfix)  \
++                             ( GR2_VERSION_MAJOR * 10000 + GR2_VERSION_MINOR \
++                               * 100 + GR2_VERSION_BUGFIX >= \
++                               (major) * 10000 + (minor) * 100 + (bugfix) )
++                   ], [
++                     #if !GR2_VERSION_REQUIRE(1,3,10)
++                     #error "Insufficient graphite2 version."
++                     #endif
++                   ], [],
++                   [AC_MSG_ERROR([--with-system-graphite2 requested but no working libgraphite2 found])])
++    CFLAGS=$_SAVE_CFLAGS
++fi
++
++dnl ========================================================
+ dnl Check for pixman and cairo
+ dnl ========================================================
+ 
diff --git a/firefox/patches/patch-build_gyp.mozbuild b/firefox/patches/patch-build_gyp.mozbuild
new file mode 100644
index 0000000000..09066271fd
--- /dev/null
+++ b/firefox/patches/patch-build_gyp.mozbuild
@@ -0,0 +1,12 @@
+$NetBSD: patch-build_gyp.mozbuild,v 1.7 2017/08/10 14:46:15 ryoon Exp $
+
+--- build/gyp.mozbuild.orig	2017-07-31 16:20:49.000000000 +0000
++++ build/gyp.mozbuild
+@@ -16,6 +16,7 @@ gyp_vars.update({
+     'have_ethtool_cmd_speed_hi': 1 if CONFIG['MOZ_WEBRTC_HAVE_ETHTOOL_SPEED_HI'] else 0,
+     'include_alsa_audio': 1 if CONFIG['MOZ_ALSA'] else 0,
+     'include_pulse_audio': 1 if CONFIG['MOZ_PULSEAUDIO'] else 0,
++    'use_libv4l2': 1 if CONFIG['MOZ_LIBV4L2_LIBS'] else 0,
+     # basic stuff for everything
+     'include_internal_video_render': 0,
+     'clang': 1 if CONFIG['CLANG_CXX'] else 0,
diff --git a/firefox/patches/patch-build_moz.configure_init.configure b/firefox/patches/patch-build_moz.configure_init.configure
new file mode 100644
index 0000000000..8a298e4cc9
--- /dev/null
+++ b/firefox/patches/patch-build_moz.configure_init.configure
@@ -0,0 +1,37 @@
+$NetBSD: patch-build_moz.configure_init.configure,v 1.3 2017/08/10 14:46:15 ryoon Exp $
+
+--- build/moz.configure/init.configure.orig	2017-07-31 16:20:49.000000000 +0000
++++ build/moz.configure/init.configure
+@@ -157,6 +157,7 @@ option(env='PYTHON', nargs=1, help='Pyth
+ @imports(_from='mozbuild.configure.util', _import='LineIO')
+ @imports(_from='mozbuild.virtualenv', _import='VirtualenvManager')
+ @imports(_from='mozbuild.virtualenv', _import='verify_python_version')
++@imports(_from='__builtin__', _import='KeyError')
+ @imports('distutils.sysconfig')
+ def virtualenv_python(env_python, build_env, mozconfig, help):
+     if help:
+@@ -176,6 +177,12 @@ def virtualenv_python(env_python, build_
+             python = mozconfig['vars']['added']['PYTHON']
+         elif 'PYTHON' in mozconfig['vars']['modified']:
+             python = mozconfig['vars']['modified']['PYTHON'][1]
++        for i in ('env', 'vars'):
++            for j in ('added', 'modified'):
++                try:
++                    del mozconfig[i][j]['PYTHON']
++                except KeyError:
++                    pass
+ 
+     with LineIO(lambda l: log.error(l)) as out:
+         verify_python_version(out)
+@@ -211,7 +218,10 @@ def virtualenv_python(env_python, build_
+     if python != normsep(sys.executable):
+         log.info('Reexecuting in the virtualenv')
+         if env_python:
+-            del os.environ['PYTHON']
++            try:
++                del os.environ['PYTHON']
++            except KeyError:
++                pass
+         # One would prefer to use os.execl, but that's completely borked on
+         # Windows.
+         sys.exit(subprocess.call([python] + sys.argv))
diff --git a/firefox/patches/patch-build_moz.configure_keyfiles.configure b/firefox/patches/patch-build_moz.configure_keyfiles.configure
new file mode 100644
index 0000000000..6ae2267bca
--- /dev/null
+++ b/firefox/patches/patch-build_moz.configure_keyfiles.configure
@@ -0,0 +1,21 @@
+$NetBSD: patch-build_moz.configure_keyfiles.configure,v 1.3 2017/08/10 14:46:15 ryoon Exp $
+
+--- build/moz.configure/keyfiles.configure.orig	2017-07-31 16:20:49.000000000 +0000
++++ build/moz.configure/keyfiles.configure
+@@ -18,6 +18,7 @@ def keyfile(desc, default=None, help=Non
+     @checking('for the %s key' % desc, lambda x: x and x is not no_key)
+     @imports(_from='__builtin__', _import='open')
+     @imports(_from='__builtin__', _import='IOError')
++    @imports(_from='os', _import='environ')
+     def keyfile(value):
+         if value:
+             try:
+@@ -28,7 +29,7 @@ def keyfile(desc, default=None, help=Non
+                     raise FatalCheckError("'%s' is empty." % value[0])
+             except IOError as e:
+                 raise FatalCheckError("'%s': %s." % (value[0], e.strerror))
+-        return no_key
++        return environ.get('MOZ_%s_KEY' % desc.upper().replace(' ', '_')) or no_key
+ 
+     return keyfile
+ 
diff --git a/firefox/patches/patch-build_moz.configure_memory.configure b/firefox/patches/patch-build_moz.configure_memory.configure
new file mode 100644
index 0000000000..e3c1c28052
--- /dev/null
+++ b/firefox/patches/patch-build_moz.configure_memory.configure
@@ -0,0 +1,15 @@
+$NetBSD: patch-build_moz.configure_memory.configure,v 1.1 2017/02/16 02:25:17 maya Exp $
+
+Recognise DragonflyBSD
+
+--- build/moz.configure/memory.configure.orig	2017-09-15 04:15:39.000000000 +0000
++++ build/moz.configure/memory.configure
+@@ -32,7 +32,7 @@ def jemalloc(value, target, build_projec
+         return True
+ 
+     if value and target.kernel not in ('WINNT', 'Linux', 'Darwin', 'kFreeBSD',
+-                                       'FreeBSD', 'NetBSD'):
++                                       'FreeBSD', 'NetBSD', 'DragonFly'):
+         die('--enable-jemalloc is not supported on %s', target.kernel)
+ 
+ 
diff --git a/firefox/patches/patch-build_moz.configure_old.configure b/firefox/patches/patch-build_moz.configure_old.configure
new file mode 100644
index 0000000000..8a59b19a6f
--- /dev/null
+++ b/firefox/patches/patch-build_moz.configure_old.configure
@@ -0,0 +1,25 @@
+$NetBSD: patch-build_moz.configure_old.configure,v 1.6 2017/04/27 01:49:47 ryoon Exp $
+
+--- build/moz.configure/old.configure.orig	2017-04-11 04:15:17.000000000 +0000
++++ build/moz.configure/old.configure
+@@ -275,6 +275,7 @@ def old_configure_options(*options):
+     '--with-nspr-prefix',
+     '--with-nss-exec-prefix',
+     '--with-nss-prefix',
++    '--with-oss',
+     '--with-pthreads',
+     '--with-qemu-exe',
+     '--with-sixgill',
+@@ -286,7 +287,12 @@ def old_configure_options(*options):
+     '--with-system-libvpx',
+     '--with-system-nspr',
+     '--with-system-nss',
++    '--with-system-ogg',
+     '--with-system-png',
++    '--with-system-soundtouch',
++    '--with-system-theora',
++    '--with-system-tremor',
++    '--with-system-vorbis',
+     '--with-system-zlib',
+     '--with-thumb',
+     '--with-thumb-interwork',
diff --git a/firefox/patches/patch-config_Makefile.in b/firefox/patches/patch-config_Makefile.in
new file mode 100644
index 0000000000..fa2c91b746
--- /dev/null
+++ b/firefox/patches/patch-config_Makefile.in
@@ -0,0 +1,27 @@
+$NetBSD: patch-config_Makefile.in,v 1.11 2017/04/27 01:49:47 ryoon Exp $
+
+* Support system libraries
+
+--- config/Makefile.in.orig	2016-10-31 20:15:27.000000000 +0000
++++ config/Makefile.in
+@@ -41,6 +41,8 @@ export:: $(export-preqs)
+ 	$(PYTHON) -m mozbuild.action.preprocessor $(DEFINES) $(ACDEFINES) \
+ 		-DMOZ_TREE_CAIRO=$(MOZ_TREE_CAIRO) \
+ 		-DMOZ_TREE_PIXMAN=$(MOZ_TREE_PIXMAN) \
++		-DMOZ_SYSTEM_GRAPHITE2=$(MOZ_SYSTEM_GRAPHITE2) \
++		-DMOZ_SYSTEM_HARFBUZZ=$(MOZ_SYSTEM_HARFBUZZ) \
+ 		-DMOZ_SYSTEM_HUNSPELL=$(MOZ_SYSTEM_HUNSPELL) \
+ 		-DMOZ_SYSTEM_BZ2=$(MOZ_SYSTEM_BZ2) \
+ 		-DMOZ_SYSTEM_ZLIB=$(MOZ_SYSTEM_ZLIB) \
+@@ -49,6 +51,11 @@ export:: $(export-preqs)
+ 		-DMOZ_SYSTEM_LIBEVENT=$(MOZ_SYSTEM_LIBEVENT) \
+ 		-DMOZ_SYSTEM_LIBVPX=$(MOZ_SYSTEM_LIBVPX) \
+ 		-DMOZ_SYSTEM_ICU=$(MOZ_SYSTEM_ICU) \
++		-DMOZ_SYSTEM_OGG=$(MOZ_SYSTEM_OGG) \
++		-DMOZ_SYSTEM_THEORA=$(MOZ_SYSTEM_THEORA) \
++		-DMOZ_SYSTEM_VORBIS=$(MOZ_SYSTEM_VORBIS) \
++		-DMOZ_SYSTEM_TREMOR=$(MOZ_SYSTEM_TREMOR) \
++		-DMOZ_SYSTEM_SOUNDTOUCH=$(MOZ_SYSTEM_SOUNDTOUCH) \
+ 		$(srcdir)/system-headers $(srcdir)/stl-headers | $(PERL) $(topsrcdir)/nsprpub/config/make-system-wrappers.pl system_wrappers
+ 	$(INSTALL) system_wrappers $(DIST)
+ 
diff --git a/firefox/patches/patch-config_baseconfig.mk b/firefox/patches/patch-config_baseconfig.mk
new file mode 100644
index 0000000000..ed0072199b
--- /dev/null
+++ b/firefox/patches/patch-config_baseconfig.mk
@@ -0,0 +1,21 @@
+$NetBSD: patch-config_baseconfig.mk,v 1.10 2017/03/07 20:45:43 ryoon Exp $
+
+* Set pkgsrc directory structure
+
+--- config/baseconfig.mk.orig	2016-09-19 16:19:29.000000000 +0000
++++ config/baseconfig.mk
+@@ -2,10 +2,10 @@
+ # directly in python/mozbuild/mozbuild/base.py for gmake validation.
+ # We thus use INCLUDED_AUTOCONF_MK to enable/disable some parts depending
+ # whether a normal build is happening or whether the check is running.
+-includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
+-idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
+-installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
+-sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
++includedir := $(includedir)/${MOZILLA_PKG_NAME}
++idldir = $(datadir)/idl/${MOZILLA_PKG_NAME}
++installdir = $(libdir)/${MOZILLA_PKG_NAME}
++sdkdir = $(libdir)/${MOZILLA_PKG_NAME}
+ ifeq (.,$(DEPTH))
+ DIST = dist
+ else
diff --git a/firefox/patches/patch-config_external_moz.build b/firefox/patches/patch-config_external_moz.build
new file mode 100644
index 0000000000..23528736d8
--- /dev/null
+++ b/firefox/patches/patch-config_external_moz.build
@@ -0,0 +1,43 @@
+$NetBSD: patch-config_external_moz.build,v 1.16 2017/09/30 05:34:12 ryoon Exp $
+
+* Support system libraries
+
+--- config/external/moz.build.orig	2017-09-14 20:15:53.000000000 +0000
++++ config/external/moz.build
+@@ -23,12 +23,21 @@ external_dirs += ['modules/woff2']
+ 
+ external_dirs += ['modules/xz-embedded']
+ 
+-if CONFIG['MOZ_VORBIS']:
++if not CONFIG['MOZ_SYSTEM_OGG']:
++    external_dirs += ['media/libogg']
++
++if CONFIG['MOZ_VORBIS'] and not CONFIG['MOZ_SYSTEM_VORBIS']:
+     external_dirs += ['media/libvorbis']
+ 
+-if CONFIG['MOZ_TREMOR']:
++if CONFIG['MOZ_TREMOR'] and not CONFIG['MOZ_SYSTEM_TREMOR']:
+     external_dirs += ['media/libtremor']
+ 
++if not CONFIG['MOZ_SYSTEM_THEORA']:
++    external_dirs += ['media/libtheora']
++
++if not CONFIG['MOZ_SYSTEM_SOUNDTOUCH']:
++    external_dirs += ['media/libsoundtouch']
++
+ if CONFIG['MOZ_WEBM_ENCODER']:
+     external_dirs += ['media/libmkv']
+ 
+@@ -57,12 +66,9 @@ external_dirs += [
+     'media/kiss_fft',
+     'media/libcubeb',
+     'media/libnestegg',
+-    'media/libogg',
+     'media/libopus',
+-    'media/libtheora',
+     'media/libspeex_resampler',
+     'media/libstagefright',
+-    'media/libsoundtouch',
+     'media/psshparser'
+ ]
+ 
diff --git a/firefox/patches/patch-config_stl__wrappers_ios b/firefox/patches/patch-config_stl__wrappers_ios
new file mode 100644
index 0000000000..afc51f1105
--- /dev/null
+++ b/firefox/patches/patch-config_stl__wrappers_ios
@@ -0,0 +1,8 @@
+$NetBSD: patch-config_stl__wrappers_ios,v 1.5 2014/02/20 13:19:03 ryoon Exp $
+
+--- config/stl_wrappers/ios.orig	2013-05-13 18:23:07.000000000 +0000
++++ config/stl_wrappers/ios
+@@ -0,0 +1,3 @@
++#pragma GCC visibility push(default)
++#include_next <ios>
++#pragma GCC visibility pop
diff --git a/firefox/patches/patch-config_stl__wrappers_ostream b/firefox/patches/patch-config_stl__wrappers_ostream
new file mode 100644
index 0000000000..9b888f2411
--- /dev/null
+++ b/firefox/patches/patch-config_stl__wrappers_ostream
@@ -0,0 +1,8 @@
+$NetBSD: patch-config_stl__wrappers_ostream,v 1.5 2014/02/20 13:19:03 ryoon Exp $
+
+--- config/stl_wrappers/ostream.orig	2013-05-13 18:22:40.000000000 +0000
++++ config/stl_wrappers/ostream
+@@ -0,0 +1,3 @@
++#pragma GCC visibility push(default)
++#include_next <ostream>
++#pragma GCC visibility pop
diff --git a/firefox/patches/patch-config_system-headers b/firefox/patches/patch-config_system-headers
new file mode 100644
index 0000000000..3d992801c2
--- /dev/null
+++ b/firefox/patches/patch-config_system-headers
@@ -0,0 +1,50 @@
+$NetBSD: patch-config_system-headers,v 1.25 2017/08/10 14:46:15 ryoon Exp $
+
+* Try to support Video4Linux2
+* Resolve libm undefined error
+* Support system libraries
+
+--- config/system-headers.orig	2017-07-31 16:20:50.000000000 +0000
++++ config/system-headers
+@@ -626,6 +626,7 @@ libgnome/libgnome.h
+ libgnomeui/gnome-icon-lookup.h
+ libgnomeui/gnome-icon-theme.h
+ libgnomeui/gnome-ui-init.h
++libv4l2.h
+ limits.h
+ link.h
+ #ifdef ANDROID
+@@ -1267,6 +1268,15 @@ libsn/sn-launcher.h
+ libsn/sn-monitor.h
+ libsn/sn-util.h
+ #endif
++#if MOZ_SYSTEM_GRAPHITE2==1
++graphite2/Font.h
++graphite2/Segment.h
++#endif
++#if MOZ_SYSTEM_HARFBUZZ==1
++harfbuzz/hb-glib.h
++harfbuzz/hb-ot.h
++harfbuzz/hb.h
++#endif
+ #if MOZ_SYSTEM_HUNSPELL==1
+ hunspell.hxx
+ #endif
+@@ -1335,3 +1345,17 @@ unicode/utypes.h
+ libutil.h
+ unwind.h
+ fenv.h
++#if MOZ_SYSTEM_OGG==1
++ogg/ogg.h
++ogg/os_types.h
++#endif
++#if MOZ_SYSTEM_THEORA==1
++theora/theoradec.h
++#endif
++#if MOZ_SYSTEM_VORBIS==1
++vorbis/codec.h
++vorbis/vorbisenc.h
++#endif
++#if MOZ_SYSTEM_TREMOR==1
++tremor/ivorbiscodec.h
++#endif
diff --git a/firefox/patches/patch-config_system__wrappers_unwind.h b/firefox/patches/patch-config_system__wrappers_unwind.h
new file mode 100644
index 0000000000..20d1fd643c
--- /dev/null
+++ b/firefox/patches/patch-config_system__wrappers_unwind.h
@@ -0,0 +1,9 @@
+$NetBSD: patch-config_system__wrappers_unwind.h,v 1.5 2014/02/20 13:19:03 ryoon Exp $
+
+--- config/system_wrappers/unwind.h.orig	2013-05-13 19:56:18.000000000 +0000
++++ config/system_wrappers/unwind.h
+@@ -0,0 +1,4 @@
++#pragma GCC system_header
++#pragma GCC visibility push(default)
++#include_next <unwind.h>
++#pragma GCC visibility pop
diff --git a/firefox/patches/patch-dom_base_moz.build b/firefox/patches/patch-dom_base_moz.build
new file mode 100644
index 0000000000..3b002224b7
--- /dev/null
+++ b/firefox/patches/patch-dom_base_moz.build
@@ -0,0 +1,14 @@
+$NetBSD: patch-dom_base_moz.build,v 1.3 2016/12/03 09:58:26 ryoon Exp $
+
+--- dom/base/moz.build.orig	2016-10-31 20:15:32.000000000 +0000
++++ dom/base/moz.build
+@@ -457,6 +457,9 @@ if CONFIG['MOZ_BUILD_APP'] in ['browser'
+ if CONFIG['MOZ_X11']:
+     CXXFLAGS += CONFIG['TK_CFLAGS']
+ 
++if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
++    CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
++
+ GENERATED_FILES += [
+     'PropertyUseCounterMap.inc',
+     'UseCounterList.h',
diff --git a/firefox/patches/patch-dom_media_AudioStream.cpp b/firefox/patches/patch-dom_media_AudioStream.cpp
new file mode 100644
index 0000000000..ca2316305e
--- /dev/null
+++ b/firefox/patches/patch-dom_media_AudioStream.cpp
@@ -0,0 +1,38 @@
+$NetBSD: patch-dom_media_AudioStream.cpp,v 1.2 2017/09/30 05:34:12 ryoon Exp $
+
+--- dom/media/AudioStream.cpp.orig	2017-09-14 20:15:56.000000000 +0000
++++ dom/media/AudioStream.cpp
+@@ -115,7 +115,9 @@ AudioStream::AudioStream(DataSource& aSo
+   : mMonitor("AudioStream")
+   , mChannels(0)
+   , mOutChannels(0)
++#ifndef MOZ_SYSTEM_SOUNDTOUCH
+   , mTimeStretcher(nullptr)
++#endif
+   , mDumpFile(nullptr)
+   , mState(INITIALIZED)
+   , mDataSource(aSource)
+@@ -135,9 +137,11 @@ AudioStream::~AudioStream()
+   if (mDumpFile) {
+     fclose(mDumpFile);
+   }
++#ifndef MOZ_SYSTEM_SOUNDTOUCH
+   if (mTimeStretcher) {
+     soundtouch::destroySoundTouchObj(mTimeStretcher);
+   }
++#endif
+ #if defined(XP_WIN)
+   if (XRE_IsContentProcess()) {
+     audio::AudioNotificationReceiver::Unregister(this);
+@@ -161,7 +165,11 @@ nsresult AudioStream::EnsureTimeStretche
+ {
+   mMonitor.AssertCurrentThreadOwns();
+   if (!mTimeStretcher) {
++#ifdef MOZ_SYSTEM_SOUNDTOUCH
++    mTimeStretcher = new soundtouch::SoundTouch();
++#else
+     mTimeStretcher = soundtouch::createSoundTouchObj();
++#endif
+     mTimeStretcher->setSampleRate(mAudioClock.GetInputRate());
+     mTimeStretcher->setChannels(mOutChannels);
+     mTimeStretcher->setPitch(1.0);
diff --git a/firefox/patches/patch-dom_media_AudioStream.h b/firefox/patches/patch-dom_media_AudioStream.h
new file mode 100644
index 0000000000..e8e70109db
--- /dev/null
+++ b/firefox/patches/patch-dom_media_AudioStream.h
@@ -0,0 +1,28 @@
+$NetBSD: patch-dom_media_AudioStream.h,v 1.4 2017/09/30 05:34:12 ryoon Exp $
+
+--- dom/media/AudioStream.h.orig	2017-09-14 20:15:56.000000000 +0000
++++ dom/media/AudioStream.h
+@@ -16,7 +16,11 @@
+ #include "mozilla/TimeStamp.h"
+ #include "mozilla/UniquePtr.h"
+ #include "CubebUtils.h"
++#ifdef MOZ_SYSTEM_SOUNDTOUCH
++#include "soundtouch/SoundTouch.h"
++#else
+ #include "soundtouch/SoundTouchFactory.h"
++#endif
+ 
+ #if defined(XP_WIN)
+ #include "mozilla/audio/AudioNotificationReceiver.h"
+@@ -299,7 +303,11 @@ private:
+   uint32_t mChannels;
+   uint32_t mOutChannels;
+   AudioClock mAudioClock;
++#ifdef MOZ_SYSTEM_SOUNDTOUCH
++  nsAutoPtr<soundtouch::SoundTouch> mTimeStretcher;
++#else
+   soundtouch::SoundTouch* mTimeStretcher;
++#endif
+ 
+   // Output file for dumping audio
+   FILE* mDumpFile;
diff --git a/firefox/patches/patch-dom_media_CubebUtils.cpp b/firefox/patches/patch-dom_media_CubebUtils.cpp
new file mode 100644
index 0000000000..571f74fdb9
--- /dev/null
+++ b/firefox/patches/patch-dom_media_CubebUtils.cpp
@@ -0,0 +1,14 @@
+$NetBSD: patch-dom_media_CubebUtils.cpp,v 1.1 2017/04/27 01:49:47 ryoon Exp $
+
+--- dom/media/CubebUtils.cpp.orig	2017-04-11 04:15:21.000000000 +0000
++++ dom/media/CubebUtils.cpp
+@@ -71,7 +71,8 @@ const char* AUDIOSTREAM_BACKEND_ID_STR[]
+   "sndio",
+   "opensl",
+   "audiotrack",
+-  "kai"
++  "kai",
++  "oss",
+ };
+ /* Index for failures to create an audio stream the first time. */
+ const int CUBEB_BACKEND_INIT_FAILURE_FIRST =
diff --git a/firefox/patches/patch-dom_media_moz.build b/firefox/patches/patch-dom_media_moz.build
new file mode 100644
index 0000000000..d3ac780baf
--- /dev/null
+++ b/firefox/patches/patch-dom_media_moz.build
@@ -0,0 +1,28 @@
+$NetBSD: patch-dom_media_moz.build,v 1.7 2017/01/25 13:24:51 ryoon Exp $
+
+* Support system libraries
+
+--- dom/media/moz.build.orig	2017-01-16 16:16:53.000000000 +0000
++++ dom/media/moz.build
+@@ -316,6 +316,21 @@ if CONFIG['MOZ_WEBRTC']:
+ 
+ DEFINES['MOZILLA_INTERNAL_API'] = True
+ 
++if CONFIG['MOZ_SYSTEM_OGG']:
++    CXXFLAGS += CONFIG['MOZ_OGG_CFLAGS']
++
++if CONFIG['MOZ_SYSTEM_THEORA']:
++    CXXFLAGS += CONFIG['MOZ_THEORA_CFLAGS']
++
++if CONFIG['MOZ_SYSTEM_VORBIS']:
++    CXXFLAGS += CONFIG['MOZ_VORBIS_CFLAGS']
++
++if CONFIG['MOZ_SYSTEM_TREMOR']:
++    CXXFLAGS += CONFIG['MOZ_TREMOR_CFLAGS']
++
++if CONFIG['MOZ_SYSTEM_SOUNDTOUCH']:
++    CXXFLAGS += CONFIG['MOZ_SOUNDTOUCH_CFLAGS']
++
+ if CONFIG['OS_TARGET'] == 'WINNT':
+     DEFINES['WEBRTC_WIN'] = True
+ else:
diff --git a/firefox/patches/patch-dom_media_platforms_ffmpeg_ffvpx_FFVPXRuntimeLinker.cpp b/firefox/patches/patch-dom_media_platforms_ffmpeg_ffvpx_FFVPXRuntimeLinker.cpp
new file mode 100644
index 0000000000..8b24f954cf
--- /dev/null
+++ b/firefox/patches/patch-dom_media_platforms_ffmpeg_ffvpx_FFVPXRuntimeLinker.cpp
@@ -0,0 +1,39 @@
+$NetBSD: patch-dom_media_platforms_ffmpeg_ffvpx_FFVPXRuntimeLinker.cpp,v 1.2 2017/06/14 11:28:44 ryoon Exp $
+
+--- dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp.orig	2017-06-05 20:45:19.000000000 +0000
++++ dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp
+@@ -11,9 +11,13 @@
+ #include "prmem.h"
+ #include "prlink.h"
+ 
++#ifdef MOZ_SYSTEM_SOUNDTOUCH
++#include "nsXPCOMPrivate.h" // for XUL_DLL
++#else
+ // We use a known symbol located in lgpllibs to determine its location.
+ // soundtouch happens to be always included in lgpllibs
+ #include "soundtouch/SoundTouch.h"
++#endif
+ 
+ namespace mozilla {
+ 
+@@ -50,6 +54,12 @@ FFVPXRuntimeLinker::Init()
+ 
+   sLinkStatus = LinkStatus_FAILED;
+ 
++#ifdef MOZ_SYSTEM_SOUNDTOUCH
++  // We retrieve the path of the XUL library as this is where mozavcodec and
++  // mozavutil libs are located.
++  char* path =
++    PR_GetLibraryFilePathname(XUL_DLL, (PRFuncPtr)&FFVPXRuntimeLinker::Init);
++#else
+   // We retrieve the path of the lgpllibs library as this is where mozavcodec
+   // and mozavutil libs are located.
+   char* lgpllibsname = PR_GetLibraryName(nullptr, "lgpllibs");
+@@ -60,6 +70,7 @@ FFVPXRuntimeLinker::Init()
+     PR_GetLibraryFilePathname(lgpllibsname,
+                               (PRFuncPtr)&soundtouch::SoundTouch::getVersionId);
+   PR_FreeLibraryName(lgpllibsname);
++#endif
+   if (!path) {
+     return false;
+   }
diff --git a/firefox/patches/patch-gfx_cairo_libpixman_src_pixman-arm-neon-asm.S b/firefox/patches/patch-gfx_cairo_libpixman_src_pixman-arm-neon-asm.S
new file mode 100644
index 0000000000..a97534844a
--- /dev/null
+++ b/firefox/patches/patch-gfx_cairo_libpixman_src_pixman-arm-neon-asm.S
@@ -0,0 +1,39 @@
+$NetBSD: patch-gfx_cairo_libpixman_src_pixman-arm-neon-asm.S,v 1.2 2016/06/16 12:08:21 ryoon Exp $
+
+* Support NetBSD/earm
+
+--- gfx/cairo/libpixman/src/pixman-arm-neon-asm.S.orig	2015-09-29 21:45:08.000000000 +0000
++++ gfx/cairo/libpixman/src/pixman-arm-neon-asm.S
+@@ -34,6 +34,12 @@
+  *  - pixman_composite_over_n_8_0565_asm_neon
+  */
+ 
++#if defined(__ARM_EABI__) && !defined(__ARM_DWARF_EH__)
++#define UNWIND
++#else
++#define UNWIND @
++#endif
++
+ /* Prevent the stack from becoming executable for no reason... */
+ #if defined(__linux__) && defined(__ELF__)
+ .section .note.GNU-stack,"",%progbits
+@@ -3141,7 +3147,8 @@ pixman_asm_function fname
+     TMP4      .req      r9
+     STRIDE    .req      r2
+ 
+-    .fnstart
++    .cfi_startproc
++    UNWIND .fnstart
+     mov       ip, sp
+     .save     {r4, r5, r6, r7, r8, r9}
+     push      {r4, r5, r6, r7, r8, r9}
+@@ -3244,7 +3251,8 @@ pixman_asm_function fname
+ .endif
+     pop       {r4, r5, r6, r7, r8, r9}
+     bx        lr
+-    .fnend
++    UNWIND .fnend
++    .cfi_endproc
+ 
+     .unreq    OUT
+     .unreq    TOP
diff --git a/firefox/patches/patch-gfx_gl_GLContextProviderGLX.cpp b/firefox/patches/patch-gfx_gl_GLContextProviderGLX.cpp
new file mode 100644
index 0000000000..d022a7204b
--- /dev/null
+++ b/firefox/patches/patch-gfx_gl_GLContextProviderGLX.cpp
@@ -0,0 +1,16 @@
+$NetBSD: patch-gfx_gl_GLContextProviderGLX.cpp,v 1.1 2015/07/05 11:55:06 martin Exp $
+
+Fix libGL.so filename on NetBSD,
+see https://bugzilla.mozilla.org/show_bug.cgi?id=1180498
+
+--- gfx/gl/GLContextProviderGLX.cpp.orig	2015-07-01 00:58:10.000000000 +0200
++++ gfx/gl/GLContextProviderGLX.cpp	2015-07-04 21:13:15.000000000 +0200
+@@ -82,7 +82,7 @@
+         // see e.g. bug 608526: it is intrinsically interesting to know whether we have dynamically linked to libGL.so.1
+         // because at least the NVIDIA implementation requires an executable stack, which causes mprotect calls,
+         // which trigger glibc bug http://sourceware.org/bugzilla/show_bug.cgi?id=12225
+-#ifdef __OpenBSD__
++#if defined(__OpenBSD__) || defined(__NetBSD__)
+         libGLfilename = "libGL.so";
+ #else
+         libGLfilename = "libGL.so.1";
diff --git a/firefox/patches/patch-gfx_graphite2_moz-gr-update.sh b/firefox/patches/patch-gfx_graphite2_moz-gr-update.sh
new file mode 100644
index 0000000000..bf7955c65f
--- /dev/null
+++ b/firefox/patches/patch-gfx_graphite2_moz-gr-update.sh
@@ -0,0 +1,30 @@
+$NetBSD: patch-gfx_graphite2_moz-gr-update.sh,v 1.3 2016/12/03 09:58:26 ryoon Exp $
+
+--- gfx/graphite2/moz-gr-update.sh.orig	2016-07-25 20:22:05.000000000 +0000
++++ gfx/graphite2/moz-gr-update.sh
+@@ -1,6 +1,7 @@
+ #!/bin/bash
+ 
+ # Script used to update the Graphite2 library in the mozilla source tree
++# and bump version for --with-system-graphite2
+ 
+ # This script lives in gfx/graphite2, along with the library source,
+ # but must be run from the top level of the mozilla-central tree.
+@@ -37,12 +38,16 @@ echo "See" $0 "for update procedure." >>
+ #find gfx/graphite2/ -name "*.cpp" -exec perl -p -i -e "s/<cstdio>/<stdio.h>/;s/Windows.h/windows.h/;" {} \;
+ #find gfx/graphite2/ -name "*.h" -exec perl -p -i -e "s/<cstdio>/<stdio.h>/;s/Windows.h/windows.h/;" {} \;
+ 
++# chase version for --with-system-graphite2
++perl -p -i -e "s/[0-9]+\,[0-9]+\,[0-9]+/$RELEASE/ and tr/./,/ \
++  if /GR2_VERSION_REQUIRE/" old-configure.in
++
+ # summarize what's been touched
+ echo Updated to $RELEASE.
+ echo Here is what changed in the gfx/graphite2 directory:
+ echo
+ 
+-hg stat gfx/graphite2
++hg stat old-configure.in gfx/graphite2
+ 
+ echo
+ echo If gfx/graphite2/src/files.mk has changed, please make corresponding
diff --git a/firefox/patches/patch-gfx_moz.build b/firefox/patches/patch-gfx_moz.build
new file mode 100644
index 0000000000..f89054cf8a
--- /dev/null
+++ b/firefox/patches/patch-gfx_moz.build
@@ -0,0 +1,26 @@
+$NetBSD: patch-gfx_moz.build,v 1.3 2016/12/03 09:58:26 ryoon Exp $
+
+--- gfx/moz.build.orig	2016-10-31 20:15:31.000000000 +0000
++++ gfx/moz.build
+@@ -7,6 +7,12 @@
+ if CONFIG['MOZ_TREE_CAIRO']:
+     DIRS += ['cairo']
+ 
++if not CONFIG['MOZ_SYSTEM_GRAPHITE2']:
++    DIRS += ['graphite2/src' ]
++
++if not CONFIG['MOZ_SYSTEM_HARFBUZZ']:
++    DIRS += ['harfbuzz/src']
++
+ DIRS += [
+     '2d',
+     'ycbcr',
+@@ -15,8 +21,6 @@ DIRS += [
+     'qcms',
+     'gl',
+     'layers',
+-    'graphite2/src',
+-    'harfbuzz/src',
+     'ots/src',
+     'thebes',
+     'ipc',
diff --git a/firefox/patches/patch-gfx_skia_generate__mozbuild.py b/firefox/patches/patch-gfx_skia_generate__mozbuild.py
new file mode 100644
index 0000000000..8f1c2585c1
--- /dev/null
+++ b/firefox/patches/patch-gfx_skia_generate__mozbuild.py
@@ -0,0 +1,14 @@
+$NetBSD: patch-gfx_skia_generate__mozbuild.py,v 1.7 2017/03/07 20:45:43 ryoon Exp $
+
+--- gfx/skia/generate_mozbuild.py.orig	2017-01-23 16:13:43.000000000 +0000
++++ gfx/skia/generate_mozbuild.py
+@@ -140,6 +140,9 @@ if CONFIG['CLANG_CXX'] or CONFIG['CLANG_
+         '-Wno-unused-private-field',
+     ]
+ 
++if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
++    CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
++
+ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3', 'android'):
+     CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
+     CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
diff --git a/firefox/patches/patch-gfx_skia_moz.build b/firefox/patches/patch-gfx_skia_moz.build
new file mode 100644
index 0000000000..de159f6361
--- /dev/null
+++ b/firefox/patches/patch-gfx_skia_moz.build
@@ -0,0 +1,14 @@
+$NetBSD: patch-gfx_skia_moz.build,v 1.14 2017/03/07 20:45:43 ryoon Exp $
+
+--- gfx/skia/moz.build.orig	2017-01-23 16:13:43.000000000 +0000
++++ gfx/skia/moz.build
+@@ -750,6 +750,9 @@ if CONFIG['CLANG_CXX'] or CONFIG['CLANG_
+         '-Wno-unused-private-field',
+     ]
+ 
++if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
++    CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
++
+ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3', 'android'):
+     CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
+     CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
diff --git a/firefox/patches/patch-gfx_thebes_gfxFont.cpp b/firefox/patches/patch-gfx_thebes_gfxFont.cpp
new file mode 100644
index 0000000000..d426773543
--- /dev/null
+++ b/firefox/patches/patch-gfx_thebes_gfxFont.cpp
@@ -0,0 +1,21 @@
+$NetBSD$
+
+--- gfx/thebes/gfxFont.cpp.orig	2017-09-15 04:15:37.000000000 +0000
++++ gfx/thebes/gfxFont.cpp
+@@ -841,8 +841,16 @@ gfxFont::GetRoundOffsetsToPixels(DrawTar
+   }
+ 
+   // Sometimes hint metrics gets set for us, most notably for printing.
++#ifdef MOZ_TREE_CAIRO
+   cairo_hint_metrics_t hint_metrics =
+     cairo_scaled_font_get_hint_metrics(scaled_font);
++#else
++  cairo_font_options_t* font_options = cairo_font_options_create();
++  cairo_scaled_font_get_font_options(scaled_font, font_options);
++  cairo_hint_metrics_t hint_metrics =
++    cairo_font_options_get_hint_metrics(font_options);
++  cairo_font_options_destroy(font_options);
++#endif
+ 
+   switch (hint_metrics) {
+   case CAIRO_HINT_METRICS_OFF:
diff --git a/firefox/patches/patch-gfx_thebes_moz.build b/firefox/patches/patch-gfx_thebes_moz.build
new file mode 100644
index 0000000000..da2b582470
--- /dev/null
+++ b/firefox/patches/patch-gfx_thebes_moz.build
@@ -0,0 +1,19 @@
+$NetBSD: patch-gfx_thebes_moz.build,v 1.8 2017/06/14 11:28:44 ryoon Exp $
+
+--- gfx/thebes/moz.build.orig	2017-06-05 20:45:20.000000000 +0000
++++ gfx/thebes/moz.build
+@@ -274,7 +274,13 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk
+ 
+ LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
+ 
+-DEFINES['GRAPHITE2_STATIC'] = True
++if CONFIG['MOZ_SYSTEM_GRAPHITE2']:
++    CXXFLAGS += CONFIG['MOZ_GRAPHITE2_CFLAGS']
++else:
++    DEFINES['GRAPHITE2_STATIC'] = True
++
++if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
++    CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
+ 
+ if CONFIG['CLANG_CXX']:
+     # Suppress warnings from Skia header files.
diff --git a/firefox/patches/patch-gfx_ycbcr_moz.build b/firefox/patches/patch-gfx_ycbcr_moz.build
new file mode 100644
index 0000000000..016052280e
--- /dev/null
+++ b/firefox/patches/patch-gfx_ycbcr_moz.build
@@ -0,0 +1,15 @@
+$NetBSD: patch-gfx_ycbcr_moz.build,v 1.2 2016/06/16 12:08:21 ryoon Exp $
+
+* yuv_row_arm.S requires pre-processor
+
+--- gfx/ycbcr/moz.build.orig	2014-11-26 12:30:03.000000000 +0000
++++ gfx/ycbcr/moz.build
+@@ -63,7 +63,7 @@ else:
+ 
+ if CONFIG['CPU_ARCH'] == 'arm' and CONFIG['HAVE_ARM_NEON']:
+     SOURCES += [
+-        'yuv_row_arm.s',
++        'yuv_row_arm.S',
+     ]
+     SOURCES += [
+         'yuv_convert_arm.cpp',
diff --git a/firefox/patches/patch-gfx_ycbcr_yuv__row__arm.S b/firefox/patches/patch-gfx_ycbcr_yuv__row__arm.S
new file mode 100644
index 0000000000..ee2b5384df
--- /dev/null
+++ b/firefox/patches/patch-gfx_ycbcr_yuv__row__arm.S
@@ -0,0 +1,42 @@
+$NetBSD: patch-gfx_ycbcr_yuv__row__arm.S,v 1.4 2017/06/14 11:28:44 ryoon Exp $
+
+* Copy from yuv_row_arm.s to process it with pre-processor
+
+--- gfx/ycbcr/yuv_row_arm.S.orig	2017-06-12 20:07:14.598490411 +0000
++++ gfx/ycbcr/yuv_row_arm.S
+@@ -2,6 +2,12 @@
+  * License, v. 2.0. If a copy of the MPL was not distributed with this
+  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ 
++#if defined(__ARM_EABI__) && !defined(__ARM_DWARF_EH__)
++#define UNWIND
++#else
++#define UNWIND @
++#endif
++
+     .arch   armv7-a
+     .fpu    neon
+ /* Allow to build on targets not supporting neon, and force the object file
+@@ -74,7 +80,8 @@ YCbCr42xToRGB565_DITHER30_CONSTS_NEON:
+     .global ScaleYCbCr42xToRGB565_BilinearY_Row_NEON
+     .type   ScaleYCbCr42xToRGB565_BilinearY_Row_NEON, %function
+     .balign 64
+-    .fnstart
++    .cfi_startproc
++    UNWIND .fnstart
+ ScaleYCbCr42xToRGB565_BilinearY_Row_NEON:
+     STMFD       r13!,{r4-r9,r14}       @ 8 words.
+     ADR         r14,YCbCr42xToRGB565_DITHER03_CONSTS_NEON
+@@ -296,9 +303,10 @@ s42xbily_neon_tail:
+ s42xbily_neon_done:
+     VPOP        {Q4-Q7}                @ 16 words.
+     LDMFD       r13!,{r4-r9,PC}        @ 8 words.
+-    .fnend
++    UNWIND .fnend
++    .cfi_endproc
+     .size ScaleYCbCr42xToRGB565_BilinearY_Row_NEON, .-ScaleYCbCr42xToRGB565_BilinearY_Row_NEON
+ 
+-#if defined(__ELF__)&&defined(__linux__)
++#if defined(__ELF__)&&(defined(__linux__) || defined(__NetBSD__))
+     .section .note.GNU-stack,"",%progbits
+ #endif
diff --git a/firefox/patches/patch-image_decoders_nsJPEGDecoder.cpp b/firefox/patches/patch-image_decoders_nsJPEGDecoder.cpp
new file mode 100644
index 0000000000..c61ec8318a
--- /dev/null
+++ b/firefox/patches/patch-image_decoders_nsJPEGDecoder.cpp
@@ -0,0 +1,367 @@
+$NetBSD: patch-image_decoders_nsJPEGDecoder.cpp,v 1.8 2016/12/03 09:58:26 ryoon Exp $
+
+Partially revert https://bugzilla.mozilla.org/show_bug.cgi?id=791305
+to allow building against jpeg (not jpeg-turbo).
+
+--- image/decoders/nsJPEGDecoder.cpp.orig	2016-10-31 20:15:32.000000000 +0000
++++ image/decoders/nsJPEGDecoder.cpp
+@@ -28,13 +28,28 @@
+ 
+ extern "C" {
+ #include "iccjpeg.h"
+-}
+ 
++#ifdef JCS_EXTENSIONS
+ #if MOZ_BIG_ENDIAN
+ #define MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB JCS_EXT_XRGB
+ #else
+ #define MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB JCS_EXT_BGRX
+ #endif
++#else
++/* Colorspace conversion (copied from jpegint.h) */
++struct jpeg_color_deconverter {
++  JMETHOD(void, start_pass, (j_decompress_ptr cinfo));
++  JMETHOD(void, color_convert, (j_decompress_ptr cinfo,
++				JSAMPIMAGE input_buf, JDIMENSION input_row,
++				JSAMPARRAY output_buf, int num_rows));
++};
++
++METHODDEF(void)
++ycc_rgb_convert_argb (j_decompress_ptr cinfo,
++                 JSAMPIMAGE input_buf, JDIMENSION input_row,
++                 JSAMPARRAY output_buf, int num_rows);
++#endif
++}
+ 
+ static void cmyk_convert_rgb(JSAMPROW row, JDIMENSION width);
+ 
+@@ -360,6 +375,7 @@ nsJPEGDecoder::ReadJPEGData(const char* 
+         case JCS_GRAYSCALE:
+         case JCS_RGB:
+         case JCS_YCbCr:
++#ifdef JCS_EXTENSIONS
+           // if we're not color managing we can decode directly to
+           // MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB
+           if (mCMSMode != eCMSMode_All) {
+@@ -368,6 +384,9 @@ nsJPEGDecoder::ReadJPEGData(const char* 
+           } else {
+               mInfo.out_color_space = JCS_RGB;
+           }
++#else
++          mInfo.out_color_space = JCS_RGB;
++#endif
+           break;
+         case JCS_CMYK:
+         case JCS_YCCK:
+@@ -441,6 +460,16 @@ nsJPEGDecoder::ReadJPEGData(const char* 
+       return Transition::ContinueUnbuffered(State::JPEG_DATA); // I/O suspension
+     }
+ 
++#ifndef JCS_EXTENSIONS
++    /* Force to use our YCbCr to Packed RGB converter when possible */
++    if (!mTransform && (mCMSMode != eCMSMode_All) &&
++        mInfo.jpeg_color_space == JCS_YCbCr && mInfo.out_color_space == JCS_RGB) {
++      /* Special case for the most common case: transform from YCbCr direct into packed ARGB */
++      mInfo.out_color_components = 4; /* Packed ARGB pixels are always 4 bytes...*/
++      mInfo.cconvert->color_convert = ycc_rgb_convert_argb;
++    }
++#endif
++
+     // If this is a progressive JPEG ...
+     mState = mInfo.buffered_image ?
+              JPEG_DECOMPRESS_PROGRESSIVE : JPEG_DECOMPRESS_SEQUENTIAL;
+@@ -638,7 +667,11 @@ nsJPEGDecoder::OutputScanlines(bool* sus
+ 
+       MOZ_ASSERT(imageRow, "Should have a row buffer here");
+ 
++#ifdef JCS_EXTENSIONS
+       if (mInfo.out_color_space == MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB) {
++#else
++      if (mInfo.cconvert->color_convert == ycc_rgb_convert_argb) {
++#endif
+         // Special case: scanline will be directly converted into packed ARGB
+         if (jpeg_read_scanlines(&mInfo, (JSAMPARRAY)&imageRow, 1) != 1) {
+           *suspend = true; // suspend
+@@ -962,6 +995,282 @@ term_source (j_decompress_ptr jd)
+ } // namespace image
+ } // namespace mozilla
+ 
++#ifndef JCS_EXTENSIONS
++/**************** YCbCr -> Cairo's RGB24/ARGB32 conversion: most common case **************/
++
++/*
++ * YCbCr is defined per CCIR 601-1, except that Cb and Cr are
++ * normalized to the range 0..MAXJSAMPLE rather than -0.5 .. 0.5.
++ * The conversion equations to be implemented are therefore
++ *      R = Y                + 1.40200 * Cr
++ *      G = Y - 0.34414 * Cb - 0.71414 * Cr
++ *      B = Y + 1.77200 * Cb
++ * where Cb and Cr represent the incoming values less CENTERJSAMPLE.
++ * (These numbers are derived from TIFF 6.0 section 21, dated 3-June-92.)
++ *
++ * To avoid floating-point arithmetic, we represent the fractional constants
++ * as integers scaled up by 2^16 (about 4 digits precision); we have to divide
++ * the products by 2^16, with appropriate rounding, to get the correct answer.
++ * Notice that Y, being an integral input, does not contribute any fraction
++ * so it need not participate in the rounding.
++ *
++ * For even more speed, we avoid doing any multiplications in the inner loop
++ * by precalculating the constants times Cb and Cr for all possible values.
++ * For 8-bit JSAMPLEs this is very reasonable (only 256 entries per table);
++ * for 12-bit samples it is still acceptable.  It's not very reasonable for
++ * 16-bit samples, but if you want lossless storage you shouldn't be changing
++ * colorspace anyway.
++ * The Cr=>R and Cb=>B values can be rounded to integers in advance; the
++ * values for the G calculation are left scaled up, since we must add them
++ * together before rounding.
++ */
++
++#define SCALEBITS       16      /* speediest right-shift on some machines */
++
++/* Use static tables for color processing. */
++/* Four tables, each 256 entries of 4 bytes totals 4K which is not bad... */
++
++const int Cr_r_tab[(MAXJSAMPLE+1) * sizeof(int)] ={
++       -0xb3,       -0xb2,       -0xb1,       -0xaf,       -0xae,       -0xac,
++       -0xab,       -0xaa,       -0xa8,       -0xa7,       -0xa5,       -0xa4,
++       -0xa3,       -0xa1,       -0xa0,       -0x9e,       -0x9d,       -0x9c,
++       -0x9a,       -0x99,       -0x97,       -0x96,       -0x95,       -0x93,
++       -0x92,       -0x90,       -0x8f,       -0x8e,       -0x8c,       -0x8b,
++       -0x89,       -0x88,       -0x87,       -0x85,       -0x84,       -0x82,
++       -0x81,       -0x80,       -0x7e,       -0x7d,       -0x7b,       -0x7a,
++       -0x79,       -0x77,       -0x76,       -0x74,       -0x73,       -0x72,
++       -0x70,       -0x6f,       -0x6d,       -0x6c,       -0x6b,       -0x69,
++       -0x68,       -0x66,       -0x65,       -0x64,       -0x62,       -0x61,
++       -0x5f,       -0x5e,       -0x5d,       -0x5b,       -0x5a,       -0x58,
++       -0x57,       -0x56,       -0x54,       -0x53,       -0x51,       -0x50,
++       -0x4f,       -0x4d,       -0x4c,       -0x4a,       -0x49,       -0x48,
++       -0x46,       -0x45,       -0x43,       -0x42,       -0x40,       -0x3f,
++       -0x3e,       -0x3c,       -0x3b,       -0x39,       -0x38,       -0x37,
++       -0x35,       -0x34,       -0x32,       -0x31,       -0x30,       -0x2e,
++       -0x2d,       -0x2b,       -0x2a,       -0x29,       -0x27,       -0x26,
++       -0x24,       -0x23,       -0x22,       -0x20,       -0x1f,       -0x1d,
++       -0x1c,       -0x1b,       -0x19,       -0x18,       -0x16,       -0x15,
++       -0x14,       -0x12,       -0x11,       -0x0f,       -0x0e,       -0x0d,
++       -0x0b,       -0x0a,       -0x08,       -0x07,       -0x06,       -0x04,
++       -0x03,       -0x01,        0x00,        0x01,        0x03,        0x04,
++        0x06,        0x07,        0x08,        0x0a,        0x0b,        0x0d,
++        0x0e,        0x0f,        0x11,        0x12,        0x14,        0x15,
++        0x16,        0x18,        0x19,        0x1b,        0x1c,        0x1d,
++        0x1f,        0x20,        0x22,        0x23,        0x24,        0x26,
++        0x27,        0x29,        0x2a,        0x2b,        0x2d,        0x2e,
++        0x30,        0x31,        0x32,        0x34,        0x35,        0x37,
++        0x38,        0x39,        0x3b,        0x3c,        0x3e,        0x3f,
++        0x40,        0x42,        0x43,        0x45,        0x46,        0x48,
++        0x49,        0x4a,        0x4c,        0x4d,        0x4f,        0x50,
++        0x51,        0x53,        0x54,        0x56,        0x57,        0x58,
++        0x5a,        0x5b,        0x5d,        0x5e,        0x5f,        0x61,
++        0x62,        0x64,        0x65,        0x66,        0x68,        0x69,
++        0x6b,        0x6c,        0x6d,        0x6f,        0x70,        0x72,
++        0x73,        0x74,        0x76,        0x77,        0x79,        0x7a,
++        0x7b,        0x7d,        0x7e,        0x80,        0x81,        0x82,
++        0x84,        0x85,        0x87,        0x88,        0x89,        0x8b,
++        0x8c,        0x8e,        0x8f,        0x90,        0x92,        0x93,
++        0x95,        0x96,        0x97,        0x99,        0x9a,        0x9c,
++        0x9d,        0x9e,        0xa0,        0xa1,        0xa3,        0xa4,
++        0xa5,        0xa7,        0xa8,        0xaa,        0xab,        0xac,
++        0xae,        0xaf,        0xb1,        0xb2,
++  };
++
++const int Cb_b_tab[(MAXJSAMPLE+1) * sizeof(int)] ={
++       -0xe3,       -0xe1,       -0xdf,       -0xde,       -0xdc,       -0xda,
++       -0xd8,       -0xd6,       -0xd5,       -0xd3,       -0xd1,       -0xcf,
++       -0xce,       -0xcc,       -0xca,       -0xc8,       -0xc6,       -0xc5,
++       -0xc3,       -0xc1,       -0xbf,       -0xbe,       -0xbc,       -0xba,
++       -0xb8,       -0xb7,       -0xb5,       -0xb3,       -0xb1,       -0xaf,
++       -0xae,       -0xac,       -0xaa,       -0xa8,       -0xa7,       -0xa5,
++       -0xa3,       -0xa1,       -0x9f,       -0x9e,       -0x9c,       -0x9a,
++       -0x98,       -0x97,       -0x95,       -0x93,       -0x91,       -0x90,
++       -0x8e,       -0x8c,       -0x8a,       -0x88,       -0x87,       -0x85,
++       -0x83,       -0x81,       -0x80,       -0x7e,       -0x7c,       -0x7a,
++       -0x78,       -0x77,       -0x75,       -0x73,       -0x71,       -0x70,
++       -0x6e,       -0x6c,       -0x6a,       -0x69,       -0x67,       -0x65,
++       -0x63,       -0x61,       -0x60,       -0x5e,       -0x5c,       -0x5a,
++       -0x59,       -0x57,       -0x55,       -0x53,       -0x52,       -0x50,
++       -0x4e,       -0x4c,       -0x4a,       -0x49,       -0x47,       -0x45,
++       -0x43,       -0x42,       -0x40,       -0x3e,       -0x3c,       -0x3a,
++       -0x39,       -0x37,       -0x35,       -0x33,       -0x32,       -0x30,
++       -0x2e,       -0x2c,       -0x2b,       -0x29,       -0x27,       -0x25,
++       -0x23,       -0x22,       -0x20,       -0x1e,       -0x1c,       -0x1b,
++       -0x19,       -0x17,       -0x15,       -0x13,       -0x12,       -0x10,
++       -0x0e,       -0x0c,       -0x0b,       -0x09,       -0x07,       -0x05,
++       -0x04,       -0x02,        0x00,        0x02,        0x04,        0x05,
++        0x07,        0x09,        0x0b,        0x0c,        0x0e,        0x10,
++        0x12,        0x13,        0x15,        0x17,        0x19,        0x1b,
++        0x1c,        0x1e,        0x20,        0x22,        0x23,        0x25,
++        0x27,        0x29,        0x2b,        0x2c,        0x2e,        0x30,
++        0x32,        0x33,        0x35,        0x37,        0x39,        0x3a,
++        0x3c,        0x3e,        0x40,        0x42,        0x43,        0x45,
++        0x47,        0x49,        0x4a,        0x4c,        0x4e,        0x50,
++        0x52,        0x53,        0x55,        0x57,        0x59,        0x5a,
++        0x5c,        0x5e,        0x60,        0x61,        0x63,        0x65,
++        0x67,        0x69,        0x6a,        0x6c,        0x6e,        0x70,
++        0x71,        0x73,        0x75,        0x77,        0x78,        0x7a,
++        0x7c,        0x7e,        0x80,        0x81,        0x83,        0x85,
++        0x87,        0x88,        0x8a,        0x8c,        0x8e,        0x90,
++        0x91,        0x93,        0x95,        0x97,        0x98,        0x9a,
++        0x9c,        0x9e,        0x9f,        0xa1,        0xa3,        0xa5,
++        0xa7,        0xa8,        0xaa,        0xac,        0xae,        0xaf,
++        0xb1,        0xb3,        0xb5,        0xb7,        0xb8,        0xba,
++        0xbc,        0xbe,        0xbf,        0xc1,        0xc3,        0xc5,
++        0xc6,        0xc8,        0xca,        0xcc,        0xce,        0xcf,
++        0xd1,        0xd3,        0xd5,        0xd6,        0xd8,        0xda,
++        0xdc,        0xde,        0xdf,        0xe1,
++  };
++
++const int Cr_g_tab[(MAXJSAMPLE+1) * sizeof(int)] ={
++    0x5b6900,    0x5ab22e,    0x59fb5c,    0x59448a,    0x588db8,    0x57d6e6,
++    0x572014,    0x566942,    0x55b270,    0x54fb9e,    0x5444cc,    0x538dfa,
++    0x52d728,    0x522056,    0x516984,    0x50b2b2,    0x4ffbe0,    0x4f450e,
++    0x4e8e3c,    0x4dd76a,    0x4d2098,    0x4c69c6,    0x4bb2f4,    0x4afc22,
++    0x4a4550,    0x498e7e,    0x48d7ac,    0x4820da,    0x476a08,    0x46b336,
++    0x45fc64,    0x454592,    0x448ec0,    0x43d7ee,    0x43211c,    0x426a4a,
++    0x41b378,    0x40fca6,    0x4045d4,    0x3f8f02,    0x3ed830,    0x3e215e,
++    0x3d6a8c,    0x3cb3ba,    0x3bfce8,    0x3b4616,    0x3a8f44,    0x39d872,
++    0x3921a0,    0x386ace,    0x37b3fc,    0x36fd2a,    0x364658,    0x358f86,
++    0x34d8b4,    0x3421e2,    0x336b10,    0x32b43e,    0x31fd6c,    0x31469a,
++    0x308fc8,    0x2fd8f6,    0x2f2224,    0x2e6b52,    0x2db480,    0x2cfdae,
++    0x2c46dc,    0x2b900a,    0x2ad938,    0x2a2266,    0x296b94,    0x28b4c2,
++    0x27fdf0,    0x27471e,    0x26904c,    0x25d97a,    0x2522a8,    0x246bd6,
++    0x23b504,    0x22fe32,    0x224760,    0x21908e,    0x20d9bc,    0x2022ea,
++    0x1f6c18,    0x1eb546,    0x1dfe74,    0x1d47a2,    0x1c90d0,    0x1bd9fe,
++    0x1b232c,    0x1a6c5a,    0x19b588,    0x18feb6,    0x1847e4,    0x179112,
++    0x16da40,    0x16236e,    0x156c9c,    0x14b5ca,    0x13fef8,    0x134826,
++    0x129154,    0x11da82,    0x1123b0,    0x106cde,    0x0fb60c,    0x0eff3a,
++    0x0e4868,    0x0d9196,    0x0cdac4,    0x0c23f2,    0x0b6d20,    0x0ab64e,
++    0x09ff7c,    0x0948aa,    0x0891d8,    0x07db06,    0x072434,    0x066d62,
++    0x05b690,    0x04ffbe,    0x0448ec,    0x03921a,    0x02db48,    0x022476,
++    0x016da4,    0x00b6d2,    0x000000,   -0x00b6d2,   -0x016da4,   -0x022476,
++   -0x02db48,   -0x03921a,   -0x0448ec,   -0x04ffbe,   -0x05b690,   -0x066d62,
++   -0x072434,   -0x07db06,   -0x0891d8,   -0x0948aa,   -0x09ff7c,   -0x0ab64e,
++   -0x0b6d20,   -0x0c23f2,   -0x0cdac4,   -0x0d9196,   -0x0e4868,   -0x0eff3a,
++   -0x0fb60c,   -0x106cde,   -0x1123b0,   -0x11da82,   -0x129154,   -0x134826,
++   -0x13fef8,   -0x14b5ca,   -0x156c9c,   -0x16236e,   -0x16da40,   -0x179112,
++   -0x1847e4,   -0x18feb6,   -0x19b588,   -0x1a6c5a,   -0x1b232c,   -0x1bd9fe,
++   -0x1c90d0,   -0x1d47a2,   -0x1dfe74,   -0x1eb546,   -0x1f6c18,   -0x2022ea,
++   -0x20d9bc,   -0x21908e,   -0x224760,   -0x22fe32,   -0x23b504,   -0x246bd6,
++   -0x2522a8,   -0x25d97a,   -0x26904c,   -0x27471e,   -0x27fdf0,   -0x28b4c2,
++   -0x296b94,   -0x2a2266,   -0x2ad938,   -0x2b900a,   -0x2c46dc,   -0x2cfdae,
++   -0x2db480,   -0x2e6b52,   -0x2f2224,   -0x2fd8f6,   -0x308fc8,   -0x31469a,
++   -0x31fd6c,   -0x32b43e,   -0x336b10,   -0x3421e2,   -0x34d8b4,   -0x358f86,
++   -0x364658,   -0x36fd2a,   -0x37b3fc,   -0x386ace,   -0x3921a0,   -0x39d872,
++   -0x3a8f44,   -0x3b4616,   -0x3bfce8,   -0x3cb3ba,   -0x3d6a8c,   -0x3e215e,
++   -0x3ed830,   -0x3f8f02,   -0x4045d4,   -0x40fca6,   -0x41b378,   -0x426a4a,
++   -0x43211c,   -0x43d7ee,   -0x448ec0,   -0x454592,   -0x45fc64,   -0x46b336,
++   -0x476a08,   -0x4820da,   -0x48d7ac,   -0x498e7e,   -0x4a4550,   -0x4afc22,
++   -0x4bb2f4,   -0x4c69c6,   -0x4d2098,   -0x4dd76a,   -0x4e8e3c,   -0x4f450e,
++   -0x4ffbe0,   -0x50b2b2,   -0x516984,   -0x522056,   -0x52d728,   -0x538dfa,
++   -0x5444cc,   -0x54fb9e,   -0x55b270,   -0x566942,   -0x572014,   -0x57d6e6,
++   -0x588db8,   -0x59448a,   -0x59fb5c,   -0x5ab22e,
++ };
++
++const int Cb_g_tab[(MAXJSAMPLE+1) * sizeof(int)] ={
++    0x2c8d00,    0x2c34e6,    0x2bdccc,    0x2b84b2,    0x2b2c98,    0x2ad47e,
++    0x2a7c64,    0x2a244a,    0x29cc30,    0x297416,    0x291bfc,    0x28c3e2,
++    0x286bc8,    0x2813ae,    0x27bb94,    0x27637a,    0x270b60,    0x26b346,
++    0x265b2c,    0x260312,    0x25aaf8,    0x2552de,    0x24fac4,    0x24a2aa,
++    0x244a90,    0x23f276,    0x239a5c,    0x234242,    0x22ea28,    0x22920e,
++    0x2239f4,    0x21e1da,    0x2189c0,    0x2131a6,    0x20d98c,    0x208172,
++    0x202958,    0x1fd13e,    0x1f7924,    0x1f210a,    0x1ec8f0,    0x1e70d6,
++    0x1e18bc,    0x1dc0a2,    0x1d6888,    0x1d106e,    0x1cb854,    0x1c603a,
++    0x1c0820,    0x1bb006,    0x1b57ec,    0x1affd2,    0x1aa7b8,    0x1a4f9e,
++    0x19f784,    0x199f6a,    0x194750,    0x18ef36,    0x18971c,    0x183f02,
++    0x17e6e8,    0x178ece,    0x1736b4,    0x16de9a,    0x168680,    0x162e66,
++    0x15d64c,    0x157e32,    0x152618,    0x14cdfe,    0x1475e4,    0x141dca,
++    0x13c5b0,    0x136d96,    0x13157c,    0x12bd62,    0x126548,    0x120d2e,
++    0x11b514,    0x115cfa,    0x1104e0,    0x10acc6,    0x1054ac,    0x0ffc92,
++    0x0fa478,    0x0f4c5e,    0x0ef444,    0x0e9c2a,    0x0e4410,    0x0debf6,
++    0x0d93dc,    0x0d3bc2,    0x0ce3a8,    0x0c8b8e,    0x0c3374,    0x0bdb5a,
++    0x0b8340,    0x0b2b26,    0x0ad30c,    0x0a7af2,    0x0a22d8,    0x09cabe,
++    0x0972a4,    0x091a8a,    0x08c270,    0x086a56,    0x08123c,    0x07ba22,
++    0x076208,    0x0709ee,    0x06b1d4,    0x0659ba,    0x0601a0,    0x05a986,
++    0x05516c,    0x04f952,    0x04a138,    0x04491e,    0x03f104,    0x0398ea,
++    0x0340d0,    0x02e8b6,    0x02909c,    0x023882,    0x01e068,    0x01884e,
++    0x013034,    0x00d81a,    0x008000,    0x0027e6,   -0x003034,   -0x00884e,
++   -0x00e068,   -0x013882,   -0x01909c,   -0x01e8b6,   -0x0240d0,   -0x0298ea,
++   -0x02f104,   -0x03491e,   -0x03a138,   -0x03f952,   -0x04516c,   -0x04a986,
++   -0x0501a0,   -0x0559ba,   -0x05b1d4,   -0x0609ee,   -0x066208,   -0x06ba22,
++   -0x07123c,   -0x076a56,   -0x07c270,   -0x081a8a,   -0x0872a4,   -0x08cabe,
++   -0x0922d8,   -0x097af2,   -0x09d30c,   -0x0a2b26,   -0x0a8340,   -0x0adb5a,
++   -0x0b3374,   -0x0b8b8e,   -0x0be3a8,   -0x0c3bc2,   -0x0c93dc,   -0x0cebf6,
++   -0x0d4410,   -0x0d9c2a,   -0x0df444,   -0x0e4c5e,   -0x0ea478,   -0x0efc92,
++   -0x0f54ac,   -0x0facc6,   -0x1004e0,   -0x105cfa,   -0x10b514,   -0x110d2e,
++   -0x116548,   -0x11bd62,   -0x12157c,   -0x126d96,   -0x12c5b0,   -0x131dca,
++   -0x1375e4,   -0x13cdfe,   -0x142618,   -0x147e32,   -0x14d64c,   -0x152e66,
++   -0x158680,   -0x15de9a,   -0x1636b4,   -0x168ece,   -0x16e6e8,   -0x173f02,
++   -0x17971c,   -0x17ef36,   -0x184750,   -0x189f6a,   -0x18f784,   -0x194f9e,
++   -0x19a7b8,   -0x19ffd2,   -0x1a57ec,   -0x1ab006,   -0x1b0820,   -0x1b603a,
++   -0x1bb854,   -0x1c106e,   -0x1c6888,   -0x1cc0a2,   -0x1d18bc,   -0x1d70d6,
++   -0x1dc8f0,   -0x1e210a,   -0x1e7924,   -0x1ed13e,   -0x1f2958,   -0x1f8172,
++   -0x1fd98c,   -0x2031a6,   -0x2089c0,   -0x20e1da,   -0x2139f4,   -0x21920e,
++   -0x21ea28,   -0x224242,   -0x229a5c,   -0x22f276,   -0x234a90,   -0x23a2aa,
++   -0x23fac4,   -0x2452de,   -0x24aaf8,   -0x250312,   -0x255b2c,   -0x25b346,
++   -0x260b60,   -0x26637a,   -0x26bb94,   -0x2713ae,   -0x276bc8,   -0x27c3e2,
++   -0x281bfc,   -0x287416,   -0x28cc30,   -0x29244a,   -0x297c64,   -0x29d47e,
++   -0x2a2c98,   -0x2a84b2,   -0x2adccc,   -0x2b34e6,
++ };
++
++
++/* We assume that right shift corresponds to signed division by 2 with
++ * rounding towards minus infinity.  This is correct for typical "arithmetic
++ * shift" instructions that shift in copies of the sign bit.  But some
++ * C compilers implement >> with an unsigned shift.  For these machines you
++ * must define RIGHT_SHIFT_IS_UNSIGNED.
++ * RIGHT_SHIFT provides a proper signed right shift of an INT32 quantity.
++ * It is only applied with constant shift counts.  SHIFT_TEMPS must be
++ * included in the variables of any routine using RIGHT_SHIFT.
++ */
++
++#ifdef RIGHT_SHIFT_IS_UNSIGNED
++#define SHIFT_TEMPS	INT32 shift_temp;
++#define RIGHT_SHIFT(x,shft)  \
++	((shift_temp = (x)) < 0 ? \
++	 (shift_temp >> (shft)) | ((~((INT32) 0)) << (32-(shft))) : \
++	 (shift_temp >> (shft)))
++#else
++#define SHIFT_TEMPS
++#define RIGHT_SHIFT(x,shft)	((x) >> (shft))
++#endif
++
++
++METHODDEF(void)
++ycc_rgb_convert_argb (j_decompress_ptr cinfo,
++                 JSAMPIMAGE input_buf, JDIMENSION input_row,
++                 JSAMPARRAY output_buf, int num_rows)
++{
++  JDIMENSION num_cols = cinfo->output_width;
++  JSAMPLE * range_limit = cinfo->sample_range_limit;
++
++  SHIFT_TEMPS
++
++  /* This is used if we don't have SSE2 */
++
++  while (--num_rows >= 0) {
++    JSAMPROW inptr0 = input_buf[0][input_row];
++    JSAMPROW inptr1 = input_buf[1][input_row];
++    JSAMPROW inptr2 = input_buf[2][input_row];
++    input_row++;
++    uint32_t *outptr = (uint32_t *) *output_buf++;
++    for (JDIMENSION col = 0; col < num_cols; col++) {
++      int y  = GETJSAMPLE(inptr0[col]);
++      int cb = GETJSAMPLE(inptr1[col]);
++      int cr = GETJSAMPLE(inptr2[col]);
++      JSAMPLE * range_limit_y = range_limit + y;
++      /* Range-limiting is essential due to noise introduced by DCT losses. */
++      outptr[col] = 0xFF000000 |
++                    ( range_limit_y[Cr_r_tab[cr]] << 16 ) |
++                    ( range_limit_y[((int) RIGHT_SHIFT(Cb_g_tab[cb] + Cr_g_tab[cr], SCALEBITS))] << 8 ) |
++                    ( range_limit_y[Cb_b_tab[cb]] );
++    }
++  }
++}
++#endif
++
++
+ ///*************** Inverted CMYK -> RGB conversion *************************
+ /// Input is (Inverted) CMYK stored as 4 bytes per pixel.
+ /// Output is RGB stored as 3 bytes per pixel.
diff --git a/firefox/patches/patch-intl_hyphenation_glue_hnjalloc.h b/firefox/patches/patch-intl_hyphenation_glue_hnjalloc.h
new file mode 100644
index 0000000000..a1921df8e6
--- /dev/null
+++ b/firefox/patches/patch-intl_hyphenation_glue_hnjalloc.h
@@ -0,0 +1,16 @@
+$NetBSD: patch-intl_hyphenation_glue_hnjalloc.h,v 1.2 2016/06/16 12:08:21 ryoon Exp $
+
+* Support Solaris
+
+--- intl/hyphenation/glue/hnjalloc.h.orig	2015-12-04 00:36:54.000000000 +0000
++++ intl/hyphenation/glue/hnjalloc.h
+@@ -24,6 +24,9 @@
+  */
+ 
+ #include <stdio.h> /* ensure stdio.h is loaded before our macros */
++#ifdef __sun
++#include <wchar.h>
++#endif
+ 
+ #undef FILE
+ #define FILE hnjFile
diff --git a/firefox/patches/patch-intl_unicharutil_util_moz.build b/firefox/patches/patch-intl_unicharutil_util_moz.build
new file mode 100644
index 0000000000..7f58201ac6
--- /dev/null
+++ b/firefox/patches/patch-intl_unicharutil_util_moz.build
@@ -0,0 +1,12 @@
+$NetBSD: patch-intl_unicharutil_util_moz.build,v 1.6 2017/06/14 11:28:44 ryoon Exp $
+
+--- intl/unicharutil/util/moz.build.orig	2017-06-05 20:45:20.000000000 +0000
++++ intl/unicharutil/util/moz.build
+@@ -29,4 +29,7 @@ if CONFIG['ENABLE_INTL_API']:
+         'ICUUtils.cpp',
+     ]
+ 
++if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
++    CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
++
+ FINAL_LIBRARY = 'xul'
diff --git a/firefox/patches/patch-ipc_chromium_src_base_atomicops.h b/firefox/patches/patch-ipc_chromium_src_base_atomicops.h
new file mode 100644
index 0000000000..1c0edca930
--- /dev/null
+++ b/firefox/patches/patch-ipc_chromium_src_base_atomicops.h
@@ -0,0 +1,15 @@
+$NetBSD: patch-ipc_chromium_src_base_atomicops.h,v 1.1 2014/11/26 14:56:28 ryoon Exp $
+
+* Avoid invalid cast errors under NetBSD/evbearmv7hf-el.
+
+--- ipc/chromium/src/base/atomicops.h.orig	2014-11-13 22:49:59.000000000 +0000
++++ ipc/chromium/src/base/atomicops.h
+@@ -45,7 +45,7 @@ typedef int64_t Atomic64;
+ 
+ // Use AtomicWord for a machine-sized pointer.  It will use the Atomic32 or
+ // Atomic64 routines below, depending on your architecture.
+-#ifdef OS_OPENBSD
++#if defined(OS_OPENBSD) || (defined(OS_NETBSD) && defined(ARCH_CPU_ARM_FAMILY))
+ #ifdef ARCH_CPU_64_BITS
+ typedef Atomic64 AtomicWord;
+ #else
diff --git a/firefox/patches/patch-ipc_chromium_src_base_lock__impl__posix.cc b/firefox/patches/patch-ipc_chromium_src_base_lock__impl__posix.cc
new file mode 100644
index 0000000000..e9260cbd2d
--- /dev/null
+++ b/firefox/patches/patch-ipc_chromium_src_base_lock__impl__posix.cc
@@ -0,0 +1,15 @@
+$NetBSD: patch-ipc_chromium_src_base_lock__impl__posix.cc,v 1.1 2017/06/30 16:36:19 tsutsui Exp $
+
+- Fix build on NetBSD 7.1 (which doesn't have PTHREAD_PRIO_INHERIT)
+
+--- ipc/chromium/src/base/lock_impl_posix.cc.orig	2017-06-05 20:45:20.000000000 +0000
++++ ipc/chromium/src/base/lock_impl_posix.cc
+@@ -20,7 +20,7 @@ namespace internal {
+ // Lock::PriorityInheritanceAvailable still must be checked as the code may
+ // compile but the underlying platform still may not correctly support priority
+ // inheritance locks.
+-#if defined(OS_NACL) || defined(OS_ANDROID)
++#if defined(OS_NACL) || defined(OS_ANDROID) || (defined(__NetBSD__) && !defined(PTHREAD_PRIO_INHERIT))
+ #define PRIORITY_INHERITANCE_LOCKS_POSSIBLE() 0
+ #else
+ #define PRIORITY_INHERITANCE_LOCKS_POSSIBLE() 1
diff --git a/firefox/patches/patch-ipc_chromium_src_base_message__pump__libevent.cc b/firefox/patches/patch-ipc_chromium_src_base_message__pump__libevent.cc
new file mode 100644
index 0000000000..f65e8ea30e
--- /dev/null
+++ b/firefox/patches/patch-ipc_chromium_src_base_message__pump__libevent.cc
@@ -0,0 +1,22 @@
+$NetBSD: patch-ipc_chromium_src_base_message__pump__libevent.cc,v 1.8 2017/03/07 22:28:01 snj Exp $
+
+Allow older libevent
+
+--- ipc/chromium/src/base/message_pump_libevent.cc.orig	2017-02-27 08:10:53.000000000 -0800
++++ ipc/chromium/src/base/message_pump_libevent.cc	2017-03-07 14:06:51.000000000 -0800
+@@ -22,6 +22,7 @@
+ 
+ // This macro checks that the _EVENT_SIZEOF_* constants defined in
+ // ipc/chromiume/src/third_party/<platform>/event2/event-config.h are correct.
++#if 0
+ #if defined(_EVENT_SIZEOF_SHORT)
+ #define CHECK_EVENT_SIZEOF(TYPE, type) \
+     static_assert(_EVENT_SIZEOF_##TYPE == sizeof(type), \
+@@ -40,6 +41,7 @@ CHECK_EVENT_SIZEOF(PTHREAD_T, pthread_t)
+ CHECK_EVENT_SIZEOF(SHORT,     short);
+ CHECK_EVENT_SIZEOF(SIZE_T,    size_t);
+ CHECK_EVENT_SIZEOF(VOID_P,    void*);
++#endif
+ 
+ // Lifecycle of struct event
+ // Libevent uses two main data structures:
diff --git a/firefox/patches/patch-ipc_chromium_src_base_platform__thread.h b/firefox/patches/patch-ipc_chromium_src_base_platform__thread.h
new file mode 100644
index 0000000000..f1556878e2
--- /dev/null
+++ b/firefox/patches/patch-ipc_chromium_src_base_platform__thread.h
@@ -0,0 +1,16 @@
+$NetBSD: patch-ipc_chromium_src_base_platform__thread.h,v 1.6 2017/08/10 14:46:15 ryoon Exp $
+
+* Support Solaris
+
+--- ipc/chromium/src/base/platform_thread.h.orig	2017-07-31 16:20:47.000000000 +0000
++++ ipc/chromium/src/base/platform_thread.h
+@@ -27,6 +27,9 @@ typedef pthread_t PlatformThreadHandle;
+ #if defined(OS_LINUX) || defined(OS_OPENBSD) || defined(OS_SOLARIS) || defined(__GLIBC__)
+ #include <unistd.h>
+ typedef pid_t PlatformThreadId;
++#elif defined(OS_SOLARIS)
++#include <sys/lwp.h>
++typedef lwpid_t PlatformThreadId;
+ #elif defined(OS_BSD)
+ #include <sys/types.h>
+ typedef lwpid_t PlatformThreadId;
diff --git a/firefox/patches/patch-ipc_chromium_src_base_platform__thread__posix.cc b/firefox/patches/patch-ipc_chromium_src_base_platform__thread__posix.cc
new file mode 100644
index 0000000000..9d69f6b456
--- /dev/null
+++ b/firefox/patches/patch-ipc_chromium_src_base_platform__thread__posix.cc
@@ -0,0 +1,17 @@
+$NetBSD: patch-ipc_chromium_src_base_platform__thread__posix.cc,v 1.9 2017/08/10 14:46:15 ryoon Exp $
+
+* Support NetBSD
+* Support Solaris
+
+--- ipc/chromium/src/base/platform_thread_posix.cc.orig	2017-07-31 16:20:47.000000000 +0000
++++ ipc/chromium/src/base/platform_thread_posix.cc
+@@ -12,7 +12,9 @@
+ #if defined(OS_MACOSX)
+ #include <mach/mach.h>
+ #elif defined(OS_NETBSD)
++_Pragma("GCC visibility push(default)")
+ #include <lwp.h>
++_Pragma("GCC visibility pop")
+ #elif defined(OS_LINUX)
+ #include <sys/syscall.h>
+ #include <sys/prctl.h>
diff --git a/firefox/patches/patch-ipc_chromium_src_base_process__util.h b/firefox/patches/patch-ipc_chromium_src_base_process__util.h
new file mode 100644
index 0000000000..8b738ebcb3
--- /dev/null
+++ b/firefox/patches/patch-ipc_chromium_src_base_process__util.h
@@ -0,0 +1,14 @@
+$NetBSD: patch-ipc_chromium_src_base_process__util.h,v 1.6 2015/01/16 22:42:09 ryoon Exp $
+
+--- ipc/chromium/src/base/process_util.h.orig	2015-01-09 04:38:16.000000000 +0000
++++ ipc/chromium/src/base/process_util.h
+@@ -41,6 +41,9 @@
+ typedef PROCESSENTRY32 ProcessEntry;
+ typedef IO_COUNTERS IoCounters;
+ #elif defined(OS_POSIX)
++#ifndef NAME_MAX
++#define NAME_MAX _POSIX_NAME_MAX
++#endif
+ // TODO(port): we should not rely on a Win32 structure.
+ struct ProcessEntry {
+   int pid;
diff --git a/firefox/patches/patch-ipc_glue_CrossProcessSemaphore.h b/firefox/patches/patch-ipc_glue_CrossProcessSemaphore.h
new file mode 100644
index 0000000000..6563d4e3b7
--- /dev/null
+++ b/firefox/patches/patch-ipc_glue_CrossProcessSemaphore.h
@@ -0,0 +1,21 @@
+$NetBSD: patch-ipc_glue_CrossProcessSemaphore.h,v 1.1 2017/06/29 08:07:59 martin Exp $
+
+- avoid use of sem_t on NetBSD
+  http://mail-index.netbsd.org/pkgsrc-bugs/2017/06/23/msg062225.html
+
+--- ipc/glue/CrossProcessSemaphore.h.orig	2017-06-05 20:45:20.000000000 +0000
++++ ipc/glue/CrossProcessSemaphore.h
+@@ -91,7 +91,13 @@ private:
+   HANDLE mSemaphore;
+ #elif !defined(OS_MACOSX)
+   RefPtr<mozilla::ipc::SharedMemoryBasic> mSharedBuffer;
++#if defined(__NetBSD__)
++  pthread_mutex_t* mMutex;
++  pthread_cond_t* mNotZero;
++  uint32_t* mValue;
++#else
+   sem_t* mSemaphore;
++#endif
+   mozilla::Atomic<int32_t>* mRefCount;
+ #endif
+ };
diff --git a/firefox/patches/patch-ipc_glue_CrossProcessSemaphore__posix.cpp b/firefox/patches/patch-ipc_glue_CrossProcessSemaphore__posix.cpp
new file mode 100644
index 0000000000..373cb1d047
--- /dev/null
+++ b/firefox/patches/patch-ipc_glue_CrossProcessSemaphore__posix.cpp
@@ -0,0 +1,191 @@
+$NetBSD: patch-ipc_glue_CrossProcessSemaphore__posix.cpp,v 1.3 2017/09/30 05:34:12 ryoon Exp $
+
+- avoid use of sem_t on NetBSD
+  http://mail-index.netbsd.org/pkgsrc-bugs/2017/06/23/msg062225.html
+
+--- ipc/glue/CrossProcessSemaphore_posix.cpp.orig	2017-09-14 20:16:01.000000000 +0000
++++ ipc/glue/CrossProcessSemaphore_posix.cpp
+@@ -9,6 +9,11 @@
+ #include "nsDebug.h"
+ #include "nsISupportsImpl.h"
+ #include <errno.h>
++#if defined(__NetBSD__)
++#include <iostream>
++#include <unistd.h>
++#include <limits>
++#endif
+ 
+ static const uint64_t kNsPerMs = 1000000;
+ static const uint64_t kNsPerSec = 1000000000;
+@@ -17,7 +22,13 @@ namespace {
+ 
+ 
+ struct SemaphoreData {
++#if defined(__NetBSD__)
++  pthread_mutex_t mMutex;
++  pthread_cond_t mNotZero;
++  uint32_t mValue;
++#else
+   sem_t mSemaphore;
++#endif
+   mozilla::Atomic<int32_t> mRefCount;
+   uint32_t mInitialValue;
+ };
+@@ -44,13 +55,27 @@ CrossProcessSemaphore::Create(const char
+     return nullptr;
+   }
+ 
++#if defined(__NetBSD__)
++  data->mValue = aInitialValue;
++  if (pthread_mutex_init(&data->mMutex, NULL) ||
++      pthread_cond_init(&data->mNotZero, NULL) ) {
++    return nullptr;
++  }
++#else
+   if (sem_init(&data->mSemaphore, 1, aInitialValue)) {
+     return nullptr;
+   }
++#endif
+ 
+   CrossProcessSemaphore* sem = new CrossProcessSemaphore;
+   sem->mSharedBuffer = sharedBuffer;
++#if defined(__NetBSD__)
++  sem->mMutex = &data->mMutex;
++  sem->mNotZero = &data->mNotZero;
++  sem->mValue = &data->mValue;
++#else
+   sem->mSemaphore = &data->mSemaphore;
++#endif
+   sem->mRefCount = &data->mRefCount;
+   *sem->mRefCount = 1;
+ 
+@@ -84,24 +109,44 @@ CrossProcessSemaphore::Create(CrossProce
+ 
+   int32_t oldCount = data->mRefCount++;
+   if (oldCount == 0) {
++#if defined(__NetBSD__)
++    if (pthread_mutex_init(&data->mMutex, NULL) ||
++        pthread_cond_init(&data->mNotZero, NULL) ) {
++      data->mRefCount--;
++      return nullptr;
++    }
++#else
+     // The other side has already let go of their CrossProcessSemaphore, so now
+     // mSemaphore is garbage. We need to re-initialize it.
+     if (sem_init(&data->mSemaphore, 1, data->mInitialValue)) {
+       data->mRefCount--;
+       return nullptr;
+     }
++#endif
+   }
+ 
+   CrossProcessSemaphore* sem = new CrossProcessSemaphore;
+   sem->mSharedBuffer = sharedBuffer;
++#if defined(__NetBSD__)
++  sem->mMutex = &data->mMutex;
++  sem->mNotZero = &data->mNotZero;
++  sem->mValue = &data->mValue;
++#else
+   sem->mSemaphore = &data->mSemaphore;
++#endif
+   sem->mRefCount = &data->mRefCount;
+   return sem;
+ }
+ 
+ 
+ CrossProcessSemaphore::CrossProcessSemaphore()
++#if defined(__NetBSD__)
++  : mMutex (nullptr)
++  , mNotZero (nullptr)
++  , mValue (nullptr)
++#else
+   : mSemaphore(nullptr)
++#endif
+   , mRefCount(nullptr)
+ {
+   MOZ_COUNT_CTOR(CrossProcessSemaphore);
+@@ -113,17 +158,58 @@ CrossProcessSemaphore::~CrossProcessSema
+ 
+   if (oldCount == 0) {
+     // Nothing can be done if the destroy fails so ignore return code.
++#if defined(__NetBSD__)
++    (void)pthread_cond_destroy(mNotZero);
++    (void)pthread_mutex_destroy(mMutex);
++#else
+     Unused << sem_destroy(mSemaphore);
++#endif
+   }
+ 
+   MOZ_COUNT_DTOR(CrossProcessSemaphore);
+ }
+ 
++#if defined(__NetBSD__)
++static struct timespec
++makeAbsTime(const Maybe<TimeDuration>& aWaitTime) {
++  struct timespec ts;
++  if (aWaitTime.isSome()) {
++    clock_gettime(CLOCK_REALTIME, &ts);
++    ts.tv_nsec += (kNsPerMs * aWaitTime->ToMilliseconds());
++    ts.tv_sec += ts.tv_nsec / kNsPerSec;
++    ts.tv_nsec %= kNsPerSec;
++  }
++  else {
++    ts.tv_sec = std::numeric_limits<time_t>::max();
++    ts.tv_nsec = 0;
++  }
++  return ts;
++}
++#endif
++
+ bool
+ CrossProcessSemaphore::Wait(const Maybe<TimeDuration>& aWaitTime)
+ {
+   MOZ_ASSERT(*mRefCount > 0, "Attempting to wait on a semaphore with zero ref count");
+   int ret;
++#if defined(__NetBSD__)
++  struct timespec ts = makeAbsTime(aWaitTime);
++
++  ret = pthread_mutex_lock(mMutex);
++
++  if (ret == 0) {
++    while (ret == 0 && mValue == 0) {
++      ret = pthread_cond_timedwait(mNotZero, mMutex, &ts);
++      while (ret == -1 && errno == EINTR) {
++        ret = pthread_cond_timedwait(mNotZero, mMutex, &ts);
++      }
++    }
++    if (ret == 0) {
++      --(*mValue);
++    }
++    pthread_mutex_unlock(mMutex);
++  }
++#else
+   if (aWaitTime.isSome()) {
+     struct timespec ts;
+     if (clock_gettime(CLOCK_REALTIME, &ts) == -1) {
+@@ -140,6 +226,7 @@ CrossProcessSemaphore::Wait(const Maybe<
+     while ((ret = sem_wait(mSemaphore)) == -1 && errno == EINTR) {
+     }
+   }
++#endif
+   return ret == 0;
+ }
+ 
+@@ -147,7 +234,17 @@ void
+ CrossProcessSemaphore::Signal()
+ {
+   MOZ_ASSERT(*mRefCount > 0, "Attempting to signal a semaphore with zero ref count");
++#if defined(__NetBSD__)
++  int ret;
++  ret = pthread_mutex_lock(mMutex);
++  if (ret == 0) {
++    ++(*mValue);
++    pthread_cond_signal(mNotZero);
++    pthread_mutex_unlock(mMutex);
++  }
++#else
+   sem_post(mSemaphore);
++#endif
+ }
+ 
+ CrossProcessSemaphoreHandle
diff --git a/firefox/patches/patch-ipc_glue_GeckoChildProcessHost.cpp b/firefox/patches/patch-ipc_glue_GeckoChildProcessHost.cpp
new file mode 100644
index 0000000000..43a8bba495
--- /dev/null
+++ b/firefox/patches/patch-ipc_glue_GeckoChildProcessHost.cpp
@@ -0,0 +1,21 @@
+$NetBSD: patch-ipc_glue_GeckoChildProcessHost.cpp,v 1.13 2017/08/10 14:46:15 ryoon Exp $
+
+* Support Solaris
+* Fix NetBSD linking
+
+--- ipc/glue/GeckoChildProcessHost.cpp.orig	2017-07-31 16:20:47.000000000 +0000
++++ ipc/glue/GeckoChildProcessHost.cpp
+@@ -4,7 +4,13 @@
+  * License, v. 2.0. If a copy of the MPL was not distributed with this
+  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ 
++#if defined(__NetBSD__)
++_Pragma("GCC visibility push(default)")
++#endif
+ #include "GeckoChildProcessHost.h"
++#if defined(__NetBSD__)
++_Pragma("GCC visibility pop")
++#endif
+ 
+ #include "base/command_line.h"
+ #include "base/string_util.h"
diff --git a/firefox/patches/patch-js_src_build_moz.build b/firefox/patches/patch-js_src_build_moz.build
new file mode 100644
index 0000000000..30a99a315a
--- /dev/null
+++ b/firefox/patches/patch-js_src_build_moz.build
@@ -0,0 +1,12 @@
+$NetBSD: patch-js_src_build_moz.build,v 1.1 2017/08/10 14:46:15 ryoon Exp $
+
+--- js/src/build/moz.build.orig	2017-07-31 16:20:47.000000000 +0000
++++ js/src/build/moz.build
+@@ -71,7 +71,3 @@ if CONFIG['OS_ARCH'] == 'SunOS':
+     ]
+ 
+ OS_LIBS += CONFIG['REALTIME_LIBS']
+-
+-NO_EXPAND_LIBS = True
+-
+-DIST_INSTALL = True
diff --git a/firefox/patches/patch-js_src_jit_arm_Architecture-arm.cpp b/firefox/patches/patch-js_src_jit_arm_Architecture-arm.cpp
new file mode 100644
index 0000000000..2e84bd1913
--- /dev/null
+++ b/firefox/patches/patch-js_src_jit_arm_Architecture-arm.cpp
@@ -0,0 +1,15 @@
+$NetBSD: patch-js_src_jit_arm_Architecture-arm.cpp,v 1.8 2017/03/07 20:45:43 ryoon Exp $
+
+* Support NetBSD/earm
+
+--- js/src/jit/arm/Architecture-arm.cpp.orig	2015-08-24 21:53:12.000000000 +0000
++++ js/src/jit/arm/Architecture-arm.cpp
+@@ -16,7 +16,7 @@
+ #include "jit/arm/Assembler-arm.h"
+ #include "jit/RegisterSets.h"
+ 
+-#if !defined(__linux__) || defined(ANDROID) || defined(JS_SIMULATOR_ARM)
++#if !defined(__linux__) || defined(ANDROID) || defined(JS_SIMULATOR_ARM) || defined(__NetBSD__)
+ // The Android NDK and B2G do not include the hwcap.h kernel header, and it is not
+ // defined when building the simulator, so inline the header defines we need.
+ # define HWCAP_VFP        (1 << 6)
diff --git a/firefox/patches/patch-js_xpconnect_src_XPCConvert.cpp b/firefox/patches/patch-js_xpconnect_src_XPCConvert.cpp
new file mode 100644
index 0000000000..67ca9a8bd3
--- /dev/null
+++ b/firefox/patches/patch-js_xpconnect_src_XPCConvert.cpp
@@ -0,0 +1,16 @@
+$NetBSD: patch-js_xpconnect_src_XPCConvert.cpp,v 1.1 2015/03/31 10:59:43 martin Exp $
+
+Suggested workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=1147837
+Avoids a crash on big endian 64 bit architectures.
+
+--- js/xpconnect/src/XPCConvert.cpp.orig	2015-03-21 04:42:37.000000000 +0100
++++ js/xpconnect/src/XPCConvert.cpp	2015-03-30 13:49:16.000000000 +0200
+@@ -134,7 +134,7 @@
+         d.setNumber(*static_cast<const float*>(s));
+         return true;
+     case nsXPTType::T_DOUBLE:
+-        d.setNumber(*static_cast<const double*>(s));
++        d.setNumber(CanonicalizeNaN(*static_cast<const double*>(s)));
+         return true;
+     case nsXPTType::T_BOOL  :
+         d.setBoolean(*static_cast<const bool*>(s));
diff --git a/firefox/patches/patch-js_xpconnect_src_xpcprivate.h b/firefox/patches/patch-js_xpconnect_src_xpcprivate.h
new file mode 100644
index 0000000000..6e869f3c32
--- /dev/null
+++ b/firefox/patches/patch-js_xpconnect_src_xpcprivate.h
@@ -0,0 +1,17 @@
+$NetBSD: patch-js_xpconnect_src_xpcprivate.h,v 1.4 2017/08/10 14:46:15 ryoon Exp $
+
+From commit log 1.1:
+  Instantiate WeakMapPtr explicitly to get the right visibility with
+  clang.
+
+--- js/xpconnect/src/xpcprivate.h.orig	2017-07-31 16:20:47.000000000 +0000
++++ js/xpconnect/src/xpcprivate.h
+@@ -884,6 +884,8 @@ typedef nsTArray<InterpositionWhitelistP
+ /***************************************************************************/
+ // XPCWrappedNativeScope is one-to-one with a JS global object.
+ 
++extern template class JS_PUBLIC_API(JS::WeakMapPtr)<JSObject*, JSObject*>;
++
+ class nsIAddonInterposition;
+ class nsXPCComponentsBase;
+ class XPCWrappedNativeScope final
diff --git a/firefox/patches/patch-media_libcubeb_gtest_moz.build b/firefox/patches/patch-media_libcubeb_gtest_moz.build
new file mode 100644
index 0000000000..7bc06ab911
--- /dev/null
+++ b/firefox/patches/patch-media_libcubeb_gtest_moz.build
@@ -0,0 +1,12 @@
+$NetBSD: patch-media_libcubeb_gtest_moz.build,v 1.1 2017/04/27 01:49:47 ryoon Exp $
+
+--- media/libcubeb/gtest/moz.build.orig	2017-04-11 04:15:21.000000000 +0000
++++ media/libcubeb/gtest/moz.build
+@@ -71,7 +71,6 @@ elif CONFIG['OS_TARGET'] == 'OpenBSD':
+         'sndio',
+     ]
+ else:
+-    OS_LIBS += CONFIG['MOZ_ALSA_LIBS']
+     OS_LIBS += CONFIG['MOZ_PULSEAUDIO_LIBS']
+ 
+ if CONFIG['GNU_CXX']:
diff --git a/firefox/patches/patch-media_libcubeb_src_cubeb.c b/firefox/patches/patch-media_libcubeb_src_cubeb.c
new file mode 100644
index 0000000000..fbf5888fba
--- /dev/null
+++ b/firefox/patches/patch-media_libcubeb_src_cubeb.c
@@ -0,0 +1,37 @@
+$NetBSD: patch-media_libcubeb_src_cubeb.c,v 1.7 2017/08/10 14:46:15 ryoon Exp $
+
+* Support OSS audio
+
+--- media/libcubeb/src/cubeb.c.orig	2017-07-31 16:20:49.000000000 +0000
++++ media/libcubeb/src/cubeb.c
+@@ -55,6 +55,9 @@ int audiotrack_init(cubeb ** context, ch
+ #if defined(USE_KAI)
+ int kai_init(cubeb ** context, char const * context_name);
+ #endif
++#if defined(USE_OSS)
++int oss_init(cubeb ** context, char const * context_name);
++#endif
+ 
+ static int
+ validate_stream_params(cubeb_stream_params * input_stream_params,
+@@ -155,6 +158,10 @@ cubeb_init(cubeb ** context, char const 
+ #if defined(USE_KAI)
+       init_oneshot = kai_init;
+ #endif
++    } else if (!strcmp(backend_name, "oss")) {
++#if defined(USE_OSS)
++      init_oneshot = oss_init;
++#endif
+     } else {
+       /* Already set */
+     }
+@@ -199,6 +206,9 @@ cubeb_init(cubeb ** context, char const 
+ #if defined(USE_KAI)
+     kai_init,
+ #endif
++#if defined(USE_OSS)
++    oss_init,
++#endif
+   };
+   int i;
+ 
diff --git a/firefox/patches/patch-media_libcubeb_src_cubeb__alsa.c b/firefox/patches/patch-media_libcubeb_src_cubeb__alsa.c
new file mode 100644
index 0000000000..c28b8732a9
--- /dev/null
+++ b/firefox/patches/patch-media_libcubeb_src_cubeb__alsa.c
@@ -0,0 +1,561 @@
+$NetBSD: patch-media_libcubeb_src_cubeb__alsa.c,v 1.24 2017/09/30 05:34:12 ryoon Exp $
+
+* Support alsa audio under NetBSD
+* Avoid https://github.com/kinetiknz/cubeb/issues/226
+
+--- media/libcubeb/src/cubeb_alsa.c.orig	2017-09-14 20:16:05.000000000 +0000
++++ media/libcubeb/src/cubeb_alsa.c
+@@ -12,6 +12,7 @@
+ #include <sys/time.h>
+ #include <assert.h>
+ #include <limits.h>
++#include <dlfcn.h>
+ #include <poll.h>
+ #include <unistd.h>
+ #include <alsa/asoundlib.h>
+@@ -26,6 +27,52 @@
+ 
+ #define ALSA_PA_PLUGIN "ALSA <-> PulseAudio PCM I/O Plugin"
+ 
++#ifdef DISABLE_LIBASOUND_DLOPEN
++#define WRAP(x) x
++#else
++#define WRAP(x) cubeb_##x
++#define MAKE_TYPEDEF(x) static typeof(x) * cubeb_##x
++MAKE_TYPEDEF(snd_config);
++MAKE_TYPEDEF(snd_config_add);
++MAKE_TYPEDEF(snd_config_copy);
++MAKE_TYPEDEF(snd_config_delete);
++MAKE_TYPEDEF(snd_config_get_id);
++MAKE_TYPEDEF(snd_config_get_string);
++MAKE_TYPEDEF(snd_config_imake_integer);
++MAKE_TYPEDEF(snd_config_search);
++MAKE_TYPEDEF(snd_config_search_definition);
++MAKE_TYPEDEF(snd_lib_error_set_handler);
++MAKE_TYPEDEF(snd_pcm_avail_update);
++MAKE_TYPEDEF(snd_pcm_close);
++MAKE_TYPEDEF(snd_pcm_delay);
++MAKE_TYPEDEF(snd_pcm_drain);
++MAKE_TYPEDEF(snd_pcm_frames_to_bytes);
++MAKE_TYPEDEF(snd_pcm_get_params);
++/* snd_pcm_hw_params_alloca is actually a macro */
++/* MAKE_TYPEDEF(snd_pcm_hw_params_alloca); */
++MAKE_TYPEDEF(snd_pcm_hw_params_sizeof);
++#define snd_pcm_hw_params_sizeof cubeb_snd_pcm_hw_params_sizeof
++MAKE_TYPEDEF(snd_pcm_hw_params_any);
++MAKE_TYPEDEF(snd_pcm_hw_params_get_channels_max);
++MAKE_TYPEDEF(snd_pcm_hw_params_get_rate);
++MAKE_TYPEDEF(snd_pcm_hw_params_set_rate_near);
++MAKE_TYPEDEF(snd_pcm_nonblock);
++MAKE_TYPEDEF(snd_pcm_open);
++MAKE_TYPEDEF(snd_pcm_open_lconf);
++MAKE_TYPEDEF(snd_pcm_pause);
++MAKE_TYPEDEF(snd_pcm_poll_descriptors);
++MAKE_TYPEDEF(snd_pcm_poll_descriptors_count);
++MAKE_TYPEDEF(snd_pcm_poll_descriptors_revents);
++MAKE_TYPEDEF(snd_pcm_readi);
++MAKE_TYPEDEF(snd_pcm_recover);
++MAKE_TYPEDEF(snd_pcm_set_params);
++MAKE_TYPEDEF(snd_pcm_start);
++MAKE_TYPEDEF(snd_pcm_state);
++MAKE_TYPEDEF(snd_pcm_writei);
++
++#undef MAKE_TYPEDEF
++#endif
++
+ /* ALSA is not thread-safe.  snd_pcm_t instances are individually protected
+    by the owning cubeb_stream's mutex.  snd_pcm_t creation and destruction
+    is not thread-safe until ALSA 1.0.24 (see alsa-lib.git commit 91c9c8f1),
+@@ -66,6 +113,8 @@ struct cubeb {
+      workaround is not required. */
+   snd_config_t * local_config;
+   int is_pa;
++
++  void * libasound;
+ };
+ 
+ enum stream_state {
+@@ -244,8 +293,8 @@ set_timeout(struct timeval * timeout, un
+ static void
+ stream_buffer_decrement(cubeb_stream * stm, long count)
+ {
+-  char * bufremains = stm->buffer + snd_pcm_frames_to_bytes(stm->pcm, count);
+-  memmove(stm->buffer, bufremains, snd_pcm_frames_to_bytes(stm->pcm, stm->bufframes - count));
++  char * bufremains = stm->buffer + WRAP(snd_pcm_frames_to_bytes)(stm->pcm, count);
++  memmove(stm->buffer, bufremains, WRAP(snd_pcm_frames_to_bytes)(stm->pcm, stm->bufframes - count));
+   stm->bufframes -= count;
+ }
+ 
+@@ -277,9 +326,9 @@ alsa_process_stream(cubeb_stream * stm)
+   /* Call _poll_descriptors_revents() even if we don't use it
+      to let underlying plugins clear null events.  Otherwise poll()
+      may wake up again and again, producing unnecessary CPU usage. */
+-  snd_pcm_poll_descriptors_revents(stm->pcm, stm->fds, stm->nfds, &revents);
++  WRAP(snd_pcm_poll_descriptors_revents)(stm->pcm, stm->fds, stm->nfds, &revents);
+ 
+-  avail = snd_pcm_avail_update(stm->pcm);
++  avail = WRAP(snd_pcm_avail_update)(stm->pcm);
+ 
+   /* Got null event? Bail and wait for another wakeup. */
+   if (avail == 0) {
+@@ -302,7 +351,7 @@ alsa_process_stream(cubeb_stream * stm)
+       // TODO: should it be marked as DRAINING?
+     }
+ 
+-    got = snd_pcm_readi(stm->pcm, stm->buffer+stm->bufframes, avail);
++    got = WRAP(snd_pcm_readi)(stm->pcm, stm->buffer+stm->bufframes, avail);
+ 
+     if (got < 0) {
+       avail = got; // the error handler below will recover us
+@@ -346,7 +395,7 @@ alsa_process_stream(cubeb_stream * stm)
+       (!stm->other_stream || stm->other_stream->bufframes > 0)) {
+     long got = avail - stm->bufframes;
+     void * other_buffer = stm->other_stream ? stm->other_stream->buffer : NULL;
+-    char * buftail = stm->buffer + snd_pcm_frames_to_bytes(stm->pcm, stm->bufframes);
++    char * buftail = stm->buffer + WRAP(snd_pcm_frames_to_bytes)(stm->pcm, stm->bufframes);
+ 
+     /* Correct read size to the other stream available frames */
+     if (stm->other_stream && got > (snd_pcm_sframes_t) stm->other_stream->bufframes) {
+@@ -373,8 +422,8 @@ alsa_process_stream(cubeb_stream * stm)
+     long drain_frames = avail - stm->bufframes;
+     double drain_time = (double) drain_frames / stm->params.rate;
+ 
+-    char * buftail = stm->buffer + snd_pcm_frames_to_bytes(stm->pcm, stm->bufframes);
+-    memset(buftail, 0, snd_pcm_frames_to_bytes(stm->pcm, drain_frames));
++    char * buftail = stm->buffer + WRAP(snd_pcm_frames_to_bytes)(stm->pcm, stm->bufframes);
++    memset(buftail, 0, WRAP(snd_pcm_frames_to_bytes)(stm->pcm, drain_frames));
+     stm->bufframes = avail;
+ 
+     /* Mark as draining, unless we're waiting for capture */
+@@ -401,7 +450,7 @@ alsa_process_stream(cubeb_stream * stm)
+       }
+     }
+ 
+-    wrote = snd_pcm_writei(stm->pcm, stm->buffer, avail);
++    wrote = WRAP(snd_pcm_writei)(stm->pcm, stm->buffer, avail);
+     if (wrote < 0) {
+       avail = wrote; // the error handler below will recover us
+     } else {
+@@ -414,13 +463,13 @@ alsa_process_stream(cubeb_stream * stm)
+ 
+   /* Got some error? Let's try to recover the stream. */
+   if (avail < 0) {
+-    avail = snd_pcm_recover(stm->pcm, avail, 0);
++    avail = WRAP(snd_pcm_recover)(stm->pcm, avail, 0);
+ 
+     /* Capture pcm must be started after initial setup/recover */
+     if (avail >= 0 &&
+         stm->stream_type == SND_PCM_STREAM_CAPTURE &&
+-        snd_pcm_state(stm->pcm) == SND_PCM_STATE_PREPARED) {
+-      avail = snd_pcm_start(stm->pcm);
++        WRAP(snd_pcm_state)(stm->pcm) == SND_PCM_STATE_PREPARED) {
++      avail = WRAP(snd_pcm_start)(stm->pcm);
+     }
+   }
+ 
+@@ -536,26 +585,26 @@ get_slave_pcm_node(snd_config_t * lconf,
+ 
+   slave_def = NULL;
+ 
+-  r = snd_config_search(root_pcm, "slave", &slave_pcm);
++  r = WRAP(snd_config_search)(root_pcm, "slave", &slave_pcm);
+   if (r < 0) {
+     return NULL;
+   }
+ 
+-  r = snd_config_get_string(slave_pcm, &string);
++  r = WRAP(snd_config_get_string)(slave_pcm, &string);
+   if (r >= 0) {
+-    r = snd_config_search_definition(lconf, "pcm_slave", string, &slave_def);
++    r = WRAP(snd_config_search_definition)(lconf, "pcm_slave", string, &slave_def);
+     if (r < 0) {
+       return NULL;
+     }
+   }
+ 
+   do {
+-    r = snd_config_search(slave_def ? slave_def : slave_pcm, "pcm", &pcm);
++    r = WRAP(snd_config_search)(slave_def ? slave_def : slave_pcm, "pcm", &pcm);
+     if (r < 0) {
+       break;
+     }
+ 
+-    r = snd_config_get_string(slave_def ? slave_def : slave_pcm, &string);
++    r = WRAP(snd_config_get_string)(slave_def ? slave_def : slave_pcm, &string);
+     if (r < 0) {
+       break;
+     }
+@@ -564,7 +613,7 @@ get_slave_pcm_node(snd_config_t * lconf,
+     if (r < 0 || r > (int) sizeof(node_name)) {
+       break;
+     }
+-    r = snd_config_search(lconf, node_name, &pcm);
++    r = WRAP(snd_config_search)(lconf, node_name, &pcm);
+     if (r < 0) {
+       break;
+     }
+@@ -573,7 +622,7 @@ get_slave_pcm_node(snd_config_t * lconf,
+   } while (0);
+ 
+   if (slave_def) {
+-    snd_config_delete(slave_def);
++    WRAP(snd_config_delete)(slave_def);
+   }
+ 
+   return NULL;
+@@ -596,22 +645,22 @@ init_local_config_with_workaround(char c
+ 
+   lconf = NULL;
+ 
+-  if (snd_config == NULL) {
++  if (*WRAP(snd_config) == NULL) {
+     return NULL;
+   }
+ 
+-  r = snd_config_copy(&lconf, snd_config);
++  r = WRAP(snd_config_copy)(&lconf, *WRAP(snd_config));
+   if (r < 0) {
+     return NULL;
+   }
+ 
+   do {
+-    r = snd_config_search_definition(lconf, "pcm", pcm_name, &pcm_node);
++    r = WRAP(snd_config_search_definition)(lconf, "pcm", pcm_name, &pcm_node);
+     if (r < 0) {
+       break;
+     }
+ 
+-    r = snd_config_get_id(pcm_node, &string);
++    r = WRAP(snd_config_get_id)(pcm_node, &string);
+     if (r < 0) {
+       break;
+     }
+@@ -620,7 +669,7 @@ init_local_config_with_workaround(char c
+     if (r < 0 || r > (int) sizeof(node_name)) {
+       break;
+     }
+-    r = snd_config_search(lconf, node_name, &pcm_node);
++    r = WRAP(snd_config_search)(lconf, node_name, &pcm_node);
+     if (r < 0) {
+       break;
+     }
+@@ -631,12 +680,12 @@ init_local_config_with_workaround(char c
+     }
+ 
+     /* Fetch the PCM node's type, and bail out if it's not the PulseAudio plugin. */
+-    r = snd_config_search(pcm_node, "type", &node);
++    r = WRAP(snd_config_search)(pcm_node, "type", &node);
+     if (r < 0) {
+       break;
+     }
+ 
+-    r = snd_config_get_string(node, &string);
++    r = WRAP(snd_config_get_string)(node, &string);
+     if (r < 0) {
+       break;
+     }
+@@ -647,18 +696,18 @@ init_local_config_with_workaround(char c
+ 
+     /* Don't clobber an explicit existing handle_underrun value, set it only
+        if it doesn't already exist. */
+-    r = snd_config_search(pcm_node, "handle_underrun", &node);
++    r = WRAP(snd_config_search)(pcm_node, "handle_underrun", &node);
+     if (r != -ENOENT) {
+       break;
+     }
+ 
+     /* Disable pcm_pulse's asynchronous underrun handling. */
+-    r = snd_config_imake_integer(&node, "handle_underrun", 0);
++    r = WRAP(snd_config_imake_integer)(&node, "handle_underrun", 0);
+     if (r < 0) {
+       break;
+     }
+ 
+-    r = snd_config_add(pcm_node, node);
++    r = WRAP(snd_config_add)(pcm_node, node);
+     if (r < 0) {
+       break;
+     }
+@@ -666,7 +715,7 @@ init_local_config_with_workaround(char c
+     return lconf;
+   } while (0);
+ 
+-  snd_config_delete(lconf);
++  WRAP(snd_config_delete)(lconf);
+ 
+   return NULL;
+ }
+@@ -678,9 +727,9 @@ alsa_locked_pcm_open(snd_pcm_t ** pcm, c
+ 
+   pthread_mutex_lock(&cubeb_alsa_mutex);
+   if (local_config) {
+-    r = snd_pcm_open_lconf(pcm, pcm_name, stream, SND_PCM_NONBLOCK, local_config);
++    r = WRAP(snd_pcm_open_lconf)(pcm, pcm_name, stream, SND_PCM_NONBLOCK, local_config);
+   } else {
+-    r = snd_pcm_open(pcm, pcm_name, stream, SND_PCM_NONBLOCK);
++    r = WRAP(snd_pcm_open)(pcm, pcm_name, stream, SND_PCM_NONBLOCK);
+   }
+   pthread_mutex_unlock(&cubeb_alsa_mutex);
+ 
+@@ -693,7 +742,7 @@ alsa_locked_pcm_close(snd_pcm_t * pcm)
+   int r;
+ 
+   pthread_mutex_lock(&cubeb_alsa_mutex);
+-  r = snd_pcm_close(pcm);
++  r = WRAP(snd_pcm_close)(pcm);
+   pthread_mutex_unlock(&cubeb_alsa_mutex);
+ 
+   return r;
+@@ -756,12 +805,65 @@ alsa_init(cubeb ** context, char const *
+   pthread_attr_t attr;
+   snd_pcm_t * dummy;
+ 
++  void * libasound = NULL;
++
++#ifndef DISABLE_LIBASOUND_DLOPEN
++  libasound = dlopen("libasound.so", RTLD_LAZY);
++  if (!libasound) {
++    return CUBEB_ERROR;
++  }
++
++#define LOAD(x) do { \
++    cubeb_##x = dlsym(libasound, #x); \
++    if (!cubeb_##x) { \
++      dlclose(libasound); \
++      return CUBEB_ERROR; \
++    } \
++  } while(0)
++
++  LOAD(snd_config);
++  LOAD(snd_config_add);
++  LOAD(snd_config_copy);
++  LOAD(snd_config_delete);
++  LOAD(snd_config_get_id);
++  LOAD(snd_config_get_string);
++  LOAD(snd_config_imake_integer);
++  LOAD(snd_config_search);
++  LOAD(snd_config_search_definition);
++  LOAD(snd_lib_error_set_handler);
++  LOAD(snd_pcm_avail_update);
++  LOAD(snd_pcm_close);
++  LOAD(snd_pcm_delay);
++  LOAD(snd_pcm_drain);
++  LOAD(snd_pcm_frames_to_bytes);
++  LOAD(snd_pcm_get_params);
++  /* snd_pcm_hw_params_alloca is actually a macro */
++  /* LOAD(snd_pcm_hw_params_alloca); */
++  LOAD(snd_pcm_hw_params_sizeof);
++  LOAD(snd_pcm_hw_params_any);
++  LOAD(snd_pcm_hw_params_get_channels_max);
++  LOAD(snd_pcm_hw_params_get_rate);
++  LOAD(snd_pcm_hw_params_set_rate_near);
++  LOAD(snd_pcm_nonblock);
++  LOAD(snd_pcm_open);
++  LOAD(snd_pcm_open_lconf);
++  LOAD(snd_pcm_pause);
++  LOAD(snd_pcm_poll_descriptors);
++  LOAD(snd_pcm_poll_descriptors_count);
++  LOAD(snd_pcm_poll_descriptors_revents);
++  LOAD(snd_pcm_recover);
++  LOAD(snd_pcm_set_params);
++  LOAD(snd_pcm_state);
++  LOAD(snd_pcm_writei);
++
++#undef LOAD
++#endif
+   assert(context);
+   *context = NULL;
+ 
+   pthread_mutex_lock(&cubeb_alsa_mutex);
+   if (!cubeb_alsa_error_handler_set) {
+-    snd_lib_error_set_handler(silent_error_handler);
++    WRAP(snd_lib_error_set_handler)(silent_error_handler);
+     cubeb_alsa_error_handler_set = 1;
+   }
+   pthread_mutex_unlock(&cubeb_alsa_mutex);
+@@ -769,6 +871,8 @@ alsa_init(cubeb ** context, char const *
+   ctx = calloc(1, sizeof(*ctx));
+   assert(ctx);
+ 
++  ctx->libasound = libasound;
++
+   ctx->ops = &alsa_ops;
+ 
+   r = pthread_mutex_init(&ctx->mutex, NULL);
+@@ -818,7 +922,7 @@ alsa_init(cubeb ** context, char const *
+        config fails with EINVAL, the PA PCM is too old for this workaround. */
+     if (r == -EINVAL) {
+       pthread_mutex_lock(&cubeb_alsa_mutex);
+-      snd_config_delete(ctx->local_config);
++      WRAP(snd_config_delete)(ctx->local_config);
+       pthread_mutex_unlock(&cubeb_alsa_mutex);
+       ctx->local_config = NULL;
+     } else if (r >= 0) {
+@@ -858,9 +962,13 @@ alsa_destroy(cubeb * ctx)
+   pthread_mutex_destroy(&ctx->mutex);
+   free(ctx->fds);
+ 
++  if (ctx->libasound) {
++    dlclose(ctx->libasound);
++  }
++
+   if (ctx->local_config) {
+     pthread_mutex_lock(&cubeb_alsa_mutex);
+-    snd_config_delete(ctx->local_config);
++    WRAP(snd_config_delete)(ctx->local_config);
+     pthread_mutex_unlock(&cubeb_alsa_mutex);
+   }
+ 
+@@ -943,7 +1051,7 @@ alsa_stream_init_single(cubeb * ctx, cub
+     return CUBEB_ERROR;
+   }
+ 
+-  r = snd_pcm_nonblock(stm->pcm, 1);
++  r = WRAP(snd_pcm_nonblock)(stm->pcm, 1);
+   assert(r == 0);
+ 
+   latency_us = latency_frames * 1e6 / stm->params.rate;
+@@ -956,7 +1064,7 @@ alsa_stream_init_single(cubeb * ctx, cub
+     latency_us = latency_us < min_latency ? min_latency: latency_us;
+   }
+ 
+-  r = snd_pcm_set_params(stm->pcm, format, SND_PCM_ACCESS_RW_INTERLEAVED,
++  r = WRAP(snd_pcm_set_params)(stm->pcm, format, SND_PCM_ACCESS_RW_INTERLEAVED,
+                          stm->params.channels, stm->params.rate, 1,
+                          latency_us);
+   if (r < 0) {
+@@ -964,20 +1072,20 @@ alsa_stream_init_single(cubeb * ctx, cub
+     return CUBEB_ERROR_INVALID_FORMAT;
+   }
+ 
+-  r = snd_pcm_get_params(stm->pcm, &stm->buffer_size, &period_size);
++  r = WRAP(snd_pcm_get_params)(stm->pcm, &stm->buffer_size, &period_size);
+   assert(r == 0);
+ 
+   /* Double internal buffer size to have enough space when waiting for the other side of duplex connection */
+   stm->buffer_size *= 2;
+-  stm->buffer = calloc(1, snd_pcm_frames_to_bytes(stm->pcm, stm->buffer_size));
++  stm->buffer = calloc(1, WRAP(snd_pcm_frames_to_bytes)(stm->pcm, stm->buffer_size));
+   assert(stm->buffer);
+ 
+-  stm->nfds = snd_pcm_poll_descriptors_count(stm->pcm);
++  stm->nfds = WRAP(snd_pcm_poll_descriptors_count)(stm->pcm);
+   assert(stm->nfds > 0);
+ 
+   stm->saved_fds = calloc(stm->nfds, sizeof(struct pollfd));
+   assert(stm->saved_fds);
+-  r = snd_pcm_poll_descriptors(stm->pcm, stm->saved_fds, stm->nfds);
++  r = WRAP(snd_pcm_poll_descriptors)(stm->pcm, stm->saved_fds, stm->nfds);
+   assert((nfds_t) r == stm->nfds);
+ 
+   if (alsa_register_stream(ctx, stm) != 0) {
+@@ -1049,7 +1157,7 @@ alsa_stream_destroy(cubeb_stream * stm)
+   pthread_mutex_lock(&stm->mutex);
+   if (stm->pcm) {
+     if (stm->state == DRAINING) {
+-      snd_pcm_drain(stm->pcm);
++      WRAP(snd_pcm_drain)(stm->pcm);
+     }
+     alsa_locked_pcm_close(stm->pcm);
+     stm->pcm = NULL;
+@@ -1095,12 +1203,12 @@ alsa_get_max_channel_count(cubeb * ctx, 
+ 
+   assert(stm);
+ 
+-  r = snd_pcm_hw_params_any(stm->pcm, hw_params);
++  r = WRAP(snd_pcm_hw_params_any)(stm->pcm, hw_params);
+   if (r < 0) {
+     return CUBEB_ERROR;
+   }
+ 
+-  r = snd_pcm_hw_params_get_channels_max(hw_params, max_channels);
++  r = WRAP(snd_pcm_hw_params_get_channels_max)(hw_params, max_channels);
+   if (r < 0) {
+     return CUBEB_ERROR;
+   }
+@@ -1121,34 +1229,34 @@ alsa_get_preferred_sample_rate(cubeb * c
+ 
+   /* get a pcm, disabling resampling, so we get a rate the
+    * hardware/dmix/pulse/etc. supports. */
+-  r = snd_pcm_open(&pcm, CUBEB_ALSA_PCM_NAME, SND_PCM_STREAM_PLAYBACK, SND_PCM_NO_AUTO_RESAMPLE);
++  r = WRAP(snd_pcm_open)(&pcm, CUBEB_ALSA_PCM_NAME, SND_PCM_STREAM_PLAYBACK, SND_PCM_NO_AUTO_RESAMPLE);
+   if (r < 0) {
+     return CUBEB_ERROR;
+   }
+ 
+-  r = snd_pcm_hw_params_any(pcm, hw_params);
++  r = WRAP(snd_pcm_hw_params_any)(pcm, hw_params);
+   if (r < 0) {
+-    snd_pcm_close(pcm);
++    WRAP(snd_pcm_close)(pcm);
+     return CUBEB_ERROR;
+   }
+ 
+-  r = snd_pcm_hw_params_get_rate(hw_params, rate, &dir);
++  r = WRAP(snd_pcm_hw_params_get_rate)(hw_params, rate, &dir);
+   if (r >= 0) {
+     /* There is a default rate: use it. */
+-    snd_pcm_close(pcm);
++    WRAP(snd_pcm_close)(pcm);
+     return CUBEB_OK;
+   }
+ 
+   /* Use a common rate, alsa may adjust it based on hw/etc. capabilities. */
+   *rate = 44100;
+ 
+-  r = snd_pcm_hw_params_set_rate_near(pcm, hw_params, rate, NULL);
++  r = WRAP(snd_pcm_hw_params_set_rate_near)(pcm, hw_params, rate, NULL);
+   if (r < 0) {
+-    snd_pcm_close(pcm);
++    WRAP(snd_pcm_close)(pcm);
+     return CUBEB_ERROR;
+   }
+ 
+-  snd_pcm_close(pcm);
++  WRAP(snd_pcm_close)(pcm);
+ 
+   return CUBEB_OK;
+ }
+@@ -1181,10 +1289,10 @@ alsa_stream_start(cubeb_stream * stm)
+   pthread_mutex_lock(&stm->mutex);
+   /* Capture pcm must be started after initial setup/recover */
+   if (stm->stream_type == SND_PCM_STREAM_CAPTURE &&
+-      snd_pcm_state(stm->pcm) == SND_PCM_STATE_PREPARED) {
+-    snd_pcm_start(stm->pcm);
++      WRAP(snd_pcm_state)(stm->pcm) == SND_PCM_STATE_PREPARED) {
++    WRAP(snd_pcm_start)(stm->pcm);
+   }
+-  snd_pcm_pause(stm->pcm, 0);
++  WRAP(snd_pcm_pause)(stm->pcm, 0);
+   gettimeofday(&stm->last_activity, NULL);
+   pthread_mutex_unlock(&stm->mutex);
+ 
+@@ -1224,7 +1332,7 @@ alsa_stream_stop(cubeb_stream * stm)
+   pthread_mutex_unlock(&ctx->mutex);
+ 
+   pthread_mutex_lock(&stm->mutex);
+-  snd_pcm_pause(stm->pcm, 1);
++  WRAP(snd_pcm_pause)(stm->pcm, 1);
+   pthread_mutex_unlock(&stm->mutex);
+ 
+   return CUBEB_OK;
+@@ -1240,8 +1348,8 @@ alsa_stream_get_position(cubeb_stream * 
+   pthread_mutex_lock(&stm->mutex);
+ 
+   delay = -1;
+-  if (snd_pcm_state(stm->pcm) != SND_PCM_STATE_RUNNING ||
+-      snd_pcm_delay(stm->pcm, &delay) != 0) {
++  if (WRAP(snd_pcm_state)(stm->pcm) != SND_PCM_STATE_RUNNING ||
++      WRAP(snd_pcm_delay)(stm->pcm, &delay) != 0) {
+     *position = stm->last_position;
+     pthread_mutex_unlock(&stm->mutex);
+     return CUBEB_OK;
+@@ -1266,7 +1374,7 @@ alsa_stream_get_latency(cubeb_stream * s
+   snd_pcm_sframes_t delay;
+   /* This function returns the delay in frames until a frame written using
+      snd_pcm_writei is sent to the DAC. The DAC delay should be < 1ms anyways. */
+-  if (snd_pcm_delay(stm->pcm, &delay)) {
++  if (WRAP(snd_pcm_delay)(stm->pcm, &delay)) {
+     return CUBEB_ERROR;
+   }
+ 
diff --git a/firefox/patches/patch-media_libcubeb_src_cubeb__oss.c b/firefox/patches/patch-media_libcubeb_src_cubeb__oss.c
new file mode 100644
index 0000000000..a12d451dd5
--- /dev/null
+++ b/firefox/patches/patch-media_libcubeb_src_cubeb__oss.c
@@ -0,0 +1,452 @@
+$NetBSD: patch-media_libcubeb_src_cubeb__oss.c,v 1.9 2017/04/27 01:49:47 ryoon Exp $
+
+* Restore OSS audio support code
+
+--- media/libcubeb/src/cubeb_oss.c.orig	2017-04-23 13:26:11.608534944 +0000
++++ media/libcubeb/src/cubeb_oss.c
+@@ -0,0 +1,445 @@
++/*
++ * Copyright © 2014 Mozilla Foundation
++ *
++ * This program is made available under an ISC-style license.  See the
++ * accompanying file LICENSE for details.
++ */
++#if defined(HAVE_SYS_SOUNDCARD_H)
++#include <sys/soundcard.h>
++#else
++#include <soundcard.h>
++#endif
++#include <unistd.h>
++#include <stdlib.h>
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <fcntl.h>
++#include <sys/ioctl.h>
++#include <errno.h>
++#include <pthread.h>
++#include <stdio.h>
++#include <assert.h>
++
++#include "cubeb/cubeb.h"
++#include "cubeb-internal.h"
++
++#ifndef CUBEB_OSS_DEFAULT_OUTPUT
++#define CUBEB_OSS_DEFAULT_OUTPUT "/dev/dsp"
++#endif
++
++#define OSS_BUFFER_SIZE 1024
++
++struct cubeb {
++  struct cubeb_ops const * ops;
++};
++
++struct cubeb_stream {
++  cubeb * context;
++
++  cubeb_data_callback data_callback;
++  cubeb_state_callback state_callback;
++  void * user_ptr;
++  float volume;
++  float panning;
++
++  pthread_mutex_t state_mutex;
++  pthread_cond_t state_cond;
++
++  int running;
++  int stopped;
++  int floating;
++
++  /* These two vars are needed to support old versions of OSS */
++  unsigned int position_bytes;
++  unsigned int last_position_bytes;
++
++  uint64_t written_frags; /* The number of fragments written to /dev/dsp */
++  uint64_t missed_frags; /* fragments output with stopped stream */
++
++  cubeb_stream_params params;
++  int fd;
++  pthread_t th;
++};
++
++static struct cubeb_ops const oss_ops;
++
++int oss_init(cubeb ** context, char const * context_name)
++{
++  cubeb* ctx = (cubeb*)malloc(sizeof(cubeb));
++  ctx->ops = &oss_ops;
++  *context = ctx;
++  return CUBEB_OK;
++}
++
++static void oss_destroy(cubeb *ctx)
++{
++  free(ctx);
++}
++
++static char const * oss_get_backend_id(cubeb * context)
++{
++  static char oss_name[] = "oss";
++  return oss_name;
++}
++
++static int oss_get_max_channel_count(cubeb * ctx, uint32_t * max_channels)
++{
++  *max_channels = 2; /* Let's support only stereo for now */
++  return CUBEB_OK;
++}
++
++static int oss_get_min_latency(cubeb * context, cubeb_stream_params params,
++                               uint32_t * latency_frames)
++{
++  (void)context;
++  /* 40ms is a big enough number to work ok */
++  *latency_frames = 40 * params.rate / 1000;
++  return CUBEB_OK;
++}
++
++static int oss_get_preferred_sample_rate(cubeb *context, uint32_t * rate)
++{
++  /* 48000 seems a prefered choice for most audio devices
++   * and a good choice for OSS */
++  *rate = 48000;
++  return CUBEB_OK;
++}
++
++static void run_state_callback(cubeb_stream *stream, cubeb_state state)
++{
++  if (stream->state_callback) {
++    stream->state_callback(stream, stream->user_ptr, state);
++  }
++}
++
++static long run_data_callback(cubeb_stream *stream, void *buffer, long nframes)
++{
++  long got = 0;
++  pthread_mutex_lock(&stream->state_mutex);
++  if (stream->data_callback && stream->running && !stream->stopped) {
++    pthread_mutex_unlock(&stream->state_mutex);
++    got = stream->data_callback(stream, stream->user_ptr, NULL, buffer, nframes);
++  } else {
++    pthread_mutex_unlock(&stream->state_mutex);
++  }
++  return got;
++}
++
++static void apply_volume_int(int16_t* buffer, unsigned int n,
++                             float volume, float panning)
++{
++  float left = volume;
++  float right = volume;
++  unsigned int i;
++  int pan[2];
++  if (panning<0) {
++    right *= (1+panning);
++  } else {
++    left *= (1-panning);
++  }
++  pan[0] = 128.0*left;
++  pan[1] = 128.0*right;
++  for(i=0; i<n; i++){
++    buffer[i] = ((int)buffer[i])*pan[i%2]/128;
++  }
++}
++
++static void apply_volume_float(float* buffer, unsigned int n,
++                               float volume, float panning)
++{
++  float left = volume;
++  float right = volume;
++  unsigned int i;
++  float pan[2];
++  if (panning<0) {
++    right *= (1+panning);
++  } else {
++    left *= (1-panning);
++  }
++  pan[0] = left;
++  pan[1] = right;
++  for(i=0; i<n; i++){
++    buffer[i] = buffer[i]*pan[i%2];
++  }
++}
++
++
++static void *writer(void *stm)
++{
++  cubeb_stream* stream = (cubeb_stream*)stm;
++  int16_t buffer[OSS_BUFFER_SIZE];
++  float f_buffer[OSS_BUFFER_SIZE];
++  int got;
++  unsigned long i;
++  while (stream->running) {
++    pthread_mutex_lock(&stream->state_mutex);
++    if (stream->stopped) {
++      pthread_mutex_unlock(&stream->state_mutex);
++      run_state_callback(stream, CUBEB_STATE_STOPPED);
++      pthread_mutex_lock(&stream->state_mutex);
++      while (stream->stopped) {
++        pthread_cond_wait(&stream->state_cond, &stream->state_mutex);
++      }
++      pthread_mutex_unlock(&stream->state_mutex);
++      run_state_callback(stream, CUBEB_STATE_STARTED);
++      continue;
++    }
++    pthread_mutex_unlock(&stream->state_mutex);
++    if (stream->floating) {
++      got = run_data_callback(stream, f_buffer,
++                              OSS_BUFFER_SIZE/stream->params.channels);
++      apply_volume_float(f_buffer, got*stream->params.channels,
++                                   stream->volume, stream->panning);
++      for (i=0; i<((unsigned long)got)*stream->params.channels; i++) {
++        /* Clipping is prefered to overflow */
++	if(f_buffer[i]>=1.0){
++	  f_buffer[i]=1.0;
++	}
++        if(f_buffer[i]<=-1.0){
++	  f_buffer[i]=-1.0;
++	}
++        /* One might think that multipling by 32767.0 is logical but results in clipping */
++        buffer[i] = f_buffer[i]*32767.0;
++      }
++    } else {
++      got = run_data_callback(stream, buffer,
++                              OSS_BUFFER_SIZE/stream->params.channels);
++      apply_volume_int(buffer, got*stream->params.channels,
++                               stream->volume, stream->panning);
++    }
++    if (got<0) {
++      run_state_callback(stream, CUBEB_STATE_ERROR);
++      break;
++    }
++    if (!got) {
++      run_state_callback(stream, CUBEB_STATE_DRAINED);
++    }
++    if (got) {
++      size_t i = 0;
++      size_t s = got*stream->params.channels*sizeof(int16_t);
++      while (i < s) {
++        ssize_t n = write(stream->fd, ((char*)buffer) + i, s - i);
++        if (n<=0) {
++          run_state_callback(stream, CUBEB_STATE_ERROR);
++          break;
++        }
++        i+=n;
++      }
++      stream->written_frags+=got;
++    }
++  }
++  return NULL;
++}
++
++static void oss_try_set_latency(cubeb_stream* stream, unsigned int latency)
++{
++  unsigned int latency_bytes, n_frag;
++  int frag;
++  /* fragment size of 1024 is a good choice with good chances to be accepted */
++  unsigned int frag_log=10; /* 2^frag_log = fragment size */
++  latency_bytes =
++    latency*stream->params.rate*stream->params.channels*sizeof(uint16_t)/1000;
++  n_frag = latency_bytes>>frag_log;
++  frag = (n_frag<<16) | frag_log;
++  /* Even if this fails we wish to continue, not checking for errors */
++  ioctl(stream->fd, SNDCTL_DSP_SETFRAGMENT, &frag);
++}
++
++static int oss_stream_init(cubeb * context, cubeb_stream ** stm,
++                           char const * stream_name,
++                           cubeb_devid input_device,
++                           cubeb_stream_params * input_stream_params,
++                           cubeb_devid output_device,
++                           cubeb_stream_params * output_stream_params,
++                           unsigned int latency,
++                           cubeb_data_callback data_callback,
++                           cubeb_state_callback state_callback, void * user_ptr)
++{
++  cubeb_stream* stream = (cubeb_stream*)malloc(sizeof(cubeb_stream));
++  stream->context = context;
++  stream->data_callback = data_callback;
++  stream->state_callback = state_callback;
++  stream->user_ptr = user_ptr;
++
++  assert(!input_stream_params && "not supported.");
++  if (input_device || output_device) {
++    /* Device selection not yet implemented. */
++    return CUBEB_ERROR_DEVICE_UNAVAILABLE;
++  }
++
++  if ((stream->fd = open(CUBEB_OSS_DEFAULT_OUTPUT, O_WRONLY)) == -1) {
++    free(stream);
++    return CUBEB_ERROR;
++  }
++#define SET(what, to) do { unsigned int i = to; \
++    int j = ioctl(stream->fd, what, &i); \
++    if (j == -1 || i != to) { \
++      close(stream->fd); \
++      free(stream); \
++      return CUBEB_ERROR_INVALID_FORMAT; } } while (0)
++
++  stream->params = *output_stream_params;
++  stream->volume = 1.0;
++  stream->panning = 0.0;
++
++  oss_try_set_latency(stream, latency); 
++
++  stream->floating = 0;
++  SET(SNDCTL_DSP_CHANNELS, stream->params.channels);
++  SET(SNDCTL_DSP_SPEED, stream->params.rate);
++  switch (stream->params.format) {
++    case CUBEB_SAMPLE_S16LE:
++      SET(SNDCTL_DSP_SETFMT, AFMT_S16_LE);
++    break;
++    case CUBEB_SAMPLE_S16BE:
++      SET(SNDCTL_DSP_SETFMT, AFMT_S16_BE);
++    break;
++    case CUBEB_SAMPLE_FLOAT32LE:
++      SET(SNDCTL_DSP_SETFMT, AFMT_S16_NE);
++      stream->floating = 1;
++    break;
++    default:
++      close(stream->fd);
++      free(stream);
++      return CUBEB_ERROR;
++  }
++
++
++  pthread_mutex_init(&stream->state_mutex, NULL);
++  pthread_cond_init(&stream->state_cond, NULL);
++
++  stream->running = 1;
++  stream->stopped = 1;
++  stream->position_bytes = 0;
++  stream->last_position_bytes = 0;
++  stream->written_frags = 0;
++  stream->missed_frags = 0;
++
++  pthread_create(&stream->th, NULL, writer, (void*)stream);
++
++  *stm = stream;
++
++  return CUBEB_OK;
++}
++
++static void oss_stream_destroy(cubeb_stream * stream)
++{
++  pthread_mutex_lock(&stream->state_mutex);
++
++  stream->running = 0;
++  stream->stopped = 0;
++  pthread_cond_signal(&stream->state_cond);
++
++  pthread_mutex_unlock(&stream->state_mutex);
++
++  pthread_join(stream->th, NULL);
++
++  pthread_mutex_destroy(&stream->state_mutex);
++  pthread_cond_destroy(&stream->state_cond);
++  close(stream->fd);
++  free(stream);
++}
++
++static int oss_stream_get_latency(cubeb_stream * stream, uint32_t * latency)
++{
++  if (ioctl(stream->fd, SNDCTL_DSP_GETODELAY, latency)==-1) {
++    return CUBEB_ERROR;
++  }
++  /* Convert latency from bytes to frames */
++  *latency /= stream->params.channels*sizeof(int16_t);
++  return CUBEB_OK;
++}
++
++
++static int oss_stream_current_optr(cubeb_stream * stream, uint64_t * position)
++{
++  count_info ci;
++  /* Unfortunately, this ioctl is only available in OSS 4.x */
++#ifdef SNDCTL_DSP_CURRENT_OPTR
++  oss_count_t count;
++  if (ioctl(stream->fd, SNDCTL_DSP_CURRENT_OPTR, &count) != -1) {
++    *position = count.samples;// + count.fifo_samples;
++    return CUBEB_OK;
++  }
++#endif
++  /* Fall back to this ioctl in case the previous one fails */
++  if (ioctl(stream->fd, SNDCTL_DSP_GETOPTR, &ci) == -1) {
++    return CUBEB_ERROR;
++  }
++  /* ci.bytes is only 32 bit and will start to wrap after arithmetic overflow */
++  stream->position_bytes += ci.bytes - stream->last_position_bytes;
++  stream->last_position_bytes = ci.bytes;
++  *position = stream->position_bytes/stream->params.channels/sizeof(int16_t);
++  return CUBEB_OK;
++}
++
++static int oss_stream_get_position(cubeb_stream * stream, uint64_t * position)
++{
++  if ( oss_stream_current_optr(stream, position) == CUBEB_OK ){
++    *position -= stream->missed_frags;
++    return CUBEB_OK;
++  }
++  /* If no correct method to get position works we resort to this */
++  *position = stream->written_frags;
++  return CUBEB_OK;
++}
++
++
++static int oss_stream_start(cubeb_stream * stream)
++{
++  pthread_mutex_lock(&stream->state_mutex);
++  if (stream->stopped) {
++    uint64_t ptr;
++    oss_stream_current_optr(stream, &ptr);
++    stream->missed_frags = ptr - stream->written_frags;
++    stream->stopped = 0;
++    pthread_cond_signal(&stream->state_cond);
++  }
++  pthread_mutex_unlock(&stream->state_mutex);
++  return CUBEB_OK;
++}
++
++static int oss_stream_stop(cubeb_stream * stream)
++{
++  pthread_mutex_lock(&stream->state_mutex);
++  stream->stopped = 1;
++  pthread_mutex_unlock(&stream->state_mutex);
++  return CUBEB_OK;
++}
++
++int oss_stream_set_panning(cubeb_stream * stream, float panning)
++{
++  if (stream->params.channels == 2) {
++    stream->panning=panning;
++  }
++  return CUBEB_OK;
++}
++
++int oss_stream_set_volume(cubeb_stream * stream, float volume)
++{
++  stream->volume=volume;
++  return CUBEB_OK;
++}
++
++static struct cubeb_ops const oss_ops = {
++  .init = oss_init,
++  .get_backend_id = oss_get_backend_id,
++  .get_max_channel_count = oss_get_max_channel_count,
++  .get_min_latency = oss_get_min_latency,
++  .get_preferred_sample_rate = oss_get_preferred_sample_rate,
++  .get_preferred_channel_layout = NULL,
++  .destroy = oss_destroy,
++  .enumerate_devices = NULL,
++  .stream_init = oss_stream_init,
++  .stream_destroy = oss_stream_destroy,
++  .stream_start = oss_stream_start,
++  .stream_stop = oss_stream_stop,
++  .stream_get_position = oss_stream_get_position,
++  .stream_get_latency = oss_stream_get_latency,
++  .stream_set_volume = oss_stream_set_volume,
++  .stream_set_panning = oss_stream_set_panning,
++  .stream_get_current_device = NULL,
++  .stream_device_destroy = NULL,
++  .stream_register_device_changed_callback = NULL,
++  .register_device_collection_changed = NULL
++};
diff --git a/firefox/patches/patch-media_libcubeb_src_moz.build b/firefox/patches/patch-media_libcubeb_src_moz.build
new file mode 100644
index 0000000000..5dd89ddd0d
--- /dev/null
+++ b/firefox/patches/patch-media_libcubeb_src_moz.build
@@ -0,0 +1,28 @@
+$NetBSD: patch-media_libcubeb_src_moz.build,v 1.13 2017/09/30 05:34:12 ryoon Exp $
+
+* Add OSS audio support
+* Support system library
+
+--- media/libcubeb/src/moz.build.orig	2017-07-31 16:20:49.000000000 +0000
++++ media/libcubeb/src/moz.build
+@@ -22,6 +22,12 @@ if CONFIG['MOZ_ALSA']:
+     ]
+     DEFINES['USE_ALSA'] = True
+ 
++if CONFIG['MOZ_OSS']:
++    SOURCES += [
++        'cubeb_oss.c',
++    ]
++    DEFINES['USE_OSS'] = True
++
+ if CONFIG['MOZ_PULSEAUDIO'] or CONFIG['MOZ_JACK']:
+     SOURCES += [
+         'cubeb_resampler.cpp',
+@@ -85,6 +91,7 @@ if CONFIG['OS_TARGET'] == 'Android':
+ 
+ FINAL_LIBRARY = 'gkmedias'
+ 
++CFLAGS += CONFIG['MOZ_OSS_CFLAGS']
+ CFLAGS += CONFIG['MOZ_ALSA_CFLAGS']
+ CFLAGS += CONFIG['MOZ_PULSEAUDIO_CFLAGS']
+ 
diff --git a/firefox/patches/patch-media_libcubeb_update.sh b/firefox/patches/patch-media_libcubeb_update.sh
new file mode 100644
index 0000000000..98237701a5
--- /dev/null
+++ b/firefox/patches/patch-media_libcubeb_update.sh
@@ -0,0 +1,12 @@
+$NetBSD: patch-media_libcubeb_update.sh,v 1.3 2017/08/10 14:46:15 ryoon Exp $
+
+--- media/libcubeb/update.sh.orig	2017-07-31 16:20:49.000000000 +0000
++++ media/libcubeb/update.sh
+@@ -20,6 +20,7 @@ cp $1/src/cubeb_log.h src
+ cp $1/src/cubeb_mixer.cpp src
+ cp $1/src/cubeb_mixer.h src
+ cp $1/src/cubeb_opensl.c src
++cp $1/src/cubeb_oss.c src
+ cp $1/src/cubeb_osx_run_loop.h src
+ cp $1/src/cubeb_panner.cpp src
+ cp $1/src/cubeb_panner.h src
diff --git a/firefox/patches/patch-media_libsoundtouch_src_cpu__detect__x86.cpp b/firefox/patches/patch-media_libsoundtouch_src_cpu__detect__x86.cpp
new file mode 100644
index 0000000000..ddc03f5517
--- /dev/null
+++ b/firefox/patches/patch-media_libsoundtouch_src_cpu__detect__x86.cpp
@@ -0,0 +1,15 @@
+$NetBSD: patch-media_libsoundtouch_src_cpu__detect__x86.cpp,v 1.5 2014/04/30 15:07:18 ryoon Exp $
+
+--- media/libsoundtouch/src/cpu_detect_x86.cpp.orig	2014-04-18 02:03:48.000000000 +0000
++++ media/libsoundtouch/src/cpu_detect_x86.cpp
+@@ -130,7 +130,9 @@ uint detectCPUextensions(void)
+ #endif
+ 
+     return res & ~_dwDisabledISA;
+-
++#elif defined(__GNUC__)
++    // No cpuid.h --> no cpuid support
++    return 0;
+ #else
+ 
+ /// One of these is true:
diff --git a/firefox/patches/patch-media_libsoundtouch_src_soundtouch__perms.h b/firefox/patches/patch-media_libsoundtouch_src_soundtouch__perms.h
new file mode 100644
index 0000000000..e5e2f56c60
--- /dev/null
+++ b/firefox/patches/patch-media_libsoundtouch_src_soundtouch__perms.h
@@ -0,0 +1,14 @@
+$NetBSD: patch-media_libsoundtouch_src_soundtouch__perms.h,v 1.1 2016/12/03 09:58:26 ryoon Exp $
+
+--- media/libsoundtouch/src/soundtouch_perms.h.orig	2016-05-12 17:13:16.000000000 +0000
++++ media/libsoundtouch/src/soundtouch_perms.h
+@@ -12,7 +12,9 @@
+ 
+ #pragma GCC visibility push(default)
+ #include "SoundTouch.h"
++#ifndef MOZ_SYSTEM_SOUNDTOUCH
+ #include "SoundTouchFactory.h"
++#endif
+ #pragma GCC visibility pop
+ 
+ #endif // MOZILLA_SOUNDTOUCH_PERMS_H
diff --git a/firefox/patches/patch-media_libtheora_lib_arm_armcpu.c b/firefox/patches/patch-media_libtheora_lib_arm_armcpu.c
new file mode 100644
index 0000000000..edba30d089
--- /dev/null
+++ b/firefox/patches/patch-media_libtheora_lib_arm_armcpu.c
@@ -0,0 +1,23 @@
+$NetBSD: patch-media_libtheora_lib_arm_armcpu.c,v 1.2 2017/04/27 01:49:47 ryoon Exp $
+
+--- media/libtheora/lib/arm/armcpu.c.orig	2016-05-12 17:13:17.000000000 +0000
++++ media/libtheora/lib/arm/armcpu.c
+@@ -107,6 +107,18 @@ ogg_uint32_t oc_cpu_flags_get(void){
+   return flags;
+ }
+ 
++#elif defined(__NetBSD__)
++ogg_uint32_t oc_cpu_flags_get(void){
++  ogg_uint32_t  flags;
++  /* XXX ryoon: I have no idea about ARM CPU extensions detection mechanism
++     under NetBSD/earm. 
++     evbearmv6hf-el machine, Raspberry Pi does not have NEON.
++     evbearmv7hf-el machine, CubieBoard2 does not have EDSP.
++     I have no idea about MEDIA.
++     So I will disable all options. */
++  flags=0;
++  return flags;
++}
+ #else
+ /*The feature registers which can tell us what the processor supports are
+    accessible in priveleged modes only, so we can't have a general user-space
diff --git a/firefox/patches/patch-media_libtheora_moz.build b/firefox/patches/patch-media_libtheora_moz.build
new file mode 100644
index 0000000000..1b07a90366
--- /dev/null
+++ b/firefox/patches/patch-media_libtheora_moz.build
@@ -0,0 +1,16 @@
+$NetBSD: patch-media_libtheora_moz.build,v 1.7 2016/08/06 08:46:59 ryoon Exp $
+
+* Support system library
+
+--- media/libtheora/moz.build.orig	2016-07-25 20:22:04.000000000 +0000
++++ media/libtheora/moz.build
+@@ -21,6 +21,9 @@ FINAL_LIBRARY = 'gkmedias'
+ # The encoder is currently not included.
+ DEFINES['THEORA_DISABLE_ENCODE'] = True
+ 
++if CONFIG['MOZ_SYSTEM_OGG']:
++    CFLAGS += CONFIG['MOZ_OGG_CFLAGS']
++
+ # Suppress warnings in third-party code.
+ if CONFIG['GNU_CC'] or CONFIG['CLANG_CL']:
+     CFLAGS += ['-Wno-type-limits']
diff --git a/firefox/patches/patch-media_libtremor_moz.build b/firefox/patches/patch-media_libtremor_moz.build
new file mode 100644
index 0000000000..e950f3be36
--- /dev/null
+++ b/firefox/patches/patch-media_libtremor_moz.build
@@ -0,0 +1,12 @@
+$NetBSD: patch-media_libtremor_moz.build,v 1.3 2016/08/06 08:46:59 ryoon Exp $
+
+* Support system library
+
+--- media/libtremor/moz.build.orig	2016-05-12 17:13:17.000000000 +0000
++++ media/libtremor/moz.build
+@@ -9,3 +9,5 @@ with Files('*'):
+ 
+ DIRS += ['include/tremor', 'lib']
+ 
++if CONFIG['MOZ_SYSTEM_OGG']:
++    CFLAGS += CONFIG['MOZ_OGG_CFLAGS']
diff --git a/firefox/patches/patch-media_libvorbis_moz.build b/firefox/patches/patch-media_libvorbis_moz.build
new file mode 100644
index 0000000000..86f41ddd3f
--- /dev/null
+++ b/firefox/patches/patch-media_libvorbis_moz.build
@@ -0,0 +1,13 @@
+$NetBSD: patch-media_libvorbis_moz.build,v 1.3 2016/08/06 08:46:59 ryoon Exp $
+
+* Support system library
+
+--- media/libvorbis/moz.build.orig	2016-05-12 17:13:17.000000000 +0000
++++ media/libvorbis/moz.build
+@@ -56,3 +56,6 @@ FINAL_LIBRARY = 'gkmedias'
+ # Suppress warnings in third-party code.
+ if CONFIG['GNU_CC']:
+     CFLAGS += ['-Wno-uninitialized']
++
++if CONFIG['MOZ_SYSTEM_OGG']:
++    CFLAGS += CONFIG['MOZ_OGG_CFLAGS']
diff --git a/firefox/patches/patch-media_libyuv_libyuv_source_mjpeg__decoder.cc b/firefox/patches/patch-media_libyuv_libyuv_source_mjpeg__decoder.cc
new file mode 100644
index 0000000000..63344b1c43
--- /dev/null
+++ b/firefox/patches/patch-media_libyuv_libyuv_source_mjpeg__decoder.cc
@@ -0,0 +1,13 @@
+$NetBSD: patch-media_libyuv_libyuv_source_mjpeg__decoder.cc,v 1.1 2017/06/14 11:28:44 ryoon Exp $
+
+--- media/libyuv/libyuv/source/mjpeg_decoder.cc.orig	2017-06-05 20:45:14.000000000 +0000
++++ media/libyuv/libyuv/source/mjpeg_decoder.cc
+@@ -25,7 +25,7 @@
+ #endif
+ 
+ #endif
+-struct FILE;  // For jpeglib.h.
++//struct FILE;  // For jpeglib.h.
+ 
+ // C++ build requires extern C for jpeg internals.
+ #ifdef __cplusplus
diff --git a/firefox/patches/patch-media_openmax__dl_dl_api_armCOMM__s.h b/firefox/patches/patch-media_openmax__dl_dl_api_armCOMM__s.h
new file mode 100644
index 0000000000..c2ed0f45d1
--- /dev/null
+++ b/firefox/patches/patch-media_openmax__dl_dl_api_armCOMM__s.h
@@ -0,0 +1,39 @@
+$NetBSD: patch-media_openmax__dl_dl_api_armCOMM__s.h,v 1.2 2016/06/16 12:08:21 ryoon Exp $
+
+* Support NetBSD/earm
+
+--- media/openmax_dl/dl/api/armCOMM_s.h.orig	2015-09-29 21:44:56.000000000 +0000
++++ media/openmax_dl/dl/api/armCOMM_s.h
+@@ -11,6 +11,12 @@
+ @//  This file was originally licensed as follows. It has been
+ @//  relicensed with permission from the copyright holders.
+ @//
++
++#if defined(__ARM_EABI__) && !defined(__ARM_DWARF_EH__)
++#define UNWIND
++#else
++#define UNWIND @
++#endif
+ 	
+ @// 
+ @// File Name:  armCOMM_s.h
+@@ -175,7 +181,8 @@
+ 	.object_arch armv4
+ 	.align	2
+ \name :		
+-.fnstart
++	.cfi_startproc
++	UNWIND .fnstart
+ 	@ Save specified R registers
+ 	_M_GETRREGLIST	\rreg
+ 	_M_PUSH_RREG
+@@ -202,7 +209,8 @@
+ 	.endif
+ 	@ Restore any saved R or D registers.
+ 	_M_RET
+-	.fnend	
++	UNWIND .fnend	
++	.cfi_endproc
+ 	.endfunc
+         @ Reset the global stack tracking variables back to their
+ 	@ initial values.
diff --git a/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc b/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc
new file mode 100644
index 0000000000..6a13b0dfd5
--- /dev/null
+++ b/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc
@@ -0,0 +1,42 @@
+$NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc,v 1.14 2017/09/30 05:34:12 ryoon Exp $
+
+--- media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc.orig	2017-09-14 20:16:07.000000000 +0000
++++ media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc
+@@ -25,6 +25,9 @@
+ #else
+ #include <linux/videodev2.h>
+ #endif
++#ifdef HAVE_LIBV4L2
++#include <libv4l2.h>
++#endif
+ 
+ #include "webrtc/system_wrappers/include/trace.h"
+ 
+@@ -33,6 +36,15 @@
+ #define BUF_LEN     ( 1024 * ( EVENT_SIZE + 16 ) )
+ #endif
+ 
++#ifdef HAVE_LIBV4L2
++#define open	v4l2_open
++#define close	v4l2_close
++#define dup	v4l2_dup
++#define ioctl	v4l2_ioctl
++#define mmap	v4l2_mmap
++#define munmap	v4l2_munmap
++#endif
++
+ namespace webrtc
+ {
+ namespace videocapturemodule
+@@ -314,6 +326,11 @@ int32_t DeviceInfoLinux::GetDeviceName(
+     memset(deviceNameUTF8, 0, deviceNameLength);
+     memcpy(cameraName, cap.card, sizeof(cap.card));
+ 
++    if (cameraName[0] == '\0')
++    {
++        sprintf(cameraName, "Camera at /dev/video%d", deviceNumber);
++    }
++
+     if (deviceNameLength >= strlen(cameraName))
+     {
+         memcpy(deviceNameUTF8, cameraName, strlen(cameraName));
diff --git a/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc b/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc
new file mode 100644
index 0000000000..4066abf956
--- /dev/null
+++ b/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc
@@ -0,0 +1,30 @@
+$NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc,v 1.14 2017/09/30 05:34:12 ryoon Exp $
+
+--- media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc.orig	2017-09-14 20:16:07.000000000 +0000
++++ media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc
+@@ -24,6 +24,9 @@
+ #else
+ #include <linux/videodev2.h>
+ #endif
++#ifdef HAVE_LIBV4L2
++#include <libv4l2.h>
++#endif
+ 
+ #include <new>
+ 
+@@ -33,6 +36,15 @@
+ #include "webrtc/system_wrappers/include/critical_section_wrapper.h"
+ #include "webrtc/system_wrappers/include/trace.h"
+ 
++#ifdef HAVE_LIBV4L2
++#define open	v4l2_open
++#define close	v4l2_close
++#define dup	v4l2_dup
++#define ioctl	v4l2_ioctl
++#define mmap	v4l2_mmap
++#define munmap	v4l2_munmap
++#endif
++
+ namespace webrtc {
+ namespace videocapturemodule {
+ rtc::scoped_refptr<VideoCaptureModule> VideoCaptureImpl::Create(
diff --git a/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi b/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi
new file mode 100644
index 0000000000..48f37ba4c4
--- /dev/null
+++ b/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi
@@ -0,0 +1,34 @@
+$NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi,v 1.13 2017/09/30 05:34:12 ryoon Exp $
+
+--- media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi.orig	2017-09-14 20:16:07.000000000 +0000
++++ media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi
+@@ -7,6 +7,9 @@
+ # be found in the AUTHORS file in the root of the source tree.
+ 
+ {
++  'variables': {
++     'use_libv4l2%': 0,
++  },
+   'targets': [
+     {
+       # Note this library is missing an implementation for the video capture.
+@@ -74,6 +77,19 @@
+                 'linux/video_capture_linux.cc',
+                 'linux/video_capture_linux.h',
+               ],
++              'conditions': [
++                ['use_libv4l2==1', {
++                  'defines': [
++                    'HAVE_LIBV4L2',
++                  ],
++                  'cflags_mozilla': [
++                    '$(MOZ_LIBV4L2_CFLAGS)',
++                  ],
++                  'libraries': [
++                    '-lv4l2',
++                  ],
++                }],
++              ],
+             }],
+             ['OS=="mac"', {
+               'sources': [
diff --git a/firefox/patches/patch-modules_pdfium_update.sh b/firefox/patches/patch-modules_pdfium_update.sh
new file mode 100644
index 0000000000..c99adef582
--- /dev/null
+++ b/firefox/patches/patch-modules_pdfium_update.sh
@@ -0,0 +1,16 @@
+$NetBSD: patch-modules_pdfium_update.sh,v 1.1 2017/09/30 05:34:12 ryoon Exp $
+
+--- modules/pdfium/update.sh.orig	2017-09-14 20:15:53.000000000 +0000
++++ modules/pdfium/update.sh
+@@ -124,9 +124,9 @@ update_readme() {
+     perl -p -i -e "s/${PREFIX} [0-9A-Fa-f]+ \(.+\)/${PREFIX} ${COMMIT} (${COMMIT_DATE})/" README_MOZILLA
+ }
+ 
+-if [ "$#" == 0 ]; then
++if [ "$#" = 0 ]; then
+     COMMIT_SELECTOR="master"
+-elif [ "$#" == 2 -a "$1" == "--commit" ]; then
++elif [ "$#" = 2 -a "$1" = "--commit" ]; then
+     COMMIT_SELECTOR="$2"
+ else
+     print_help
diff --git a/firefox/patches/patch-mozglue_build_arm.cpp b/firefox/patches/patch-mozglue_build_arm.cpp
new file mode 100644
index 0000000000..dcbc706b6a
--- /dev/null
+++ b/firefox/patches/patch-mozglue_build_arm.cpp
@@ -0,0 +1,59 @@
+$NetBSD: patch-mozglue_build_arm.cpp,v 1.3 2016/09/20 20:01:41 ryoon Exp $
+
+* Support NetBSD/earm
+
+--- mozglue/build/arm.cpp.orig	2016-08-01 16:14:43.000000000 +0000
++++ mozglue/build/arm.cpp
+@@ -13,10 +13,13 @@
+ // we don't compile one of these detection methods. The detection code here is
+ // based on the CPU detection in libtheora.
+ 
+-#  if defined(__linux__) || defined(ANDROID)
++#  if defined(__linux__) || defined(ANDROID) || defined(__NetBSD__)
+ #    include <stdio.h>
+ #    include <stdlib.h>
+ #    include <string.h>
++#    if defined(__NetBSD__)
++#      include <sys/sysctl.h>
++#    endif
+ 
+ enum{
+   MOZILLA_HAS_EDSP_FLAG=1,
+@@ -25,6 +28,29 @@ enum{
+   MOZILLA_HAS_NEON_FLAG=8
+ };
+ 
++#    if defined(__NetBSD__)
++static unsigned
++get_arm_cpu_flags(void)
++{
++  unsigned flags = 0;
++  size_t len;
++  int flag;
++
++  len = sizeof(flag);
++  if (sysctlbyname("machdep.simdex_present", &flag, &len, NULL, 0) == 0 && flag) {
++    flags |= MOZILLA_HAS_ARMV6_FLAG;
++    flags |= MOZILLA_HAS_EDSP_FLAG;
++  }
++
++  len = sizeof(flag);
++  if (sysctlbyname("machdep.neon_present", &flag, &len, NULL, 0) == 0 && flag) {
++    flags |= MOZILLA_HAS_ARMV7_FLAG;
++    flags |= MOZILLA_HAS_NEON_FLAG;
++  }
++
++  return flags;
++}
++#    else
+ static unsigned
+ get_arm_cpu_flags(void)
+ {
+@@ -89,6 +115,7 @@ get_arm_cpu_flags(void)
+   }
+   return flags;
+ }
++#    endif
+ 
+ // Cache a local copy so we only have to read /proc/cpuinfo once.
+ static unsigned arm_cpu_flags = get_arm_cpu_flags();
diff --git a/firefox/patches/patch-mozglue_build_arm.h b/firefox/patches/patch-mozglue_build_arm.h
new file mode 100644
index 0000000000..e8cc8281a1
--- /dev/null
+++ b/firefox/patches/patch-mozglue_build_arm.h
@@ -0,0 +1,15 @@
+$NetBSD: patch-mozglue_build_arm.h,v 1.2 2016/06/16 12:08:21 ryoon Exp $
+
+* Support NetBSD/earm
+
+--- mozglue/build/arm.h.orig	2015-09-29 21:45:02.000000000 +0000
++++ mozglue/build/arm.h
+@@ -76,7 +76,7 @@
+ #  endif
+ 
+   // Currently we only have CPU detection for Linux via /proc/cpuinfo
+-#  if defined(__linux__) || defined(ANDROID)
++#  if defined(__linux__) || defined(ANDROID) || defined(__NetBSD__)
+ #    define MOZILLA_ARM_HAVE_CPUID_DETECTION 1
+ #  endif
+ 
diff --git a/firefox/patches/patch-netwerk_dns_moz.build b/firefox/patches/patch-netwerk_dns_moz.build
new file mode 100644
index 0000000000..b81b646235
--- /dev/null
+++ b/firefox/patches/patch-netwerk_dns_moz.build
@@ -0,0 +1,14 @@
+$NetBSD: patch-netwerk_dns_moz.build,v 1.6 2016/12/03 09:58:26 ryoon Exp $
+
+--- netwerk/dns/moz.build.orig	2016-10-31 20:15:27.000000000 +0000
++++ netwerk/dns/moz.build
+@@ -66,6 +66,9 @@ LOCAL_INCLUDES += [
+     '/netwerk/base',
+ ]
+ 
++if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
++    CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
++
+ if CONFIG['ENABLE_INTL_API']:
+     DEFINES['IDNA2008'] = True
+     USE_LIBS += ['icu']
diff --git a/firefox/patches/patch-servo_components_style_build__gecko.rs b/firefox/patches/patch-servo_components_style_build__gecko.rs
new file mode 100644
index 0000000000..97e54c0f41
--- /dev/null
+++ b/firefox/patches/patch-servo_components_style_build__gecko.rs
@@ -0,0 +1,15 @@
+$NetBSD: patch-servo_components_style_build__gecko.rs,v 1.1 2017/09/30 05:34:12 ryoon Exp $
+
+* Fix build with __uint32_t etc. not found errors on NetBSD/amd64 8.99.2
+
+--- servo/components/style/build_gecko.rs.orig	2017-09-14 20:15:56.000000000 +0000
++++ servo/components/style/build_gecko.rs
+@@ -546,6 +546,8 @@ mod bindings {
+                 .borrowed_type(ty)
+                 .zero_size_type(ty, &structs_types);
+         }
++        builder = builder
++            .raw_line(format!("pub use gecko_bindings::structs::root::*;"));
+         write_binding_file(builder, BINDINGS_FILE, &fixups);
+     }
+ 
diff --git a/firefox/patches/patch-toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h b/firefox/patches/patch-toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h
new file mode 100644
index 0000000000..3efc719531
--- /dev/null
+++ b/firefox/patches/patch-toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h
@@ -0,0 +1,24 @@
+$NetBSD: patch-toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h,v 1.3 2016/08/06 08:46:59 ryoon Exp $
+
+--- toolkit/components/protobuf/src/google/protobuf/stubs/atomicops.h.orig	2016-07-25 20:22:06.000000000 +0000
++++ toolkit/components/protobuf/src/google/protobuf/stubs/atomicops.h
+@@ -76,6 +76,11 @@ typedef intptr_t Atomic64;
+ #endif
+ #endif
+ 
++#if defined(__NetBSD__) && defined(__arm__)
++// NetBSD/arm uses long for intptr_t, which fails -fpermissive checks. So
++// explicitly use int32 here instead.
++typedef int32 AtomicWord;
++#else
+ // Use AtomicWord for a machine-sized pointer.  It will use the Atomic32 or
+ // Atomic64 routines below, depending on your architecture.
+ #if defined(__OpenBSD__) && !defined(GOOGLE_PROTOBUF_ARCH_64_BIT)
+@@ -83,6 +88,7 @@ typedef Atomic32 AtomicWord;
+ #else
+ typedef intptr_t AtomicWord;
+ #endif
++#endif
+ 
+ // Atomically execute:
+ //      result = *ptr;
diff --git a/firefox/patches/patch-toolkit_components_terminator_nsTerminator.cpp b/firefox/patches/patch-toolkit_components_terminator_nsTerminator.cpp
new file mode 100644
index 0000000000..3856f87f78
--- /dev/null
+++ b/firefox/patches/patch-toolkit_components_terminator_nsTerminator.cpp
@@ -0,0 +1,27 @@
+$NetBSD: patch-toolkit_components_terminator_nsTerminator.cpp,v 1.1 2016/06/16 12:08:21 ryoon Exp $
+
+* Fix segfault on exit under NetBSD
+
+--- toolkit/components/terminator/nsTerminator.cpp.orig	2016-06-15 21:54:53.514370128 +0000
++++ toolkit/components/terminator/nsTerminator.cpp
+@@ -36,7 +36,7 @@
+ #if defined(XP_WIN)
+ #include <windows.h>
+ #else
+-#include <unistd.h>
++#include <time.h>
+ #endif
+ 
+ #include "mozilla/ArrayUtils.h"
+@@ -147,7 +147,10 @@ RunWatchdog(void* arg)
+ #if defined(XP_WIN)
+     Sleep(1000 /* ms */);
+ #else
+-    usleep(1000000 /* usec */);
++    struct timespec tickd;
++    tickd.tv_sec = 1;
++    tickd.tv_nsec = 0;
++    nanosleep(&tickd, NULL);
+ #endif
+ 
+     if (gHeartbeat++ < timeToLive) {
diff --git a/firefox/patches/patch-toolkit_crashreporter_google-breakpad_src_third_party_curl_curlbuild.h b/firefox/patches/patch-toolkit_crashreporter_google-breakpad_src_third_party_curl_curlbuild.h
new file mode 100644
index 0000000000..f35681b18f
--- /dev/null
+++ b/firefox/patches/patch-toolkit_crashreporter_google-breakpad_src_third_party_curl_curlbuild.h
@@ -0,0 +1,17 @@
+$NetBSD: patch-toolkit_crashreporter_google-breakpad_src_third_party_curl_curlbuild.h,v 1.2 2017/09/30 05:34:12 ryoon Exp $
+
+See https://bugzilla.mozilla.org/show_bug.cgi?id=1399027
+Allow non-whitelisted 64bit platforms to build.
+
+--- toolkit/crashreporter/google-breakpad/src/third_party/curl/curlbuild.h.orig	2017-06-15 20:52:33.000000000 +0000
++++ toolkit/crashreporter/google-breakpad/src/third_party/curl/curlbuild.h
+@@ -154,8 +154,7 @@
+ #endif
+ 
+ /* The size of `long', as computed by sizeof. */
+-#if defined(_M_X64) || (defined(__x86_64__) && !defined(__ILP32__)) ||      \
+-    defined(__aarch64__) || (defined(__mips__) && _MIPS_SIM == _ABI64)
++#if defined(_M_X64) || defined(__LP64__)
+ #define CURL_SIZEOF_LONG 8
+ #else
+ #define CURL_SIZEOF_LONG 4
diff --git a/firefox/patches/patch-toolkit_library_moz.build b/firefox/patches/patch-toolkit_library_moz.build
new file mode 100644
index 0000000000..23cd3f66b0
--- /dev/null
+++ b/firefox/patches/patch-toolkit_library_moz.build
@@ -0,0 +1,57 @@
+$NetBSD: patch-toolkit_library_moz.build,v 1.15 2017/09/30 05:34:12 ryoon Exp $
+
+* Support system libraries
+* Restore OSS support
+
+--- toolkit/library/moz.build.orig	2017-09-14 20:16:01.000000000 +0000
++++ toolkit/library/moz.build
+@@ -198,6 +198,7 @@ if CONFIG['OS_ARCH'] == 'Linux' and CONF
+     ]
+ 
+ OS_LIBS += CONFIG['MOZ_CAIRO_OSLIBS']
++OS_LIBS += CONFIG['MOZ_LIBV4L2_LIBS']
+ OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS']
+ 
+ if CONFIG['SERVO_TARGET_DIR']:
+@@ -212,9 +213,30 @@ if CONFIG['MOZ_SYSTEM_JPEG']:
+ if CONFIG['MOZ_SYSTEM_PNG']:
+     OS_LIBS += CONFIG['MOZ_PNG_LIBS']
+ 
++if CONFIG['MOZ_SYSTEM_GRAPHITE2']:
++    OS_LIBS += CONFIG['MOZ_GRAPHITE2_LIBS']
++
++if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
++    OS_LIBS += CONFIG['MOZ_HARFBUZZ_LIBS']
++
+ if CONFIG['MOZ_SYSTEM_HUNSPELL']:
+     OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS']
+ 
++if CONFIG['MOZ_SYSTEM_OGG']:
++    OS_LIBS += CONFIG['MOZ_OGG_LIBS']
++
++if CONFIG['MOZ_SYSTEM_THEORA']:
++    OS_LIBS += CONFIG['MOZ_THEORA_LIBS']
++
++if CONFIG['MOZ_SYSTEM_VORBIS']:
++    OS_LIBS += CONFIG['MOZ_VORBIS_LIBS']
++
++if CONFIG['MOZ_SYSTEM_TREMOR']:
++    OS_LIBS += CONFIG['MOZ_TREMOR_LIBS']
++
++if CONFIG['MOZ_SYSTEM_SOUNDTOUCH']:
++    OS_LIBS += CONFIG['MOZ_SOUNDTOUCH_LIBS']
++
+ if CONFIG['MOZ_SYSTEM_LIBEVENT']:
+     OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS']
+ 
+@@ -224,8 +246,8 @@ if CONFIG['MOZ_SYSTEM_LIBVPX']:
+ if not CONFIG['MOZ_TREE_PIXMAN']:
+     OS_LIBS += CONFIG['MOZ_PIXMAN_LIBS']
+ 
+-if CONFIG['MOZ_ALSA']:
+-    OS_LIBS += CONFIG['MOZ_ALSA_LIBS']
++if CONFIG['MOZ_OSS']:
++    OS_LIBS += CONFIG['MOZ_OSS_LIBS']
+ 
+ if CONFIG['HAVE_CLOCK_MONOTONIC']:
+     OS_LIBS += CONFIG['REALTIME_LIBS']
diff --git a/firefox/patches/patch-toolkit_moz.configure b/firefox/patches/patch-toolkit_moz.configure
new file mode 100644
index 0000000000..31db9bc0c7
--- /dev/null
+++ b/firefox/patches/patch-toolkit_moz.configure
@@ -0,0 +1,50 @@
+$NetBSD: patch-toolkit_moz.configure,v 1.6 2017/09/30 05:34:12 ryoon Exp $
+
+* skia part: support bigendian architectures
+
+--- toolkit/moz.configure.orig	2017-09-15 04:15:40.000000000 +0000
++++ toolkit/moz.configure
+@@ -317,6 +317,26 @@ def freetype2_combined_info(fontconfig_i
+ add_old_configure_assignment('_HAVE_FREETYPE2',
+                              depends_if(freetype2_info)(lambda _: True))
+ 
++# Graphite2
++# ==============================================================
++option('--with-system-graphite2',
++       help="Use system graphite2 (located with pkgconfig)")
++
++system_graphite2 = pkg_check_modules('MOZ_GRAPHITE2', 'graphite2',
++                                     when='--with-system-graphite2')
++
++set_config('MOZ_SYSTEM_GRAPHITE2', depends_if(system_graphite2)(lambda _: True))
++
++# HarfBuzz
++# ==============================================================
++option('--with-system-harfbuzz',
++       help="Use system harfbuzz (located with pkgconfig)")
++
++system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.4.7',
++                                    when='--with-system-harfbuzz')
++
++set_config('MOZ_SYSTEM_HARFBUZZ', depends_if(system_harfbuzz)(lambda _: True))
++
+ # Apple platform decoder support
+ # ==============================================================
+ @depends(toolkit)
+@@ -940,11 +960,11 @@ include('nss.configure')
+ # ==============================================================
+ option('--disable-skia', help='Disable use of Skia')
+ 
+-@depends('--disable-skia')
+-def skia(value):
+-    if not value:
+-        die('--disable-skia is not supported anymore')
+-    else:
++@depends('--disable-skia', target)
++def skia(value, target):
++    if value.origin == 'default' and target.endianness == 'big':
++        return None
++    if value:
+         return True
+ 
+ set_config('MOZ_ENABLE_SKIA', skia)
diff --git a/firefox/patches/patch-toolkit_xre_glxtest.cpp b/firefox/patches/patch-toolkit_xre_glxtest.cpp
new file mode 100644
index 0000000000..fda197d4d8
--- /dev/null
+++ b/firefox/patches/patch-toolkit_xre_glxtest.cpp
@@ -0,0 +1,16 @@
+$NetBSD: patch-toolkit_xre_glxtest.cpp,v 1.1 2015/07/05 11:55:06 martin Exp $
+
+Fix libGL filename on NetBSD,
+see https://bugzilla.mozilla.org/show_bug.cgi?id=1180498
+
+--- toolkit/xre/glxtest.cpp.orig	2015-07-04 20:26:15.000000000 +0200
++++ toolkit/xre/glxtest.cpp	2015-07-04 20:26:15.000000000 +0200
+@@ -124,7 +124,7 @@ void glxtest()
+     fatal_error("The MOZ_AVOID_OPENGL_ALTOGETHER environment variable is defined");
+ 
+   ///// Open libGL and load needed symbols /////
+-#ifdef __OpenBSD__
++#if defined(__OpenBSD__) || defined(__NetBSD__)
+   #define LIBGL_FILENAME "libGL.so"
+ #else
+   #define LIBGL_FILENAME "libGL.so.1"
diff --git a/firefox/patches/patch-toolkit_xre_nsEmbedFunctions.cpp b/firefox/patches/patch-toolkit_xre_nsEmbedFunctions.cpp
new file mode 100644
index 0000000000..64e69229c6
--- /dev/null
+++ b/firefox/patches/patch-toolkit_xre_nsEmbedFunctions.cpp
@@ -0,0 +1,24 @@
+$NetBSD: patch-toolkit_xre_nsEmbedFunctions.cpp,v 1.7 2017/06/14 11:28:44 ryoon Exp $
+
+* Support Solaris
+
+--- toolkit/xre/nsEmbedFunctions.cpp.orig	2017-06-05 20:45:23.000000000 +0000
++++ toolkit/xre/nsEmbedFunctions.cpp
+@@ -285,7 +285,7 @@ XRE_SetRemoteExceptionHandler(const char
+ {
+ #if defined(XP_WIN) || defined(XP_MACOSX)
+   return CrashReporter::SetRemoteExceptionHandler(nsDependentCString(aPipe));
+-#elif defined(OS_LINUX)
++#elif defined(OS_LINUX) || defined(OS_SOLARIS)
+   return CrashReporter::SetRemoteExceptionHandler();
+ #else
+ #  error "OOP crash reporter unsupported on this platform"
+@@ -504,7 +504,7 @@ XRE_InitChildProcess(int aArgc,
+     // Bug 684322 will add better visibility into this condition
+     NS_WARNING("Could not setup crash reporting\n");
+   }
+-#  elif defined(OS_LINUX)
++#  elif defined(OS_LINUX) || defined(OS_SOLARIS)
+   // on POSIX, |crashReporterArg| is "true" if crash reporting is
+   // enabled, false otherwise
+   if (0 != strcmp("false", crashReporterArg) &&
diff --git a/firefox/patches/patch-xpcom_base_nscore.h b/firefox/patches/patch-xpcom_base_nscore.h
new file mode 100644
index 0000000000..def9c7e151
--- /dev/null
+++ b/firefox/patches/patch-xpcom_base_nscore.h
@@ -0,0 +1,15 @@
+$NetBSD: patch-xpcom_base_nscore.h,v 1.3 2016/06/16 12:08:21 ryoon Exp $
+
+* Support llvm/clang
+
+--- xpcom/base/nscore.h.orig	2014-05-29 23:31:50.000000000 +0000
++++ xpcom/base/nscore.h
+@@ -114,7 +114,7 @@
+  *           NS_HIDDEN_(int) NS_FASTCALL func2(char *foo);
+  */
+ 
+-#if defined(__i386__) && defined(__GNUC__)
++#if defined(__i386__) && defined(__GNUC__) && !(defined(__clang__) && __clang_major__ == 3 && __clang_minor__ == 4 && __clang_patchlevel__ == 0)
+ #define NS_FASTCALL __attribute__ ((regparm (3), stdcall))
+ #define NS_CONSTRUCTOR_FASTCALL __attribute__ ((regparm (3), stdcall))
+ #elif defined(XP_WIN) && !defined(_WIN64)
diff --git a/firefox/patches/patch-xpcom_build_XPCOMInit.cpp b/firefox/patches/patch-xpcom_build_XPCOMInit.cpp
new file mode 100644
index 0000000000..0514513690
--- /dev/null
+++ b/firefox/patches/patch-xpcom_build_XPCOMInit.cpp
@@ -0,0 +1,28 @@
+$NetBSD: patch-xpcom_build_XPCOMInit.cpp,v 1.4 2016/12/03 09:58:26 ryoon Exp $
+
+--- xpcom/build/XPCOMInit.cpp.orig	2016-10-31 20:15:39.000000000 +0000
++++ xpcom/build/XPCOMInit.cpp
+@@ -137,7 +137,9 @@ extern nsresult nsStringInputStreamConst
+ 
+ #include "mozilla/ipc/GeckoChildProcessHost.h"
+ 
++#ifndef MOZ_OGG_NO_MEM_REPORTING
+ #include "ogg/ogg.h"
++#endif
+ #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING)
+ #if defined(HAVE_STDINT_H)
+ // mozilla-config.h defines HAVE_STDINT_H, and then it's defined *again* in
+@@ -638,11 +640,13 @@ NS_InitXPCOM2(nsIServiceManager** aResul
+   // this oddness.
+   mozilla::SetICUMemoryFunctions();
+ 
++#ifndef MOZ_OGG_NO_MEM_REPORTING
+   // Do the same for libogg.
+   ogg_set_mem_functions(OggReporter::CountingMalloc,
+                         OggReporter::CountingCalloc,
+                         OggReporter::CountingRealloc,
+                         OggReporter::CountingFree);
++#endif
+ 
+ #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING)
+   // And for VPX.
diff --git a/firefox/patches/patch-xpcom_reflect_xptcall_md_unix_Makefile.in b/firefox/patches/patch-xpcom_reflect_xptcall_md_unix_Makefile.in
new file mode 100644
index 0000000000..213da74234
--- /dev/null
+++ b/firefox/patches/patch-xpcom_reflect_xptcall_md_unix_Makefile.in
@@ -0,0 +1,50 @@
+$NetBSD: patch-xpcom_reflect_xptcall_md_unix_Makefile.in,v 1.3 2016/06/16 12:08:21 ryoon Exp $
+
+* Support NetBSD/sparc64
+
+--- xpcom/reflect/xptcall/md/unix/Makefile.in.orig	2015-08-24 21:53:22.000000000 +0000
++++ xpcom/reflect/xptcall/md/unix/Makefile.in
+@@ -42,6 +42,43 @@ ifeq ($(OS_ARCH),AIX)
+ CXXFLAGS 	:=  $(filter-out $(MOZ_OPTIMIZE_FLAGS), $(CXXFLAGS))
+ endif
+ 
++######################################################################
++# SPARC
++######################################################################
++#
++# Linux/SPARC
++#
++ifeq ($(OS_ARCH),Linux)
++ifneq (,$(findstring sparc,$(OS_TEST)))
++ASFILES		:= xptcinvoke_asm_sparc_linux_GCC3.s xptcstubs_asm_sparc_solaris.s
++endif
++endif
++#
++# NetBSD/SPARC
++#
++ifeq ($(OS_ARCH)$(OS_TEST),NetBSDsparc)
++ASFILES		:= xptcinvoke_asm_sparc_netbsd.s xptcstubs_asm_sparc_netbsd.s
++endif
++#
++# OpenBSD/SPARC
++#
++ifeq ($(OS_ARCH)$(OS_TEST),OpenBSDsparc)
++ASFILES		:= xptcinvoke_asm_sparc_openbsd.s xptcstubs_asm_sparc_openbsd.s
++endif
++#
++# OpenBSD/SPARC64
++#
++ifneq (,$(filter OpenBSDsparc64 FreeBSDsparc64,$(OS_ARCH)$(OS_TEST)))
++ASFILES		:= xptcinvoke_asm_sparc64_openbsd.s xptcstubs_asm_sparc64_openbsd.s
++endif
++#
++# NetBSD/SPARC64
++#
++ifeq ($(OS_ARCH)$(OS_TEST),NetBSDsparc64)
++CPPSRCS                := xptcinvoke_sparc64_netbsd.cpp xptcstubs_sparc64_openbsd.cpp
++ASFILES                := xptcinvoke_asm_sparc64_openbsd.s xptcstubs_asm_sparc64_netbsd.s
++endif
++
+ include $(topsrcdir)/config/rules.mk
+ 
+ ifeq ($(OS_ARCH),Linux)
diff --git a/firefox/patches/patch-xpcom_reflect_xptcall_md_unix_moz.build b/firefox/patches/patch-xpcom_reflect_xptcall_md_unix_moz.build
new file mode 100644
index 0000000000..db60a72fed
--- /dev/null
+++ b/firefox/patches/patch-xpcom_reflect_xptcall_md_unix_moz.build
@@ -0,0 +1,16 @@
+$NetBSD: patch-xpcom_reflect_xptcall_md_unix_moz.build,v 1.9 2017/08/26 21:18:08 he Exp $
+
+CONFIG['OS_TEST'] is apparently CPU, not MACHINE, so use 'powerpc'
+instead of the longish list of powerpc ports.
+
+--- xpcom/reflect/xptcall/md/unix/moz.build.orig	2017-06-15 20:52:36.000000000 +0000
++++ xpcom/reflect/xptcall/md/unix/moz.build
+@@ -221,7 +221,7 @@ if CONFIG['OS_TEST'] in ('powerpc64', 'p
+               'xptcstubs_ppc64_linux.cpp',
+           ]
+ 
+-if CONFIG['OS_TEST'] in ('macppc', 'bebox', 'ofppc', 'prep', 'amigappc'):
++if CONFIG['OS_TEST'] in ('powerpc'):
+     if CONFIG['OS_ARCH'] == 'NetBSD':
+         SOURCES += [
+             'xptcinvoke_asm_ppc_netbsd.s',
diff --git a/firefox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp b/firefox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp
new file mode 100644
index 0000000000..4f1d2a467b
--- /dev/null
+++ b/firefox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp
@@ -0,0 +1,89 @@
+$NetBSD: patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__sparc64__netbsd.cpp,v 1.1 2014/10/15 13:43:32 ryoon Exp $
+
+--- xpcom/reflect/xptcall/md/unix/xptcinvoke_sparc64_netbsd.cpp.orig	2014-10-14 18:49:14.000000000 +0000
++++ xpcom/reflect/xptcall/md/unix/xptcinvoke_sparc64_netbsd.cpp
+@@ -0,0 +1,84 @@
++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
++ *
++ * The contents of this file are subject to the Netscape Public
++ * License Version 1.1 (the "License"); you may not use this file
++ * except in compliance with the License. You may obtain a copy of
++ * the License at http://www.mozilla.org/NPL/
++ *
++ * Software distributed under the License is distributed on an "AS
++ * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
++ * implied. See the License for the specific language governing
++ * rights and limitations under the License.
++ *
++ * The Original Code is mozilla.org code.
++ *
++ * The Initial Developer of the Original Code is Netscape
++ * Communications Corporation.  Portions created by Netscape are
++ * Copyright (C) 1998 Netscape Communications Corporation. All
++ * Rights Reserved.
++ *
++ * Contributor(s): 
++ */
++
++/* Platform specific code to invoke XPCOM methods on native objects */
++
++#include "xptcprivate.h"
++
++#if !defined(__sparc64__) && !defined(_LP64)
++#error "This code is for Sparc64 only"
++#endif
++
++extern "C" PRUint32
++invoke_copy_to_stack(PRUint64* d, PRUint32 paramCount, nsXPTCVariant* s)
++{
++  /*
++    We need to copy the parameters for this function to locals and use them
++    from there since the parameters occupy the same stack space as the stack
++    we're trying to populate.
++  */
++  PRUint64 *l_d = d;
++  nsXPTCVariant *l_s = s;
++  PRUint64 l_paramCount = paramCount;
++  PRUint64 regCount = 0;  // return the number of registers to load from the stack
++
++  for(PRUint64 i = 0; i < l_paramCount; i++, l_d++, l_s++)
++  {
++    if (regCount < 5) regCount++;
++
++    if (l_s->IsPtrData())
++    {
++      *l_d = (PRUint64)l_s->ptr;
++      continue;
++    }
++    switch (l_s->type)
++    {
++      case nsXPTType::T_I8    : *((PRInt64*)l_d)     = l_s->val.i8;    break;
++      case nsXPTType::T_I16   : *((PRInt64*)l_d)     = l_s->val.i16;   break;
++      case nsXPTType::T_I32   : *((PRInt64*)l_d)     = l_s->val.i32;   break;
++      case nsXPTType::T_I64   : *((PRInt64*)l_d)     = l_s->val.i64;   break;
++      
++      case nsXPTType::T_U8    : *((PRUint64*)l_d)    = l_s->val.u8;    break;
++      case nsXPTType::T_U16   : *((PRUint64*)l_d)    = l_s->val.u16;   break;
++      case nsXPTType::T_U32   : *((PRUint64*)l_d)    = l_s->val.u32;   break;
++      case nsXPTType::T_U64   : *((PRUint64*)l_d)    = l_s->val.u64;   break;
++
++      /* in the case of floats, we want to put the bits in to the
++         64bit space right justified... floats in the paramter array on
++         sparcv9 use odd numbered registers.. %f1, %f3, so we have to skip
++         the space that would be occupied by %f0, %f2, etc.
++      */
++      case nsXPTType::T_FLOAT : *(((float*)l_d) + 1) = l_s->val.f;     break;
++      case nsXPTType::T_DOUBLE: *((double*)l_d)      = l_s->val.d;     break;
++      case nsXPTType::T_BOOL  : *((PRInt64*)l_d)      = l_s->val.b;     break;
++      case nsXPTType::T_CHAR  : *((PRUint64*)l_d)    = l_s->val.c;     break;
++      case nsXPTType::T_WCHAR : *((PRInt64*)l_d)     = l_s->val.wc;    break;
++
++      default:
++        // all the others are plain pointer types
++        *((void**)l_d) = l_s->val.p;
++        break;
++    }
++  }
++  
++  return regCount;
++}
diff --git a/firefox/xpi.mk b/firefox/xpi.mk
new file mode 100644
index 0000000000..a3e567f07e
--- /dev/null
+++ b/firefox/xpi.mk
@@ -0,0 +1,25 @@
+# $NetBSD: xpi.mk,v 1.2 2013/08/31 22:15:10 rillig Exp $
+#
+# common logic for repackaging mozilla extensions (.xpi files)
+# Used by the {firefox,seamonkey,thunderbird}-l10n packages.
+
+USE_TOOLS+=	unzip pax
+
+post-extract: extract-xpi
+
+.PHONY: extract-xpi
+extract-xpi:
+.for f in ${XPI_FILES}
+	${RUN} ${MKDIR} ${WRKDIR}/${f:S/.xpi//} && cd ${WRKDIR}/${f:S/.xpi//} && ${UNZIP_CMD} -aqo "${WRKDIR}/${f}"
+.endfor
+
+do-install: install-xpi
+
+.PHONY: install-xpi
+install-xpi:
+.for f in ${XPI_FILES}
+	id=$$(${AWK} '/em:id=/ {sub("^.*em:id=\"", "");sub("\".*$$","");print $$0}' < ${WRKDIR}/${f:S/.xpi//}/install.rdf);	\
+	  ${MKDIR} ${DESTDIR}${EXTENSIONS_DIR}/$${id} && \
+	  cd ${WRKDIR}/${f:S/.xpi//} &&		\
+	  pax -rw . ${DESTDIR}${EXTENSIONS_DIR}/$${id}
+.endfor


Home | Main Index | Thread Index | Old Index