Index: patches/vim-7.4-branch_update-1.patch
===================================================================
--- patches/vim-7.4-branch_update-1.patch	(revision 19586fa87dec08c5988887f5bb15b6a693c44e96)
+++ patches/vim-7.4-branch_update-1.patch	(revision 19586fa87dec08c5988887f5bb15b6a693c44e96)
@@ -0,0 +1,9933 @@
+Submitted By: William Harrington (kb0iic at cross-lfs dot org)
+Date: 2013-10-01
+Initial Package Version: 7.4
+Origin: Upstream
+Upstream Status: Applied
+Description: Contains all upstream patches up to 7.4.45.
+
+diff -Naur vim74.orig/.hg_archival.txt vim74/.hg_archival.txt
+--- vim74.orig/.hg_archival.txt	1970-01-01 00:00:00.000000000 +0000
++++ vim74/.hg_archival.txt	2013-10-01 16:15:43.180538787 +0000
+@@ -0,0 +1,5 @@
++repo: 770908d1cb47c04be0aef5c173b17ab8be6b6476
++node: ad15700420ae189a5e12796a1b23c011d890bca8
++branch: default
++latesttag: v7-4-045
++latesttagdistance: 1
+diff -Naur vim74.orig/.hgignore vim74/.hgignore
+--- vim74.orig/.hgignore	1970-01-01 00:00:00.000000000 +0000
++++ vim74/.hgignore	2013-10-01 16:15:43.188538787 +0000
+@@ -0,0 +1,61 @@
++syntax: glob
++
++# Unixen: object and executable files.
++*.o
++src/vim
++src/xxd/xxd
++src/auto/if_perl.c
++src/tags
++
++# We do need src/auto/configure.
++src/auto/config.aap
++src/auto/config.cache
++src/auto/config.h
++src/auto/config.log
++src/auto/config.mk
++src/auto/config.status
++src/auto/configure.aap
++src/auto/osdef.h
++src/auto/link.log
++src/auto/link.sed
++src/auto/pathdef.c
++
++# Windows
++*.exe
++*.idb
++*.manifest
++*.exp
++*.obj
++*.pdb
++*.ilk
++*.sln
++*.suo
++*.res
++*.RES
++src/if_perl.c
++src/pathdef.c
++src/Obj*/pathdef.c
++gvimext.dll
++gvimext.lib
++
++# Mac OSX
++src/xxd/xxd.dSYM
++
++# All platforms
++*.rej
++*.orig
++*.mo
++*.swp
++*~
++*.pyc
++src/po/vim.pot
++
++# Generated by "make test"
++src/po/*.ck 
++src/testdir/mbyte.vim 
++src/testdir/mzscheme.vim 
++src/testdir/lua.vim 
++src/testdir/small.vim 
++src/testdir/tiny.vim 
++src/testdir/test*.out
++src/testdir/test.log
+diff -Naur vim74.orig/.hgtags vim74/.hgtags
+--- vim74.orig/.hgtags	1970-01-01 00:00:00.000000000 +0000
++++ vim74/.hgtags	2013-10-01 16:15:43.192538787 +0000
+@@ -0,0 +1,2770 @@
++004eb98eb3c30714cb6a24ec3e810275080a8413 v7-1-117
++006e9c8a6a8ad354a5cb6adcce6ebfceddeb20ee v7-0079
++010397e1770eec8ff399cfc3bbd79f853849ffc1 v7-0160
++0137e7c3d31b09f1c1e494405f3f99f6423b74cd v7-0196
++0139403c8eb088d58773f7e76dc2a025719a8e8c v7-3-135
++01583c79d5f4d3f29d4c33dd10dd29efd349cad0 v7-0d03
++01762f635babb0fecb3a9f04549a54e86f67cf8b v7-1-047
++01a0da54773eb2af0215762629db5c6eed01ba06 v7-1-138
++021f9d0f60a1700989e2deeab78da32837c1041b v7-2-079
++028158b1362b55a23cc6d8d086976c4dfd6e094a v7-0090
++033e7b49356c11b2d9cc45dec6dc3d695d7ef95a v7-3-083
++0358abf2b5d4ab5981a5a1dd651ecf63d40ffbfb v7-1-315
++03714c67a82b8557cb8ee0789cbced75d804d949 v7-2-134
++039ce9407934bd97142aab06c5d1869d8e2ba3c7 v7-0-032
++03b3684919e3299ff560609c0c5f577822f64614 v7-0084
++03c191181749e422b375fbb8cd0763dede7d9beb v7-2-313
++03c4ceec6bec956646c07390aa09052cf5f0468f v7-0-054
++03d49a7c83196a406cbd12f4898fc988731af927 v7-3-010
++03ec0f2b9a403b1cbc494eac6c038076ece0b37c v7-1-242
++04265ffbda1f9b14729bc5d85069ff0711ce3744 v7-1-210
++044d5e9b1292f694e73ae929eeceaa9685fa0580 v7-2-194
++04613e770ec0bd536f04c0fb6d80b76e1af1d6e4 v7-2-189
++048f26eb43a348e49fc4f9deaca03779c2de595e v7-1-082
++04943f31135747da59cbed2b39fb109dd2796426 v7-0-165
++04fc2a0e98ed7af6ee11a2025d6a0c877114c039 v7-2-057
++057029bf347002408541ec73da1373ae64002a3f v7-2-338
++05952d133506353938f50f0b22b0097b6cdf0afd v7-2-095
++05b48b16b627b63ee0f6dda7d7f07704c3d2fe64 v7-1-198
++05c8ff7f128406d2d6052abbf5b92635d3cb0284 v7-2-162
++05dc93b9c61f63c1691849fe7407c9472a7f6288 v7-0208
++0606065af0a02f79b43b4a89383b04c21e2f0be3 v7-3-111
++062104a823df0f5a225b327b00a3766e41e4610f v7-2-201
++06234af3a8b7df68bfaf0efa87edfed2d743f6c7 v7-0106
++06317850ad3acd03765fc0f8002f17417773d906 v7-2-045
++066778e39c2ae6bbf23708d98e1a7a7e53a9a6d0 v7-1-232
++0670d0df210a891f82d38c38f1b3b256dd1a5f8d v7-2-017
++0691866e6cc92996f4fbc881e134248571ae7c82 v7-1-180
++06959e7212e521904f3b7d75bac5005b9f44bde3 v7-0-077
++06aa43dde5610dff598940ccde1dd25a617a1a52 v7-3-006
++06bc859d1a32de8763e310669d0c008b3945af1c v7-0049
++06e0f7482cef3412ecb4b0b62b65b1e7c4ed92b2 v7-1-052
++071166147fc55311bb86bc9367aca005c4a1447c v7-2-299
++0713c530729ba6d2bdc9fdb4fd400f46b16c37be v7-1-169
++073f98f45a447a137c2e2d74f936a9e26179ce1b v7-0-035
++077c15286de8e37250ed1337a448c740c86ee740 v7-2-293
++07d199fe02ed46fff935b2daa4efc979eacaab4c v7-0209
++07de57cbcb25d63bf515b67de654dd89004888fa v7-2-327
++08012a1ff8d4b4f5736a47440a907ec6e5e1610d v7-0137
++0836531167ab2f1cd48382b093c3080c3bc47786 v7-2-059
++0868e4e53fb2e9f9bd469fae0323a1df43be476b v7-1-029
++0887e8a13e5f33db2f832a52654a0d1fa82f322f v7-3-109
++09cc86b6665358a20d9faf54ce8eec45ca4fc5de v7-2-387
++09d0e83c29b805f127c6756231bb4adfb1b2974c v7-0-130
++09f00d57222b6d8de104660ea3f9c6bb42b9d31a v7-2-172
++09fcdfde9afca8990c086e60fe5e122cb258cadc v7-0-046
++0a1d45e2d8e30fc0aef25d5fd7505840d1e0e836 v7-2-258
++0a60be12e47e322c4dbae7b083321c60f599c0b8 v7-0125
++0a80dc6d78048478d4e7f0f99f573c947d5d95c0 v7-1-131
++0a908b65de1dbebbde1aacfd50aa41ef09e6865e v7-2b-012
++0a9371c70540d0d42c79a1d76e590fa2ccb978b3 v7-0220
++0b056c1350dd2ff28249130194d9a2be7b606a86 v7-0-193
++0b1b7560c456a32ad921e3985b90008ef1f82a91 v7-0174
++0b211ebefd4e6ee52ae81a75938b4ee61ca15770 v7-0-071
++0b42546f036bb3ff8023b6015a5acf032a2ae1f1 v7-2-076
++0b4a515b125474db496caa0be22a28e8bd99c88e v7-3-132
++0b796e045c429253e9ce8825ad05aad2474553bd v7-2b-000
++0c0a2b25d10aaaf556344d7404d12aba81632cf4 v7-0-015
++0c381fb7846cda92fbdb327bbfe4ab1f73a86d8d v7-0214
++0c39ff7a90a81c62f2718f71bf0a4d636a8ac69c v7-3-127
++0c4a465bd7419d51017354b70ead01c18b589e9d v7-2b-029
++0c61c201ba76d7235913010395e065991ac059b9 v7-1-196
++0c6c64edcbe0481659fdd91f6312296e7c1bb303 v7-2-052
++0c7d6d01e0582b54f34ab66852116d559c39550c v7-3-101
++0d0bf7598dcb63fdb5be9300f407e043102ab895 v7-1-256
++0d31f8a78ab35b256359b6ae53c80cecce59d44c v7-0-143
++0d6554dfc71e5e58866ef0118ed05007a4c59672 v7-0061
++0dbc46d14443418020e3868a08877a365ced11e1 v7-2b-028
++0de47f0d731e32af52784171986734b735ac626f v7-3-051
++0e3bd80a3f74a99241a4857685912dc8efeb9bdf v7-1-286
++0e3e208b4b901f22beecc85c5781170f3c4e5351 v7-0-104
++0e3e601e66cf233986924652f7801dc8d2568a84 v7-1-288
++0e45a0c50acaa31dd4052c57053bb86afd4e711e v7-2-154
++0e4631bf94411717193870a5ad7d62945d06cadc v7-2-377
++0e4c64dfc61141a68b83b5204a160b5c01986279 v7-2-125
++0e4fa55d20e025a70e3e6b82abc58333902c45db v7-2-040
++0e57be57fa49a0d2c0b7f17b7cb137b4260b79d6 v7-0-207
++0e5eb96dc18ce7986eadf32bb700e503da52ae47 v7-1-142
++0e6b369b9760459289b84a9c2e07478c063cd386 v7-1-126
++0e902b8f511f0442ee2b28314d6e085e3e00798e v7-0051
++0eef0f62181190700a01129a88f693503ae94947 v7-2a-006
++0ef5b70c3eaf694c9e9b85aed3f80af53e6fd9cf v7-0045
++0ef9cebc4f5d1c00554543918fea2a0b7539b922 v7-0031
++0f109c56b521834af0d9492b21d0ef1ead5b01ef v7-2-014
++0f3f3090491faea043fa144780d1287e011390ac v7-1-205
++0f552ca271c27681ed126261ce49e52ef144175e v7-2-393
++0f9f4761ad9cafbf1e72de338aa3fc59f1dd693d v7-0216
++1002128c68dbe2f69466b1b2cb354b00eec2980b v7-1-109
++103dea6545430092db1851d1b712a742af1a74f2 v7-3-017
++10a1b67c0885aabdac7c76a96169cd9e36414428 v7-1-068
++10ce04af8c5b26e55cd2157408883d9ed79b9a3d v7-3-021
++10d7ebdbe8a3a9787360b21a9836c6bae6a6a7a2 v7-0-169
++11155435487064d64efb296f7c2966baae8d27e3 v7-2-402
++111e109dad1301c7699d18e5689f1842f4b67e6c v7-0b01
++11472bbcdb6e2effe1c248d09b4d7089fa7a26d2 v7-2-183
++11a74d2cab9dbe41af2ed5d08b18fbdac14f6e43 v7-2-147
++11c004cc1a4df89b9246a96106db6c6f0260b7d8 v7-0-241
++11c6bda3b53abb2c98ed9221ba89880eeef7514f v7-2-268
++125e80798a85dbead9a91815cabd1d0aed63f455 v7-0021
++1287e2bbeb405c10201d4caa6b2dab284f84efbf v7-2-207
++12aba62fa7c6812ec46eb3be6759d82a4a651a93 v7-2-422
++12f9cd68b9c3aaf3659d9219551a5822cf798857 v7-1-257
++131dbd3d2a4bba5d1514c2842952ca7b77b6902e v7-2a-019
++1324b7b755f3b5570ce9aa7fb27c075c89a1d2df v7-1-322
++134c7695af324bd4118f52b9235aeff7e374a425 v7-2-121
++1378bc45ebe5754c0d3ec64d37810eaad3a544f3 v7-2-348
++144ad7f25f6741815c8297fe77965f93ee359c2a v7-0-118
++15130d4dfea14898029686b72536f54197a73062 v7-2-117
++15146eaa0e9c6dd6802cf70a2da3b220992eda1e v7-0-001
++15154710ed57eab29f7e4b848eafe63ea2dfdf85 v7-1-140
++151a805b2ddc219d4a968154a43daefbb2e41fe1 v7-1-081
++152883db0edf63f35e8459dcc5862ef3f4b48c9e v7-1-321
++152e526245217fedd07f0480e08ea59b0075a8b0 v7-1-001
++15674e198164c10b08e138f4c18b58e76306d9be v7-2-389
++158a68529622f90d0b0f1f5596f55cc5ce06c9ee v7-2-060
++159d87361e4b0d99c3863b3c82b7121a474cdf1f v7-1-168
++15e847397be75c6b0590505a9e201c793d070eee v7-2-205
++165c628aa9fc3cca34ccf63dc8ab953745d4e228 v7-0108
++169533a9699fa7d3fd67b57ad99d04076d060831 v7-0g02
++17526daaf79dbf2004c78311abdad05e6e3070dc v7-2b-021
++1780e6046802498a3c4d0ddc7b99f1bd9ac75f31 v7-0-157
++17a83c0532e83e9f4cd89f03dcbf206662d25b1f v7-1-062
++17b9587ff6d5beef34d98043ca5f3111e5d29e4d v7-0-202
++17b96d8dcc5c8356e10135f5735d6de2fa5da3e8 v7-2-038
++17c88d44ace9bc9e76485811ffa459b5c15a6bb7 v7-1-234
++18061514324fefb37ea7a7e7783985004ea0874d v7-3-084
++183c3187b20dbc6ecc74958e9ba141f0d4f72d23 v7-0-205
++184a6091124e80e1c9f66ed0908deab552ca369c v7-1-220
++184d2020d8f12823a2f2cb96335a68ac1bda3270 v7-1a-001
++18ee39301b822de39caf5fa023107ddf508b42e0 v7-2a
++18f024844150562a9e56522edcad3fc1d5c257e4 v7-0086
++19106f131c872dc79bb409ffe8b5e35ebe885c1b v7-0188
++196d564759eb256f62e7fb7ec4561c1e2d533726 v7-2-072
++198a695ca8e7273641991bcf346085bbce70d740 v7-1b-001
++198ea7a9c633089ef2638513d05611a9d1b6e39c v7-1-182
++19ed3bfbe488a730858d0d26b433029b85e231cd v7-0-159
++19ef2bbf569cba64ae5125d5b1f3f205efc25e89 v7-1-263
++1a00e831244b1e509286ea35a586c6c43dcdaaaa v7-2-202
++1a040c25c44485c85e838a7530051f6d4f9793a2 v7-2-123
++1a0d346695fa3525a08a27174fbdf016afdbb9a9 v7-3-085
++1a44839049aefb0722d43a87d7ed1708c9c94b18 v7-0229
++1a511b7b69ebdf866088b9e765dc42543cd76d0a v7-0-212
++1a85f952cdfe4716be162e308fbccb0117489915 v7-0195
++1a8b518bb993e00f546c4cef8bae9b51f91fe0d7 v7-2-198
++1aba098d6abc680214b3b31c954abd53ddc772ef v7-0-039
++1b55bbf5c58077e54b83307bbe715e131c57b750 v7-1-219
++1b7cac059babfb3365c0a44c0537c7aa9b286a71 v7-0172
++1baac9d06c83400c474e6484dc20229187d27a64 v7-3-024
++1bb06e6512a2fc961eaf9a8e7a749247c408e7f6 v7-2-358
++1bc46149d9195d9134d526ef524242ede65c2457 v7-1-167
++1bdb13b8e947b85e612afec3a1b5e09c29c30551 v7-2-039
++1c00ea3641a8a1e58e70cd51ab831003bdb41d50 v7-3-005
++1c1cbdc42f75d8fa0ca5a799b5e843e9aa2c098c v7-0077
++1c4ec9ed71caf24dbec13f6d3d4adbb48bce9436 v7-3-056
++1c586ee8dd452d305bebf633d5b8c78ba1ab170d v7-0183
++1c597397f0061fd2c750c65c961a31f70dd6747f v7-1-269
++1c64bf25bbcd49a83cc08dd60a6c3e5785266790 v7-2-247
++1c7a66d820e4dc9b0a9f696ed6e7a59cd9a20e19 v7-2-360
++1c85355293f92cd8bb41eaf6ce8a8be1d77302f1 v7-2-062
++1ccc1ace9e5b6c1223ba191ce20729a49f13970e v7-3-050
++1cdd2661f34c2aa93ae2f0317194d29d3a43f5be v7-0d01
++1d0ef79659afec337c26655216a1debbd1c74497 v7-0-002
++1d12208efb3732d6f520b05a47283208f12e3856 v7-0-209
++1d4c67f8470981d280aaf1d2a25877a00ec5d240 v7-1-084
++1d6d99daf4dcba733e5517045f70e53c185aa895 v7-1-165
++1d7f46148bf4ec36a42e959cece1f9f6199a87a7 v7-2b-006
++1da25369227bead09cf603ebfa93ebe1d206c871 v7-2-345
++1dd4e0ccd822156b87516f9cd5a6a004d0d85a11 v7-1-278
++1ddec6983d9ebdb4f7a748cc171199cc8ad3d1e0 v7-2-036
++1de53700b1d9f26a420a319d9c44ba0c43950035 v7-0-127
++1df41c98fc2e9a230ab9d05be84f4c91e4078619 v7-0-239
++1dfe9032bd92ef7ab7bf0baf0f0c1f61da68bce6 v7-0-131
++1e25b58fbf7babbbe054e118617a49790f532fd4 v7-2-024
++1e52efdc900cab1dd64f6a987bbe5117fa1f9748 v7-2-270
++1ee00a062acbd04360de8b754e834f7ef6025328 v7-2-246
++1f099ff4f6fb2b0731bb38e279d0c692ee05df8d v7-1-129
++1f3902f3eb5c20e7872c42cdee9c91e2b25d3f47 v7-0038
++1f3b1021f002ac9703c1de0e80703b8067546a41 v7-0e05
++1f53050b38688e127c4ea67251ab2730002541bd v7-2-294
++1f90fab89ce32126849aa28d2918bae96603f3bd v7-2-069
++1f929f3ca8066b3170c7a58c414837d47bef707e v7-0c03
++1f93fbcb4e0cf1dcd8682242f40aa5f2906c42ac v7-1-201
++1f9e2c8e642a29d93b9c32062c785f4c38883e0c v7-1-034
++1fbbe04a950f9ed82b53ddf67d8e034224fc98ad v7-2-286
++1fc8d918d9fc076304ef0dbaad897e8e5b6ba4ab v7-2-093
++200b706675a56daad05f8b0d60991825c45b6e2d v7-1-183
++20308f30826db09e99d531214eaaf03ea8b13d15 v7-0-162
++205a26fab11655d086ce185525193d16f37d60b5 v7-1-203
++20b2e52ca96255a8d99ed9504e90a960266c4d21 v7-2-009
++20b4b6a2a212584f182a2d69a37512bf9094d85e v7-1-279
++20b52d44daafbd65b01db735c4d5597ccb9e386d v7-1-130
++20c18291deb21dcc69b6ceb3c11c309a92396fb4 v7-2-302
++20d9fc2f13a4132d6344fb6457040b02720774cf v7-2-403
++215d6b2a1816a5eaf5f5d2cb7cb1b22d24adbdab v7-1-159
++217c9aa4c3ba6ea559ec5675871d6d89313363e8 v7-2-114
++21b11491a33fee3cd77dcfcc2448382f060543f2 v7-1-156
++21c3634c211345ea79e90c4927513e7dc1381617 v7-0134
++21ce954cbdcac9dea2aa826ff40adc2fb2184600 v7-0-201
++220a9309067dfc6e7e8301b392c3499054666396 v7-1-266
++2244be18d9e9ce602a12e7529614c25ca8cef1ee v7-0162
++22886f3d882d231a528dcc012c23e54180c8248c v7-1-040
++232a4740aa0ed615c52b289a111b51171e74a78f v7-0-005
++2392a6da4aa430f896451d97da8c49ed3fcdb9cb v7-0186
++23aeaff961412f06544babde36a80a6c22be0fd9 v7-1-307
++23d23246742e7d301d09f0cb03533226b64043b4 v7-0-219
++23d366df193868572eacd04e1a32bc2283a30e56 v7-2-335
++23f82b5d2814be7ca4dee000226bd67dc6cd02cf v7-0c10
++24100651daa9d7140d33f298c987c9d42bd919bf v7-2-411
++2430fc9a18d1270a5ad7b5f7acac3e19aa8908fb v7-1-306
++2448f4c8afc65a91130fa0237c253e6698481c64 v7-0-055
++24b7b3cc4eec4387713a615519489fa5a34b253d v7-1-251
++24eb7921b8f004c8c462297cf53afad8f5578243 v7-2-367
++251307ebe1dbacd972e35e923f7360d12733f2b7 v7-1-049
++25154b22dc967b158645be9cb87017f548ee5446 v7-0-198
++2548cf0a5f625110a5cd42ee5566c2709c2c34f0 v7-0-011
++25bc02d83cf438d5794ce106edad2959e2f89454 v7-1-292
++25dd5036f2b0b5e68492c49f15eaa228aa957f69 v7-0092
++2651e7d07cd631af64818f5d3cf5dbb199fa6f64 v7-0-140
++266f9d9f5109421afcbc8169896b484ff7a19a8d v7-3-061
++26876d0f15e9294aa4fcbfc43260a5f2a703e313 v7-2-256
++26b0b2f606d2953068951dca673d963b7c5cccb7 v7-1-122
++26cbd39f22513d82cc43d2b1badefcea8db1c546 v7-1-103
++26d879bcab3aa016ccaf77cfd3a9aa5085d4776e v7-1-284
++26fb122355d4d6b04850f7608f1d82da8dbc51c7 v7-3-107
++26ff011aec2dbc96736396430403d572d4f111d5 v7-0-172
++27060fe297d0ce872dfa3bc20416f7189b9fbc59 v7-2-273
++2750661e93d556868d97f49fae32a1f470bca107 v7-1-253
++27621abffed24f1e2849ea616f91f0a99747608f v7-3-099
++276244befa5b2a34893ba581818df14cd7e4504e v7-1-189
++2775dcd056031e0a7314da9a9e0b2cebbb089525 v7-2-426
++27782797c331b8800c12ad17c5d05adab5e92edb v7-1-107
++2787b8483e6498f536e66ac134a073246ab6f5e4 v7-0-125
++279380a812add1307a2a20c444f2334b7a45106d v7-2-412
++27d8fe1c096407ddca428c52f62d002dfed7879f v7-2-090
++2832243e801ec537589809059f65efb3b8a57f93 v7-2-399
++28398206597f975583c9f8f212d336fc9f67953f v7-3-089
++28558ab31051fc1870ac690c0b576ca9365021f5 v7-1-202
++28641f0ed9deb579934416e6161260d4d218f394 v7-2-211
++288fb648badba86a0bdce6dbcecb55eb386263ab v7-2-128
++289b19a6f2edb5b46df57195d5fae41dfe963290 v7-0103
++28d0c20ad8a09dd63fa34768eac4be3cf96ed239 v7-2-051
++28e9eb0f2d849e7e32d70b4e1f06dad812288578 v7-2-077
++2928a6b338c3f434723520a12fa378895d4b24cf v7-2-187
++2930fd8e7d9f1514448261365b787501dbd9a0b7 v7-0171
++293621502c4daa122ae601398d854857bb732a83 v7-0010
++2951f28a9bd3b08c5be9bc9b3745f062b95635b8 v7-1-192
++2981ad79c362bff0c21d3ff0d68be57213bca837 v7-0-025
++29bf49bad20d3b1ad35af5cf21d91c4aa486d4a5 v7-0-068
++29c09fa57168acd665a85ed5a210b48b60d0b5e2 v7-1-211
++2a11407a5a8f4efccc04dfde8a61e40ec5eb9fc5 v7-2-066
++2a256978a64649b75d424eec6e703f99f7f28636 v7-1-003
++2a8bf2ba504f422d53dac30da8b58d76e54b4428 v7-3-003
++2a9d26c95a2a9b2f1a279e04de22ee4c7298552c v7-3-077
++2ab007070fc86d20596dfbded70d0f986c084304 v7-1-113
++2ae2dd2591fae798e4212e9b2c47281eca0c8483 v7-1-055
++2b273c71a14b7d0e64b6ae9bdcf60ef7e4d45aa8 v7-2-415
++2b475ed86e6491b20046d5c34fec8ea86988dade v7-3-074
++2b4debdc8d2c73d1fc37b750010e3a4098b035af v7-0035
++2b913f7eb9d2b411f9ef2c0fa44f313b7382bd89 v7-0039
++2bd29808d1f640f027ab7a4a4f2b5b6a0e6c8e38 v7-2-429
++2bd96108392ec08b6c384893939968d94bab4dbb v7-2-351
++2bebfa810a66caed9562541776d92f73a71de7f1 v7-0-091
++2bfc2b7033147de9689cf2d651bd8ef36fdac68b v7-0078
++2c1ffe8953ee85cf04d4db5c03ab711c1c6c015a v7-0080
++2c4ca49319a689ad9caa4429cd90bceda4e210a3 v7-1-271
++2c5e70e2858fa46c7b80b022f217103b8c90e9e9 v7-3-016
++2c885fab04e31a34d91e4375d2d0397cadb818ce v7-0e06
++2cdbc91795ca0d15343fe954ae2af71f830f9656 v7-3-007
++2cdccc96d730501ce4e509e7efe4f8fd3f2b2e29 v7-1-150
++2ced59eaf1e5c67060fe124902407a8bf77a1a78 v7-0-233
++2d0f22897a4d1f71600540e64a5cbf80a178e46a v7-0-173
++2d9eebf2c48f0bd3b51e8ba085b97da871cd4184 v7-3-126
++2df7e2d753061b54b9120ae4b34d4bf050cf17f5 v7-1-246
++2e1e9b708941e1cfc2c0540196719f78e1ab18f5 v7-0-023
++2e42153b37f171ed28293fa12e4f538070bf8619 v7-2-021
++2e915ea7110f0dc0507a733e4330ec6cc91e53ff v7-2-266
++2f016b638c0ca912d89f352f6b9b83231cf9e83b v7-1-312
++2f57d93bdbf64461c4eaeaacdba26548a2abb9cf v7-3-030
++2f6e519726f19c2f6cb58e9cd75e827eaafa0ab3 v7-2-346
++2f70b8f1f1e32dca34db07fedf9cbb56ff97007f v7-1-076
++2f9308b31181f36bf605ee060fa763a28deacb03 v7-2b-030
++2fa8cb05b861d49dec0501a2531eec39e1d0a688 v7-0218
++2fb204616c9b4e4df95f1560899d02e5bb739678 v7-0-079
++2fcd444c4bd37f916da718bf5bbe9535d2667331 v7-0057
++300fac7c5a2bafb002ee97d52da19bae8a344d51 v7-0059
++302a6aa7aca2ee9cf24958c2277a90fcfc01c939 v7-1-061
++30534c76776ab088a4142f9e15faa23d86efe020 v7-2-078
++306fc545fe2cd5d77953811fccec0d5c4bf7744e v7-0-066
++3112fcc8923830fd9060c76d1ec9c75c59487d59 v7-2-371
++31208ed42de95ba5738675cb78bd0f66c34ed785 v7-0-065
++313ec58cdc49a69c4386a4aa18fb9bcd01155feb v7-0-206
++316dad0565b8943c978c8c58b212f3c4469b1cf7 v7-0-103
++31757405c0c5408f9c83dba9d83ea74b2bd680d5 v7-3-134
++31bff9be0a7730f36e7de4792fec0688f2fc7076 v7-0g04
++31df87b80e562b6a83b97e2610f539afc94bc440 v7-2-278
++32c1b275ba6419fc014ffba3d2e55eca1ef06d4c v7-0-196
++32e19278c1ad1be6f92fc6cbcefb7e23ddf928cb v7-0-105
++32f48534fa0fa9b8e6833850fcbd77cd002ce8e0 v7-1-187
++3328b87305efcc6a8db6923c31cbf78a05983eff v7-1-077
++3372616fe1f1def653875bedaa8c059c399197ac v7-1-144
++3376d79d40f2d2c8e09cf8a3c07e15fc2424ecb3 v7-0-148
++33792c36e3aadc7f313785705f39d7ea6e214319 v7-1-018
++339999b511a0d529f09219a5d61b810fc75261ef v7-0148
++33a2652c13268ca53bb9ce0cfb7232655864c373 v7-0-231
++33d28f1c4d1dad3d4ce7f768c57820a8203c3e51 v7-2-006
++342cf2a9f5cce4f70e6a974253b20c8e309de7ef v7-1-145
++342d2b3a072a6cbc3cff898a663c4889317b32a9 v7-0-208
++3479f9aacaf57d583abb468cfe393eead386f15a v7-2b-008
++34f62bcce014d9c0b275002a1001cd1582ffa121 v7-3-123
++351bf13db8071317d7add1e55a50ae284ff53a4f v7-2-334
++354ea37841d13e0d9bb5ae995a09fb28beaa0d13 v7-0-022
++35abb70264158760c724bd0290c6c441afec4fa0 v7-2-033
++35cef95a6b7646d045b97bd4a54bb90000b5a753 v7-0168
++35edf814f2230c2bfdf403073fdcf89094c8216a v7-3-100
++35effbd07a25d1df122e795165d26ceb65510c3a v7-2-421
++35f3b20de2dd2c821675c61a11f4b227d31e9cdd v7-1-102
++36071a92cb764412276e067fed099164b0170436 v7-0167
++36275e20d997b91a357433debf8fbac0885768a0 v7-1-051
++3686831cf3da094c66ca4d2ab2c671d3d2e2d497 v7-0166
++3709cf52b9b56befb1c7a98e5f58cf39d16cf953 v7-0119
++371201c6b4c1538b593b5dc72f36c79a1f2644de v7-1-327
++378e33d47ab09cbb564a2aa6e975659a7f742a67 v7-2-250
++3796d11fde3c141d30cc3446038c20bf280c4b5f v7-1-267
++37d62d968182826522e378b31b76cf0a8c7a3cb7 v7-3-058
++389c8abd59258ba5ebc164dc7158a025bfa893a2 v7-0048
++38d7bf77e55068a5157faac7d871f2f3a66cbfad v7-0226
++38de872507e1c6440c9252a7bad077ae8c1bd488 v7-1-280
++396a9b65abe6a8fd08a6c232b443d541717cad0e v7-1-121
++39aaf0cc59e83148991c7482fa82d2bc29129d3a v7-0-150
++39d115408c71e1bf72439d5a92d98c8e551a5750 v7-0-186
++39ebe9e88854b766c569529a96dac3b67aba0e65 v7-0165
++3a6ba07b3b9fa89e94e002d44f57f5378eb59f08 v7-1-302
++3a779b47f235a62d799147b25445b01866f7c0dd v7-0223
++3acbcd0d3fd3d81ce94a40af4510fcc2e7870a82 v7-1-317
++3adc6dd2d122c76a211d88769227e447e4f8f821 v7-3-136
++3ae106044109e65b5bce1ea8938e0658729349ed v7-1-008
++3af28ecf9e56315a8617b2c58da078b6df989f2c v7-2-122
++3af484dca921e30a0bb1e4975a4fb214c3911f94 v7-2-150
++3b1d692e5a2c3053fa066d202ffc0b51779d2c71 v7-0040
++3b226f4693dc8dd1fb8886221335c39a64bb1fa9 v7-1-207
++3b241fd8d7c09d7a93694a0abcdc283dcd6b4675 v7-2-441
++3b48421dbde112f3a6dae67a651a9f114d85c874 v7-1-301
++3b705e71c7b07ba1309d08a8b370ae8ad3fc17cd v7-0124
++3ba373b54370d830e3fda93eee83e3f0b1ea2a0b v7-0008
++3bfd2e1e2609c8470c5b4f75184b66e5a4d8faef v7-1-053
++3c17132458a1538d3f1d6ab00544df8069bd983d v7-1-208
++3c17f4d2196f2f280de13a417652529c417548ff v7-0-028
++3c251a30c8cc44946e5871a7073d88ce195874cd v7-1-325
++3c6417b7e6efed4cb13673383489efb47399a902 v7-2b-027
++3c838658fc357dc48e457bdbc1f5a63ae5a73d19 v7-2-257
++3cd88bdcd97d7d0a3e2f5a00a6627f00970ce5b9 v7-0-045
++3cdf2a653e005387c4deeceb7281d62fffd34687 v7-2-391
++3d698caa5dfc7b11c8a6ada5f57e75c7a6a117dc v7-1-064
++3d842a9e2baefc023d9e4f163ea138b9e29931e8 v7-0-051
++3dc6072e0a25f24ad5d888af77d858036a9185f1 v7-0-083
++3dd986bfef63bd08894294a0828a1bca737320e1 v7-2-181
++3dfff6a80088c921b391d493c6c1231e4e64a656 v7-2-217
++3e0f9984e98e8f020260ff015cc994ccc34059a9 v7-1-111
++3e7d17e425b0f58513002797b3310e722757893f v7-0044
++3ea3dcbf2cd6e5ddb9d827c60ce999b2e4a5e755 v7-3-108
++3eb34a777f49f7f656b32c8db829fd0b153abe23 v7-2-220
++3ee6db0a746e990164e288fed6344e519a5bd1d2 v7-0083
++3ee896333e3eebba8a5e10e04649f1bd20e98770 v7-1-290
++3f1b2e6496debe5ee3068d1916ea15926d5a0f99 v7-2-252
++3f44e9abe4ec65f797cbd12f1d46bd08eb48c2ef v7-0015
++3f661e42f262e7839e2f04c50a447c53f6c4214c v7-2-228
++3f8cf4c668c30ec99289b5683f4fd36a1df602fa v7-0-115
++3fc0f57ecb91686b33630dcac973ab9d7db31c6e v7-0001
++3ffdc64af1e53617586ad0cf14e039cb6f1cad34 v7-0120
++404aac550f357223e7bab3656343827f641d9f74 v7-0017
++40a0699b6c62f93e58ae233fcdfd395bbc1bc80f v7-0046
++40a8e388692b53d36104e9c9b6ed351c01707308 v7-2-241
++40aa7ae37901ce256da18bcc84dc5ee21f83829a v7-1-149
++40f2a904bffbbe8fb600089d1b04f1115a2a4a71 v7-1-115
++4102fb4ea78127b1a95b2df3274a55d9bfba68c2 v7-0002
++410fa1a31baff929c7876be744142723c1573c75 v7-0023
++417c04135ca2ec03b6357404b62761ca9453cdba v7-3-137
++417c4d78a09c07162879dfb79e25e672e6e9218d v7-1-043
++41ab6b381572fcef699480ffb759d3c4543f0dd0 v7-0-128
++41d8447a84570ca22fe07277a2f8e9db694f66f0 v7-2-236
++41f9fd58cf132788bde73ab1954cb987521e3bd2 v7-0019
++421a77b136c2bec5d2056a799e2fa8021178beda v7-2-002
++4238b697bfff46433c49d60cc20b43761ab3c128 v7-1-097
++4256f76f72668271d9d986cc3736eb188b4400a4 v7-0-080
++4269a0673478b966f8d0e08b5681ea0cf2acd68d v7-2-432
++42ac369bd824634488b569ec5516fc435b700be8 v7-2-070
++42cafbf4b6e81160c26fc99148eb333aab5d2f96 v7-3-110
++430793c2a2315e1d0ed2de460071eb83a4f9c97f v7-2-319
++430f555d7d152cfa5b7dc43b8b8b0dfa0d520520 v7-2-195
++431ebc9412a816440aaed887a3d318deb08c6407 v7-2-418
++43243f7ce351aecf1f41932a9d02d6723fe49e34 v7-3-128
++4353593fc2c07753d40f71998688985cf96689d3 v7-1-244
++437fb19625c9e24e2157563cf0a55aeb432b2990 v7-1-275
++439f44b874a731461a187dc720edc0c663ab47b2 v7-2-291
++43a60ac87145f10d827e08b02c8241b359697740 v7-2-263
++43bf0bcf2110ffd8d42f0ea9b1469b1024def86c v7-0115
++43d337097e4ceffd268685809aa1e8e0f2a2dbec v7-2-223
++441f938ea9e90e07a05e55fef17ab22d2607f5f3 v7-0192
++4483ee552619492639c69f4345d6554b7bcbef2b v7-2-355
++44c01fae1181944162c94bfba919ac9867ceec40 v7-2-160
++44fe912b5a1b3961c7bdfbd2a8277d38eeed1e77 v7-2-145
++451bed7e9572b45d2bc98bb5c6680e7bdf4a3fc3 v7-2-321
++4541e06d4fb9dd8b69a7ab43653c72022f95151f v7-1-323
++4549e0e7fbb661089184c7b0ba1888cb6564ef2c v7-3-076
++454d71a434176e2d1ce0c2a7d47bfe2583a5069c v7-1-037
++456ae41254c975189c55a6ad28b1255936c847fb v7-2-159
++4577899b8ff1548f3f03e6516715087c9aa15e6e v7-2c-003
++45898756e0598f357776ae5aa05d717a7017e0cc v7-1-105
++4589d1792c036e15d1f9e72c0252fb243aa6d5e4 v7-2-094
++45ba31f9ba0cad526601d1d15d4e05180967133f v7-1-127
++45bae37de0373ed58d6f4ed8721d594ae322782d v7-1-031
++45d9e2f80fe18c663346a2e88409bf2476e874cd v7-2-061
++45fe7cf4a89e3963ed9c0d6a34600dcff8de3f9f v7-0-176
++463e25d28b334622df784faea456a98ddbc0b5ce v7-1
++464da5b48d277d1052e3c211000717947fa13da6 v7-3-130
++469c42f90fda78344dd4b33e7c0dd0860b777939 v7-1-030
++46d39f2eff86c940486c2da466283d7526b98c9e v7-0027
++476336a5ae9588c4a13721b5ec1cd792fa44ea2c v7-2-404
++4772a5e3f9fa652baa1cb6d5295d60daeef6ef0b v7-0138
++47a0dcad7216bfe602a2ee241df60bfc41c04979 v7-3-120
++4842e7421b5207294cc90f7e2d2d18c24e65753c v7-2b-024
++4845822f6a6c21860e0a1b4627996d745d455da2 v7-1-213
++484987f8e04c44e19e1ef2f3f6864b4c6fe61f1c v7-2-118
++4869457735a9133c39202f797a6694301c41abc5 v7-2-290
++48775ea99f249b75872e9f0268c5bda8cb8af8da v7-0-007
++48b22e2eb1ed7782c4dfb90051b64d6614fc6d3b v7-1-185
++48c9c2bf59afb140dfae3f4b7182ca410e72cb25 v7-0060
++49b5a7f186aae9fdd9b633037e8da484c61c55bf v7-1-002
++4a317df1696281eaee0e54b5c1636186290863a3 v7-1-298
++4a4287c09953fff6a65f7324c5f223f7359c46f2 v7-2-390
++4a4b16c67c62174b3b66848a32f4e5554b9cf6c0 v7-0-183
++4a6554fb0483f5cab10876ff0d9a0e92a9787119 v7-0-161
++4a7320e53f32e1f6d60c498d870e6c4b8c7acc35 v7-0126
++4a79d6d376f0897e3a899ccb104a324a94bb846c v7-0c02
++4aa4510d548c9fff9d8317977e3801a68fe2aaba v7-2-341
++4ac0c84d1c5038d0f6171c68d9c58ef0fefd4226 v7-3-079
++4ac1dce8dd5e8d8e97e3e7b921f3ada9db2fe2de v7-0012
++4b8583e82cb8875d14ff928db281aea8145d0b0d v7-0201
++4b9fef49d7ff02cf781d26d5b85a0a03c8784fd8 v7-0095
++4bac29d27e2f4c2779ecb72a5e78cd4a65cb455e v7-0
++4bac7ed34007ad41b7870888c739c1b4a129cfc3 v7-2-368
++4bc81d4dc6be1c45e41f1b083ad7fc07c58d840c v7-0-142
++4be6da0fa3d9978434273d3abc021d7e68455864 v7-2-400
++4c02214d1465ac2b014a9a1096927ad04eb710e8 v7-2-200
++4c41f0da2a2e35b42334d091130440d1b1479e7b v7-2-324
++4c70a10ce2bb6d83a4cbf3e3baab19d1752f2230 v7-1-042
++4c7cf05f60b5885e1a5caadb787cc6e290d7ee34 v7-2-110
++4c8008ab94d8da38529991004a56e65547faed15 v7-2-431
++4c8b90b7a94a123db784dea518f3c9a3bdfe85c4 v7-0-221
++4ca6669af2cdc06f39d77bfef82663e5bbdedd56 v7-2-046
++4ce0a7e4c6b3a305419590c746d2a11040fb2b92 v7-1-036
++4d53c2a2af94cf7a657d85e27f891b2d53b698c3 v7-0054
++4dccbe792a5e00c40a6e5b4f9e74d20b5aed2c50 v7-1-057
++4dd75cfd946f31e81eaa4b03ec81ef141c562137 v7-1-071
++4e22214f84640bdfbad591ec2da5eef9bc328dc5 v7-2-409
++4e581f1b08dac0b7f9345bd51b03a5fdbdd49ddc v7-1-281
++4ec11bb387a559fb6168fdae70e7d0ad78e15c3a v7-2-372
++4ec4c53046b5be6700810b9b92996a0cfb4ed52a v7-0-021
++4ee809acd1ab9c2fadee72e0fae32de57040447b v7-1-124
++4f1130893a1c135b1200f6857bd0ebfb143350e1 v7-1-320
++4f1b94b51e99370161ceb5a923573772ca068582 v7-0b02
++4f3857aa17853ab6c36005520ae723af92f50b9e v7-2-264
++4fb859cd9ba955957ad712ea390e87cffec6a540 v7-0-072
++4fe8e1a7758ea8170eaa4b1abf11cc9682437cbe v7-0102
++501b107b335af7ffcffea060c38f4b34dafe4101 v7-2-012
++5027d3220e2adb2f2f54e85f469a7b4302a010da v7-1-308
++5044d9d784ed2958022fd3446910567a4b84dacc v7-0-154
++509230ed2036945be2d9db7e1ecded3c59518c2d v7-0g05
++5098908178cdede4656e3f96f2df2847573e6ed9 v7-2-050
++50a93218720458be104f03ce1be00bcc8b898eb9 v7-0-228
++50e0337c25cae29dd3e63b333d4bfb68cc9b3740 v7-1-239
++50f5ac5b90dedfc7f88a67d7a435014e07c298ca v7-1-094
++5117153003bdb002aa3e68d3b90a98a973d38078 v7-0e
++513866ffe6af0bcc09e7275c0e9130170de66acb v7-0200
++513d037fad505a5169add3116ae459bd1adac381 v7-0154
++5232b9862f238a2a109f15527825e5cac1668a04 v7-2-000
++5232b9862f238a2a109f15527825e5cac1668a04 v7-2-080
++529c6a431ff5d5612bfba4424c023dcf073c2cc1 v7-0-056
++52c87a746f4ab8397933a53388389aba6a16bdd3 v7-0181
++52d17d53b555c45b0b9f4ddaf3551bc8ad5623ce v7-0d05
++52e76e2b5b65eae81c4ea93d290194763d7edcd7 v7-0140
++53175322ef40dd7f50dc4153e6e6fb530a4b2b29 v7-0070
++5332dd13733cd57e814b7e21cb577f6ad0c15408 v7-0094
++537cb92935b690665a72f2b31dead8d9b322dcb1 v7-0-223
++538cd3220874d9a98abc7219e7be6666e49f853b v7-3-011
++539d9b8f418aeeeac3d0da1932e1cdbe709456a1 v7-1-265
++53b2bedccfdf5ab8cbff6c3fb1f6f83ac7112b85 v7-1-091
++53b47a10825a20cd7684046146393a641d89972f v7-2-163
++53d475dff0e363bfeb31d6d171337cb19c309098 v7-2-374
++53fd0a213cff86b7185c5391cef34c1265f8b8f5 v7-0-237
++54a6b47d473e64d7ae5212f00b8b125c721d2c41 v7-1-160
++54d5eb36689f1a409d13cd6ff9b06d68a30b0d48 v7-2-092
++553c97222cc0d0adb7beecd6f73be1c512f2f37c v7-2b-005
++55e117ed68724567167ed25bfb5a320585f1bb5c v7-1-075
++563bd9a63fdcb08d55b6f6087cc8ededd31b891d v7-2-010
++56609cdae088c4d5b38ac94a95a07f1520b56fcc v7-0-059
++56695f1182f01d75843d0433484c94c1eade71de v7-0-238
++56b638f2029e728f1fb20382a7184a8e4ebdce9f v7-3-018
++56ecdb792c3353d9fc587a515fa4991e69363dd5 v7-3-036
++56fb4ab9f62f19b9812d483aa76f8b53104db26e v7-1-225
++575dacb554d8b134356fae0135383d5e2231113f v7-0096
++58059676e24a6fbbc686faf84c612cfa8c25485d v7-0-134
++5858c00d0f2c47b395e3c63cc809ee667f8c02a4 v7-0-122
++5898cc36322e7f1dc371e89dfb5e2ffc3c6c6e3e v7-1-309
++58a14bafc1f08b9712732a26a44c2a93e34e6ae2 v7-1-209
++58cad056e60844274b103ff3fdb56d7a6749b121 v7-2a-00
++58f47e17ba1565ec9c538c7f216cb9ea66e58a63 v7-3-122
++594f25e4a8065bcb865784556adf556004bddb24 v7-0144
++5950b03fc906f434d5a1b899bcee8ff839b05a34 v7-2-020
++59edc8429da0ca92da8913823f56b219e3a99051 v7-2-065
++59fd8376545beba122700d5a481793f29ff0a69e v7-0058
++5a1d8468d1fad7189c8c781149f034dbb4208b39 v7-0-224
++5a1d8468d1fad7189c8c781149f034dbb4208b39 v7-0-225
++5a1fe35a6eafb1c994955a34d8152996d53838e3 v7-3-092
++5a7384b9ca6691ee880dd4e01dddcba5dcac4f6d v7-2-031
++5a7843c57316c63d1118b6a5c2f42d330e57183b v7-0e02
++5a84b6388a5589d6f3b53a1aa6f8fcc369989a0e v7-2-369
++5a97d0c03b593699d6e0bb2ea49073dca03153f8 v7-2-397
++5abd3e3c0085de46b37ac9bcee90be8160dccafe v7-2-363
++5b101ff9d4c43c566e7adfb0a7c0978d2150d741 v7-0203
++5b154df6fcd89b4d24d34da63626cc01d9b5c0c2 v7-3-033
++5b43a3a9454ad69432d5cc82b70d59ec6c92a45a v7-2-003
++5ba8e25f7fc159a684a965ea9e6626f62b76997c v7-1-188
++5bbc2d6658adb0dd3c67dd80c59f3a7ade3ba3d6 v7-2a-013
++5bedef935ce38062e866c72aec633d38d95dfbf2 v7-2-357
++5c3844ad7d5677953eac88ec4ee317b298812bce v7-2a-017
++5c4b2fc4f067cd04bed4fd0a13bdec7d26036d26 v7-3-049
++5c6a3e894d43ed024662462cf5c6f77feb743132 v7-2-288
++5c6fa259c9236cfacc66dfeade89414479b5aa58 v7-2-328
++5d1ca05fa8ffd87bf59d26121e6cff5f91e9afd4 v7-2-199
++5d25cdc3c3f31d4893f646d5e7b94435ef59aa5e v7-2b-003
++5d2f6d04c82f900b01c18a7bcf2287a42cf09ffb v7-2-253
++5d5a41a95347bf4a1382babc697a1f940a83e43c v7-0-227
++5d5cad78a8380735abb8ca0e7d3ffb11e9eb98e6 v7-2-300
++5d84650b569c7800de8012d91660441bda95e5c0 v7-2-108
++5df74a812b7b20bd7e33634453c645be0eb8a2c4 v7-3-012
++5e0c164fc1c25fdfcef07fc03c6634216e6ac066 v7-2-277
++5e168526af25c0a59c55dd009e10a63d2f156114 v7-0-033
++5e225f973b5d22208869bfbf151c5fd03b5a3451 v7-2-089
++5e75d07bfe75fc81e0dac043b6bc0ba417736b17 v7-1-293
++5ea1f7516c2cb92422abed07129357a0d5a6a787 v7-2-165
++5eb1ac6f92ad40da9bbb585f5ff8fe003e85122c v7-1b
++5ed9395c1864269b18ffad462291eb37c92792f0 v7-2-235
++5ef53a1677ee9c831d7a18ee44d1041f182a82b2 v7-1-099
++5f0c7aae4da272c73cfc625f35dc050897b6afe7 v7-1-330
++5f33b64a6694dbc2c167b86c56488ddeeb7f46c5 v7-0107
++5fafc42c22d246e4dcef5c09d70b757e0d374b2c v7-2-053
++5fbc411a611de301397bf4f8edf494fe07bcf6f8 v7-3-042
++5fd44cf99b6ddccdadcf70ff8351999e4bf5dc38 v7-2-398
++605f5c2f77bace46037afea6841f7876af85a4b4 v7-2-182
++607cff4bc0cbd7ddf84007a20bf3e6bb01e70694 v7-0088
++60d21d224d251c448ef76b1b9df087497c06adf4 v7-1-038
++613517f0b72a1600d58abeb8c44df9b3de1ac997 v7-2-284
++61709607f5e26dc1d4cf420a25292ccc857d3575 v7-1-228
++619b90abfdc95e3b1d0981a8995b942c6a7c3c29 v7-2-032
++61b50044616bc626b27630b3c9f03322db0ec609 v7-1-090
++61d080cb268e21cc2275da3a0ff2b2081d97ff51 v7-2-086
++61e5d40135d0d90f5d1689c469958bb7a37e074f v7-0-139
++62716fd61fe94fb9e7f39294dfa9dba4aa06fbf8 v7-1-204
++630eca9496e07d9a778fe87d087832816a01a850 v7-2a-010
++631143ac4a01c32e465380ba2ab7f82949f20d75 v7-0007
++63157185aea525b39b1238df3ffbf4ec0fea10b1 v7-2-442
++63369d73b551cb0b72202c29dfdf59aa6049a333 v7-2-161
++63613d8d7e4dff96ba2f34be50fa4b002f56cff6 v7-2-354
++63bf37c1e7a2c323b368df6e926b026139ec3144 v7-2-401
++6412b0befebc17db58a1e8acbef86d3a3e4f742c v7-2a-007
++649d340f34d3ccb1c96efa9522a65803575d901c v7-2-067
++64be6e0b070a5f5f58eddedc8b57dc0356642cd5 v7-0-004
++64dd70f176c92013bc7efd0f3c50083fe4ca0972 v7-1-021
++64e2b75e16158d89c4a600bb97a62a4616632884 v7-0-141
++64ed4359d9570e345dc109b51138c36ac8769614 v7-1-221
++6510d834609f78327cf78465d6849601bfe39108 v7-2-380
++652d074e0264f453cbf76df0ce041b5032504085 v7-0-048
++656853d9c014add434086291b7af40ad828f126a v7-0-111
++656b4c052203990d56ca731d2e3ca39ebd9bd775 v7-2-029
++656ca7102064d711eed5cc678b4a5cf03b5d9c05 v7-2-026
++656e652c6579a812d9f48a0e5e4d8ee47ebc1a35 v7-3-068
++65c332f15dbf3376ed5aeea423e8f1584a65ff29 v7-2-083
++65e0c2e3a3521c9782728f307ced58a5740d87ac v7-0-166
++65fa3b16f040f5320bad34c324f230099bfd8f0c v7-0222
++6605dca2960f5c597f981c60cd3009e98b173883 v7-2-178
++66080ac5dab745208cfd8f385faea24ed68be68c v7-0130
++66263e241ce35e11faf9b33ef6e2d509e1ada4eb v7-0176
++6632670ff6fc2bd4dbe01001086874b9f75b0929 v7-0-053
++66475621f0bfacb601f38c15625c15c2a478e672 v7-0147
++6675076019ae7e7444c526b342c91ae2ef6cfaac v7-0d
++66b1822ba176a2f7d7e2878b2907af6d86e5b5c8 v7-2-326
++66ddf49935fb8979def275bcf7c56acdfac7ef6d v7-1-015
++66e40876590bca973973b6aae208a14cb428c266 v7-1-007
++680834cb19eb2dfdc88aded4bfb36518ca4caa60 v7-2-022
++684ea86baabb6ead7b673d20de6f4b5b27a3335d v7-2-101
++68f00510705229a9b8653612b806dbbcccd5aebf v7-2a-001
++694e8715dce6af134be79c99e97f90786088078f v7-1-316
++6974b167d75eabdf70005f666e3dd0e82e47be4e v7-1-056
++697dec8ec5e723ae32e12229d3ca111fe7f4ba92 v7-0-037
++69bcc0c891d706d3383f013e9e5f8876b6c76d4f v7-1-158
++69e8006af73433fa27ecf32b695919bd665be1c6 v7-0212
++6a2e4860134bf0e4b5edf382627809dc6cec309c v7-3-091
++6a80537ac7aa6d4c9011edf4db84a6aea85d2911 v7-3-041
++6a85219723b98ddd686d1a80c481a545bcb535d8 v7-3-027
++6aea606c9e911f768a5e6c9626581721f460f756 v7-2-068
++6b5d641bcdd45e53c24e0b4e0b6085a696e336a8 v7-2-395
++6b89fd4ffcc698278ecc582280c79916a425498b v7-0-008
++6ba0265d1f1b70b8a4a2b3337b18ded763f58f09 v7-2-295
++6bb1fa855dc91259d295a1beeb4144aa51b3cab6 v7-0e03
++6c05b5e5c1be4ee9b8f96334b7fba7afa832524e v7-3-032
++6c3c2e464a9628bcbfe21317b8fd90ae27076735 v7-2-392
++6c4da3e24371945408401d6330a930d44cb5d716 v7-0-232
++6c62b9b939bd8f3df4ec59b2c2d72bbbecc723d8 v7-0093
++6c7719f94811d10db3f86578e5286e5da2fd8514 v7-2-170
++6cc8a093e4a9b14df444effaef7274d2318d00d1 v7-3-115
++6d421b3c485b2da5a04529c6b71041031d41b80c v7-1-046
++6d80dbca8501a4152908713778ce03e0f45b93f3 v7-3-118
++6d95d8976b00540c053d11fff36e20556d125152 v7-1-200
++6ddd55ac6ce50b94713303278888da04d21f489f v7-2-249
++6df4e719ce4eb637d6db90febd0d1eb48bf8e96a v7-1-112
++6e03ee418b50de776b583358fe2ba20bbaf043ad v7-0-137
++6e9c10c63e25ce9212c5d629c9fdb60b67e6658a v7-2-216
++6ed4a82fcfc6f1c354906dfaa5e13a192b3246a9 v7-2-175
++6edf4a4f6cac62dd123f7d1017a7624c9f48e71c v7-0110
++6ee9d7fa5df6d00c892f7e93a63435de5c50e083 v7-3-057
++6f12c4eae4f69d1379427e8b0cee82769f75c35d v7-2-153
++6f4740f72d3d2018bfb19d4c8d8064e3682fd883 v7-3-090
++6f8b578776ab0204bf16f669383aefb0661610f0 v7-0131
++6fdbaf2bba0459270702479d6c4cd04f4f6bc034 v7-1-098
++7002404b17b15ea37887cb1dd5b5b95883cdd27f v7-3-054
++7015ddf8105575fcf48eac35b14c61a24fc38d7f v7-2b-018
++7033303ea0c065c16d5fc31d485c949f7949c10b v7-0089
++70661384379a0dd305576f64554608a396b0821f v7-2-056
++70a5e723eea2c648aa82f7c8f28a2a5dd5429132 v7-2-213
++70c67b1bb1f1aeddc1dea55438e11ae6f9ca3d14 v7-2-329
++710b52d02c4a0649d5b20c38e3394a2e248be9f5 v7-1-237
++710da9abc3c1191eec6633477eea663fada04939 v7-2-317
++71219f47ccd9551fc7d090e73afb83cc395232d8 v7-3-025
++717e759932cb94af9ee8dc9e93f33b67f292e8c1 v7-1-217
++71bd485d8fa572ac15207c5c1059b2ad0ae685fc v7-1-166
++71db8539b8c487eef0df17f2069d96fea1911cf1 v7-1-268
++71eaeb69efe49baf0f63c6e9cebde1aade638ccf v7-2-007
++7209e03df1005fc037c029799b068f545b60433d v7-2-075
++720a59d79bcd3d606bb9837492295d0c52835500 v7-2-168
++721ebb602db0fd2a5a9cded8e0830800d734469a v7-0-135
++727ab557c58a3257743a8b7589d91e21975b54ea v7-0-102
++7281a86ae640e65e5eff6d6b565be20032f736b3 v7-1-016
++72ef7987368de4715599707a85f74a8e6d029c9c v7-2-139
++730697e82c43a8bc8b5975bea39fd180fb62a4be v7-2-091
++7317e0e2775877fa0b817e20d29de9eba1a4f95d v7-2-254
++732c7ae5743ec2d22423a8bb631e2d3c5fb8e549 v7-0180
++73354c21f1e40dc792e5829152992e76f7a607ee v7-0066
++734d5bdae499eb2fa3f818e843efd9727e7f69f3 v7-2-041
++7387540b6e52e3faad6c78182de9d1354ac9e6b4 v7-1-297
++73995e7c06e668b3eafc366b3c959d32f6bc00e7 v7-1-174
++73c0eeeee0b789738812c1cf821de3f86e1fee53 v7-0-174
++73c5752b957d49da8312ef87383a7368c78df74c v7-1-295
++73d947c20291fd857fba24ddf4725b9b831188eb v7-3-038
++73dd10c18ec4eb2cc0857417fb8cc20f63dd42e1 v7-3-060
++73f10d8124f48510e0ad1468ee9e29c010009621 v7-0136
++7472c565592a373abca2ea571e229b4bcbfd7b15 v7-0117
++74e9d19831c2357d7b998f484ebc609dbc08c5e4 v7-0081
++7557b6ea0fb14ba4e97f5a8a04438db30cf902bb v7-0030
++758822790b43d2fc184878c3a50a12d71dda794e v7-3-031
++75a69023117c516ca184ed479727f105af12cc39 v7-2-221
++75a89c7c204e0f478f480598cc3f2a8c45dee8b3 v7-3-059
++75ab683fdb50e83cb9037454f5dd8d602e08e4c1 v7-1-233
++75b3f9cc19da44ef65c962deb7a6049c305f49d4 v7-2-283
++75c88515e0db5fd6f88a05634d9abd22795aacbd v7-1-214
++75dbeedddaa9b0e0784c4d23d71de713a533c5b4 v7-2b-016
++75f5889a5d8e8272fd17a104ef148776f9133aa8 v7-1-260
++763272b18e4ffe717ebb58827315badc09824e86 v7-3-098
++76406c9cbbaa1ab6a8f6ca7f079c3ba8cf06e2ca v7-1-176
++7644c80ca87b75a7dd85a7b4089e74bf5c503f3c v7-0-089
++766918de9e3a76816ebdee3b90cdb1f9f76bca6a v7-3-004
++76985a406456362dbdb4e7e4bef67656b84de965 v7-1-240
++76a42a81f68505f7b99af53a919e3cc7895096b6 v7-1-087
++76c2b2dd25c9c6945489a1c636f7e375ef1f40d0 v7-1-033
++77310929a1f94745e3d49f0cf1a6908785d3cfb0 v7-1-151
++777d5460622d4a9aac084695524d0c85b39f4174 v7-0-164
++7781fcd2b74f26a37da0d1186a1c44d904a8f11f v7-2-011
++77f3dd990b12aa963aa0a63f0db50f6443f3f41d v7-3-119
++77f8a648d2e6c765329ee6544bd8716835bda3bb v7-0-062
++78b9d5dce950b348235ee667f8573c6592920088 v7-2-420
++78e032bb32605c1437e30f7ec3215ad4c0772dd5 v7-2-303
++799c1db62b42a7c9d504c45ed313910c2e3d169b v7-1-164
++79a23c19108a8b1eb9d1b97d5844fabee6525e23 v7-1-079
++79b395ba0ea5e2bc7d27ace528d84d47aa1f5a66 v7-2-311
++79b8d69a4588b93516410e519bb9459242f46d81 v7-2-340
++79bba9e6af2b6588349ac2b3e9fb722d6ecbdc85 v7-1-224
++79d111ea8ef64e7bab0a5e27b7d5903f10e45a43 v7-2-425
++7a4ad3fb109d42f37f82664390f128dc9b7e44bd v7-2-188
++7aee5e68548a7cd13c74e67439f8c3b8ae6327be v7-2-417
++7b0e89b77216baf928145ce14741650806004c31 v7-2-365
++7b258a166daa98eb01237988ec954895a2e6ff0e v7-2-018
++7b44c70ee8ab87d5265ebec758a6f5ea9d5cfa75 v7-3-104
++7b875bfb39b871d5d40525d579e30358bab6be1a v7-2-434
++7bc38b35f1e87c1749f157ef91b6cab86bfd9561 v7-0-026
++7bcd81b96e2abb28ffb000145c917bd05e88e5c5 v7-2-267
++7c28790fa8b4054bdde6d358a9132581de76df62 v7-0-009
++7c2e6ba1d702579761d7ddc4020797bbc97805e3 v7-3-008
++7c3302e07dd7cf0d746776234ed4e9cb376d3611 v7-2-023
++7c46737918cb0adc9a51849b75b1c03da7bd77f3 v7-3-117
++7caa503b63a9b193f3b9e016a0a466ff8065f2f0 v7-2-225
++7d121c69f540272878af6fafdf658443360a698b v7-2-383
++7d127d580b6d2d86853fc0a322323cdee2eca343 v7-1-318
++7d2641e6af75b3cfb4dc29e7c88812dee6c003ae v7-2-261
++7d29124f77f5e794008c746c69a0f79da0cd966a v7-0-133
++7df2d171ef1c1284e10a4c53fb079d02e6d7b028 v7-0-163
++7e0c8a18c915a4c7dccf01be813488e27d03fdc5 v7-2-275
++7e5284f58094dd557b1502e1536c78846a59049c v7-1-134
++7e6d264ec0a270beb9692df71fedb210c1896640 v7-0141
++7e7da11555d27f62984297f3e1debc8242baf995 v7-1-080
++7f01e52cc97aca6eff92948b67876e800eb67fc3 v7-0-171
++7f2d3b3c15a2ffbd259c2ee99966124c2c2087ee v7-0122
++7f788cd2741586586a34b41627a1c978fa465666 v7-0020
++7fd70926e2e1c299ecd9dff6ddfb51ef71f7f08b v7-0055
++7fe13e0f5dce15cd16dd61c898e63899a9aff561 v7-0175
++7ff9f75f9c59f7b600ada6ac4b3234398df5f38f v7-2-245
++801d5544828215bf644cbc6ababfc66beec6cb2d v7-1-195
++802898d3afd12da41c305c495b121e41ed880659 v7-2-214
++80b9076e9e177bbcb455eef9928283077ed1c861 v7-1-310
++80e5b1da667656a146cad7a749ac9fd2afb659bb v7-2-231
++81059e8b657d911c9876f557975f34624988624f v7-2b-015
++811f29447aea27adaf1f54879ddf0fbd05a1e094 v7-1-270
++813a407a63af8773c585b0baae4d22296503ac03 v7-2-271
++8173ec1e9f1f746657dd598b6e876b11c99e1049 v7-0034
++819d952a0a5cc810c52b34e8df400f83eb3353ce v7-2-142
++81cf1b6e0a2d59192534f884135108f788a20b91 v7-0-147
++81fe2ccc1207699c377b42f1d8ca426a70177afd v7-0179
++823e9ddf23f77858f1b866fadf3e4ec5ae5d55b8 v7-2-141
++826f00fef9e338c7afebef68658716bb0aab62f4 v7-1-096
++8272535dee77ded630f57073b428e89673f1ee45 v7-2-035
++82885ffcad10aaf6d11170dc45d2721ee222c37c v7-2-310
++82add1e7c154fbbd5926df49fd4afe768e6007db v7-1-013
++82b2594be40863fef91c163200db2f56b2e4e52b v7-0-155
++82ca8ff21fd7181e16dcc58863d0d251b9228374 v7-0-175
++82f866f19e91a19ae44e7dbe5eb8747e98acfd85 v7-2-269
++8389197c91f3ecaaf28b776e69b9336eb08828d3 v7-2-133
++83a006f81bac04bf9b975347bf8d6bddc7996eb6 v7-0199
++83a126db2895ba22f2fff13b488f028ff83bec28 v7-2-027
++83eda510dbc07b4fe4db5b5f324680f60c307fff v7-0-222
++843bfffb04c739ec456e5c5f612c6d025f2a6188 v7-1-058
++8464d084fa7475830cdc53529cd20f7334c81232 v7-3-095
++8531f7ee366297c58506f9a3130f45c350ce1fe5 v7-0-218
++8562c6804861cd26020e1a004edb1c1b218af9f2 v7-2-388
++85a99ba3eb5ab45127c996c4e7b4dea2e7a76c54 v7-2-233
++85ad197907065fd92f29bf3dcc190779a20aba46 v7-2-396
++85da0376313011aa957a9132df2686c9aba079d0 v7-2-333
++86079b930b3e8735933c9349e44184761bbf56b0 v7-1-010
++862863033fddf5f0bb2f18988b79bbe0d289ba45 v7-0158
++86289e90a4bbb818e9cf8bae6e57f7b91b9671cc v7-0-123
++862d920800b1a8a5ebca3e7db5dbe431982f7d0d v7-3-103
++8647018a15f3e4e89c706b6290ab0151565f394a v7-0-178
++869c92bcfb697875d5580fdf3a13eacd5648c5f3 v7-0085
++86ce35c9750f60054f48c1bfb80507345b862d8f v7-0231
++86d71ae0c85a546d4a00b53481b540a4ade2c9bd v7-0042
++871231399cf547112a50a9f93497d40d01b66d51 v7-1-118
++87401adbf5fcbc6fb8edf329290c445528266bc5 v7-1-067
++87a777aea8993a49e61394e7a84847e91b014090 v7-1-005
++87ac4be389523f44914899c37180d22b60757ffa v7-0128
++87b6a6a065ab60f6ca4ed094c2afafe16e0b590e v7-2-171
++87b9f21264a79be4ecfd14f69da0577f9d41f260 v7-1-247
++88095f75d63b5a486f603cf28801df0118ed1218 v7-3-015
++880ece6b24762edd52b414aa1f005478707a3179 v7-1-101
++882b2fa49a2a888a8231f3cf2428b91439decb93 v7-0-014
++888c0645d64f3a844b22525387981f17317d8502 v7-1-069
++88c0c6c9eadab09b029312433f246f65e216a1f0 v7-1-184
++88c68e59d39cee12c580f1df72a5759e58574978 v7-1-088
++89189f7aaad9c28435aa5cbd4db359ae54d0769e v7-2-312
++89300f5e013c7d217d5f891113a57705cdeb017c v7-2-414
++8978513bb5e31d3f20c941e5141d228ca95a6f58 v7-2-100
++89d1e8ed6c1d6d9a672880fc73df97486b2d5966 v7-2-227
++89dc68c0ab6fd676ade26cca39e16b81896a5069 v7-2-386
++8a0a8f10b43e02d44ff26d608cd80fb61ce4773d v7-2-356
++8a2092b558c2fc11605dded24c4c5a817ca92ac9 v7-2-443
++8a22a90c964a168cf3d93f5ff8d5c531a4327ea6 v7-1-229
++8a5a95f7ef2a7dfeb585d0392489fb57ea4c5af9 v7-0185
++8a6982d59d8ef4afa5c178d772bd2943665f0146 v7-0224
++8a6c67218fccfc536fdf829075e99549fb8247dd v7-1-173
++8aa3cd045aefc5d324d820f2239ca1f533e9632f v7-2-379
++8aa94f8080bdeb8908de30bbcf62945dabba1aa3 v7-3-022
++8abc0abf8cbd09abaab555fbbaedbbc231d42b41 v7-1-248
++8ac6392acb0a87a779340f949e280bafcc49f55b v7-1-136
++8ae24f338cab86cb35fd495ddc3cbe2101ae1558 v7-0217
++8ae4de2d02af315b1c0abc2230c3ccd5a31f1013 v7-2-384
++8b2e9257cc116bf30b755aeb37a742ac83f5da42 v7-1-152
++8b84fe17e147219e6ff181f6bd7e809e5116588c v7-0159
++8bebcabccc2c430f05c5d85f8532adccb18a6136 v7-0e01
++8c229eb52e347be77c76c1c2c96f717cbfdba4c5 v7-0099
++8c25f10d49e7186c9785a0f01612166f20a29298 v7-0028
++8c60f65311fa6358488f671adc226950c18a993d v7-0052
++8c8d07318d8d0b1bcfbd395ae7aeec6813725b33 v7-0-086
++8c9396275bfaf3ba6c759c26fef07c0b687a8abb v7-1-277
++8ca3c9ad0bee0c265345decd180d971197e36194 v7-2-366
++8cd72985156286e77ac5d271a13cfb569b29ed76 v7-0g
++8d09c1eed8a57bb2df53fb1f1747137e5a3489f5 v7-1-074
++8d1db3e3ac5f3f33dcf5f68ea132502082e787db v7-2-262
++8d2b705a5a51d2a6756f16dee861dae4ea97101a v7-0113
++8d34af900baedf0db9a3e57bbf48eeee75068e06 v7-0072
++8d74df00f7daa4e79bf7fc56164369781408e1be v7-1-262
++8d8dc7e07999acbfd89d0b646d72fab69e06bef0 v7-1-230
++8dc36a64ae8b36d124bc0767ccadba3daea943ec v7-1-294
++8dd456c1e283bf8c85e9ff38994fdfc6dd009ff5 v7-0c13
++8e2d14a3e7d2860527d39f0b662beade84db9d23 v7-2-352
++8e42199f51218e2a14a946ee50c1e8d8ef38205c v7-1-054
++8e5830943bff21c0a2aa18399d18c8269ed9d3f7 v7-0e04
++8eec9649b7a2ea1a441723ce7a4e8637c294ffbb v7-0064
++8ef9da918a98e7f8fecb4d88914e4691a8da88b8 v7-2-413
++8f72e3512b437d2390860bf9fb6605b778cb0346 v7-2-381
++8fa8d7964cf116fa98895d029808a0d5e1cf201b v7-0073
++8fafff87aedbcc1a7c71e29a9369056e5c08e84e v7-0-075
++8fd2e00c44ae10bd9e8a8f5c12db47378314457a v7-0-112
++8fdc1210333357780019fa8dbabc34f07d545775 v7-3-035
++8ff7fd162d3cf15129e377401e49f8210d62aee6 v7-0016
++903088c7a7c61b7f30d35c8a184d90b7af4a44e6 v7-0193
++9032e466829601e6c56046813d0a9a00946a1d10 v7-0189
++903fcd726d9058a0b0c14a85cadf31aae3ad27a2 v7-2-359
++906b37d2f9c3a85fc9c67a29005ad1538e60efcc v7-0056
++907cf09fbb32d7b189d3372f3c4f1220f198a9d1 v7-2-385
++9090f866cd57a7febdb2e0679bf0a5e86951e314 v7-0197
++90ee46d7f4927c095141dd4afa92400f2fe4c697 v7-0164
++912b18745defca4b03d5738fc7ae6c76d701f2f7 v7-1-143
++91e7d4a7b3b0e20b6f5bf9468ad17625e745d640 v7-0178
++91fff9db214e21eeaacd20da86b22629ba6d92cf v7-2-297
++920a993902e8332e3fd539a54997278364fdbcf3 v7-0062
++92168cfd558c53f1fb0d8014559f16be0a795171 v7-2-167fix
++9230c45fdde65ac15a42c39d851c68b248fd6836 v7-2-226
++92809ecb9a476994296e51001486b3934561fc87 v7-2-292
++92f3089a7b10dc9e8f5f3c69ab1e490d52ad2f0a v7-0-082
++932fe018ad166a9f8e4b6b0ae91d562cab7c37db v7-0-168
++932ff0c0f57bb90d48470b70cc728058e0c56e3e v7-2-173
++932ff0c0f57bb90d48470b70cc728058e0c56e3e v7-2-176
++9364d114ed8d089f3a42c910442957d33e5480cc v7-0204
++9368159253f847f95c6c1f39a894e26fa3c954e8 v7-2b-007
++93ffa40b532038ad22824047b15c6edec3b6af5a v7-1-155
++94164a5b0626984b565ae6421c64bfd6d993e162 v7-0-043
++94694351f592a56f8a379510eb6992ed0dbee821 v7-3-029
++946f0cbdd535d6fb8915ccc87b837edb15287663 v7-0074
++94f44da44d2e0874a562918005789418793bb507 v7-2-339
++951641b8784de5175cadf9fdbc361db2b6b45060 v7-3-102
++954947a70580c6c5d94bd110f974bdf103dd6fd0 v7-2-166
++95723058b8ff365843508cfa47a3bc2ecb1b0cf8 v7-0-229
++9577a28005e10fab0a0cada6c41b96c9a3e1bfe9 v7-2-446
++95b507e6c9e75d5b4c114a63a98b4bc36c643eea v7-0-145
++95b659982b7c17ff93304a37f43be8dc508e20dd v7-2-375
++95dac6af3b3a8f50af24432b7e355ea44ec69f95 v7-0232
++95dd473d2d28a088822c73309c3dee597c96facd v7-2-044
++96276cc11d8e68ee320e0f61e20406dcb7a0b995 v7-2-240
++96445585f1d9d1abbc74d9c24efbf0408b2cbb12 v7-2-151
++9656552c468d29773423dcd62a323aceee0b6c55 v7-1-072
++96580558098272cca6f93085d79aa7164c7abf41 v7-0-215
++966289a3dd7ea565980bb03abc9b52d88378f96c v7-2-316
++97a73b6f28925dea4310c00225cc6210af00468a v7-2-113
++98a2a6e6b966668c810986b6ddd4820bc09db426 v7-2-353
++98a88a884610aa911950623d7cce8d067feda66c v7-0230
++98cc757f7e3dbff20ade108b82582d7a7d88ed33 v7-2-376
++98cdf5c477ec3c3ce8851a517ca3021aeda6573a v7-2-298
++98d1c149be76b44332bdb72e986bfc8b0f9f21d3 v7-0-160
++98ef5b0fe07610170bd68aac5ba6e739410c913c v7-0-029
++9913ff5706164031d5f847bc0980cc61eeed3974 v7-2-119
++992d5c69d5e917b03abcee24d2fbed8348e21c23 v7-0-132
++9947133ce85b86df83b86f476c09c0454c47a310 v7-1-078
++994ea4e6f0238f12a5516eb75f7a6d7ce86362e6 v7-0-094
++995536cad50e5c08be60c2d82c7b32a63db1e434 v7-1-218
++99a9e42e5688aeecaeaa4642d17be0ca54ab5945 v7-1-095
++99b225e0dbc1989ecae75200aaf0e5329e6bedac v7-2-430
++99ccc8932b6c450cbcdcf86de05dbd5129a370fe v7-0-180
++9a10e4d195b342292cb8ce0d368afafac146abf9 v7-0076
++9a3b65713280ebf8750989758b4b2d42f757ca9b v7-0-216
++9ab23f1e137fd5b0e35c1604ffb95979713f83e4 v7-0c12
++9adbd26f7fee884be78276fb400ee77d333cf335 v7-0-116
++9aec644c45dcc33b3f3571ba0035e7f85430eef6 v7-0-121
++9b78bb3794ba4dba44ab3eab9ab2984797e839d6 v7-2-350
++9b7d8fd5dc68074119d5a609210fc1ba924e9d7a v7-1-148
++9bc164a2c8143f6019d0b13a2aee4be89da3a9fe v7-2-204
++9be44c669f4c67406132ede84d1d2951eac7d63c v7-1-172
++9be87deaeb527ef18daf09d6c75b21d1d7a65d78 v7-0009
++9c510840e896fc3776ec7694fe90e18808036fad v7-2-439
++9c5a9e4356f8ef42ea2c177568b63bfbb1779bb0 v7-2a-003
++9c970d8681f46de0b13ff16d67c2327a19f33626 v7-1-226
++9cbe94fd5c8f1ca388ccd2be94f17caa33ef093d v7-2-314
++9d6a886aceb23fcaf8f64f9cf1ebf3f83d14b2da v7-2-242
++9d74e2f433c0370cb458c83d12b05f72226df489 v7-2c-001
++9dbb57025f2542dad344102c571c06da6b840b34 v7-1-139
++9dc77520c6d3ee0c3e689bc3e6d635cde80909ff v7-0-013
++9dd62cb57ed5845c9c2294b6002a29702ef043fb v7-1-319
++9e0174515abb6667a9e74e6fefc74ad50d7821d2 v7-1-291
++9e084588b706867fae28f93f67d163635a79ae51 v7-0-188
++9e1cefec84dde22d62c1bd2dd0ceb4e072470981 v7-2c-002
++9e265d9089fd4afcc03a4ac7c1ccbd754c8ef6f5 v7-2-436
++9e359e5759f628fd0ff90172d533636440b464e6 v7-0177
++9e554211caf55e33249908747d9259ac77f10b72 v7-2-301
++9edb5759494281d90ae0f312b2ac32c30f51ca50 v7-2-260
++9edc96495747bd354e68dfd76b6ca525d39e715c v7-2-206
++9f184758f277b816c95fd946cd2d63578d296578 v7-0-010
++9f279ebda75194c26ba5c917f68a7102348215b6 v7-0f01
++9f345c48220b7a503fde0367df20e576fd46b04a v7-0c
++9f8fd6a14cfc84953deae7d00287a1949c0f0eff v7-2-004
++9fb5bb1ea79b5ba402e51051d79a3476ffce3c35 v7-1-044
++9fbb40a1228a4d8a5f26d1dff8e2ab4e3bd870fe v7-1-282
++a03f7551baccc60bedef5ef6a9f92ccdfe69a9a3 v7-3-081
++a041f68d05909431f0a525eace55307214c33d43 v7-3-114
++a0451524244d6387ea49cfda296f6550a2a9aebd v7-0082
++a07007166d518f51749cc9e145afeb023638a415 v7-0-044
++a0a98a0f12816722b1792141edb3625dd72eb5bb v7-1-326
++a0b03b7e9168b7f7fd61b1563ffdd6d09ca54260 v7-3-028
++a0c01df852e1d183c879ee114b35b2b5b0d06746 v7-1-300
++a0c70314350fde9e0948e598fe57dddc6192468e v7-2a-012
++a1059cda45f226497278c53752d5c07d21cda09d v7-0142
++a112fdce9ebd6d538c70602550e94f29a2fc60fc v7-0-200
++a11e2070c964de1cfb9fdf3ce339ec75b7a983cd v7-0-203
++a135270b75498b76b5bacbd1e381059283c5e383 v7-1-206
++a13e4b242735dd0b3285b7f36fccda195ba1d5f5 v7-0-243
++a14db0b78c590d4bb8e1a190b80fbf3dfff89560 v7-3-121
++a157c4786b79ae94758574d5ecb4a8f4959de5e6 v7-0-073
++a16af0072ea82b2dcd265d050b349850cf8f28b6 v7-2-410
++a1c1f001b99dd591d9082db95de70e2bf8f9e8de v7-0-129
++a1c5a6cb26756450d2b7065999de140c2fb6ca74 v7-0112
++a209672376fd537735f6ab55ce926cb80fa56ca0 v7-0f
++a2271decbce54d46f62e7cc9a0c4e3ea3ae9080d v7-3-065
++a27c581d2618b9bab1c7105fba966af40e23d57a v7-2-016
++a285f0cd8a462ff5cb17053fd457646f9d33573d v7-2b-022
++a2b128f7d705ef08ae91a8616cbaf40883827cdc v7-0c11
++a33e606ceea66c946219da3899de9566fb0cad35 v7-1-024
++a3552c04f4e193d981013fa4c077e49d729abb6f v7-2-251
++a36d21d4a87596abd8775c322fced6a539385ab3 v7-0-204
++a3a4be6bdcdd0f43aea2aa09288e8f515a2c2f05 v7-2-308
++a420bba0d851093bb949070895a9dcf4c25e6c4f v7-0184
++a4365075d05c40606c2ace3340e9484a6b045f32 v7-1-093
++a509e3ba61f6e541dc8772a0f9de0c38999fd610 v7-0100
++a53e7d3fd741c68a30085fd9b22d260aec93396b v7-3-086
++a565175274f6efd9d4f725dcdee1b6e049258d3c v7-0-184
++a58806285f2086c1591272962d0b5709a63a74fd v7-2-152
++a5b3a7fb6a5a0f1857b8d0eec380aa7a0f780729 v7-1-154
++a5beb9fb4da85dfc21dbb68af0fd6aec616dd1dc v7-0-024
++a5e1d6526ac7c92fcad2ae100b1d43ae238067b0 v7-2-103
++a5fcf36ef5129596fc281d76369077ad01323b3f v7-0127
++a5fd859f69f1b5c70de7d0439150f2c681d0d915 v7-1-020
++a66a49322b6bc2a82c6cc3e8092db7d502f64c4b v7-1-073
++a66c405786754105eaa63f3264c94ce134bd275f v7-2-105
++a6776e2c9f014491c7476c3a12b2b7f108e1b6f2 v7-1-222
++a686fd6c8beb2c41110e0a65f6a403f0ccaef83d v7-0065
++a711f7a6852db37b1687044ce8a96b6f48e9855b v7-0067
++a73a117542b8b5ec22eb3c61e45ad888d3d76b51 v7-1-171
++a75120dc3e2691218f3144bbc24369283d74eb53 v7-2-190
++a7c4842a0be340d06de659940f9396f969bdae77 v7-2-212
++a81bc802c17ce7002b08d2e327136e3ac4d11d5a v7-0011
++a83f48a17efb871266ffbcb3b6c9cd5a62408410 v7-1-274
++a8752f2805d69f51f1f6370eee8c7e2c89c57db4 v7-2-037
++a881e15f44d8b5888733fc98c39984c2fe6316ef v7-2b-011
++a8aae2e1d2ae6c22551400d451e4ecaccceffcd9 v7-2-049
++a8bcc7553263bb7a12eec8813270ed34242dcdfd v7-0-190
++a8caf7dd853dd5f5ea2bbc671467ab2f78989f44 v7-0205
++a954a30e407394f51218ead2a7d832e022fd2378 v7-2-115
++a9e353f7fcc48a2b603ead42451ea8e89ee7b9d0 v7-1-285
++a9e90b3356b62da552b62eb62b8dff78438f2dc8 v7-0036
++a9f561ffbc53a7097873cce7e8a8e1615ac0c38a v7-2-243
++a9f814054152b658c1b90aadf0f75428e1130cd3 v7-2-074
++a9ffa7c7db7757ae7c1ba0e7d3b990bafaefb558 v7-0-097
++aa6caa23a4b834360b82d3d078d1d17f33d673b7 v7-0152
++aa7c51f81f46cc5379386ac622a5ba44aae1c4dc v7-1-227
++aab202d244b6bb286a62508a432222d26d5d215e v7-2-394
++abff2f6a3ad7790f86e055519dcb851a06fe78c0 v7-0-036
++ac0458d9b9dde727d1bf11e9e9221edc20b623a3 v7-3-026
++ac04f392ba48436bc1b90d3d8b8d384fef4f8135 v7-3-073
++ac33b7c03fac7bf435346233114939fec2e187e6 v7-0018
++ac6d15d91466b34e4ff31765d1d1e1733f02ffc9 v7-2a-014
++acc572c5660c90020f42c9f31c1d2c776c5dce47 v7-2-097
++acfe86afd651f1abcfb6eb38ad0101e61a27c65f v7-0135
++ad8f5bdc727441118cf45678b031d04d1a77aae0 v7-2-001
++ada3271481ceab448c69588c5cf837c2dbc91987 v7-2-289
++adf6a9dcadeda32a2a339069336ebed7fe6d53da v7-0-038
++ae2251be41f935706f7e634a832ff5ff8a91d023 v7-2-185
++ae22c450546cfc001c90ca17999318e053838c30 v7-2-433
++ae7e29b64923da886325215a1a5b20bd60e4cbc0 v7-1-194
++aeac63ad9430d81a0dfdc21080f1f05cdc633baf v7-2-048
++af7afd2bb4c235544fc9da6b34898ea93d477d77 v7-0-078
++af98ef7f5a39aadfe18dd44df9afeedbb0665778 v7-0-003
++afad99b3612ca54f3668c232e8d3ef235d74c9a2 v7-1-028
++afb64d9f5b8ee1eb6e787e1d34ef8b80f15d4749 v7-2-013
++afb740b5dfabffdc759d3428254c944bd4badeab v7-2-191
++afbe4a4c884ceacc349264075afe26e93bc75f07 v7-2-208
++afc60a6339a68f659addfbbb849e249964c9107c v7-0104
++afcf9db31561c7fe2b62b346aca751bf7bb31bc3 v7-2-336
++b00bc2bf23eb62a1883318c6565d3fe0d1b4e30e v7-1-119
++b00d5f429a4b2f0a23710200cdf2a672ed9d5501 v7-0-108
++b04bb35fcd4b7edeeb8e175955a2909a86dad118 v7-0-240
++b0605f2f9786c14e943a0ab440c16b444f2a9cac v7-3-113
++b090b216a832197c70f60ead52026a53ecb0cdd8 v7-1-009
++b0dabd584b8f89ac32af9758c221e948016e2b0e v7-1-175
++b0f8f28a67c23c9e9b6b8087b373d6fb2add726a v7-1-197
++b1706a94f9f9638cc0ecb624dd7519cc9beb6ca1 v7-2-405
++b1b09b68d7069755425a2c1849f517f3f9e760d9 v7-2-279
++b1e87b7f5db64eb40fafb0e9bcbb0c39fa2bac63 v7-0133
++b209c3f94ab7ca3ff559d255c395fa013fee31a3 v7-2-073
++b254cfdd740542f5778d787845134db3c7584335 v7-3-071
++b2789846ed3978ec3dd9a91b6e1ef2f4d054431b v7-3-069
++b2a7d143abe2f572e713acda4a67ebce76511bc8 v7-3-072
++b2cfe84c96ccbf87a7c765442f0e32c62fa112a9 v7-3-044
++b2dcb84570675cbdb4fea2d017bcd093b3f34be3 v7-0-070
++b2e037ed7e33b48a1feb69174850acc393254864 v7-2b-020
++b2f4319efde1edbabcd900a63db8998bfc117152 v7-2-084
++b31702c473ae10db32dcedae94af25228d6c920c v7-0-049
++b34d985598f68b97fe1bdf1d34bf689ea1b8355d v7-2-130
++b4791bb4fbff451efa3ffdabd4e26a668eda2283 v7-1-108
++b4b1b5324380cad36827cc211a2f92fb165d9777 v7-1-026
++b4d11ddb7303ebc28f6a40fea28f003287e77352 v7-0-187
++b4d92472f168c90d60359f6a592d6461686c2db9 v7-1-085
++b515624f6d7dc7597b0b01c5cb03076e4daf3347 v7-0-234
++b54d2f702d41f4fbb8bb3d33e52faf94568b2170 v7-2-127
++b57babddb32b2df9f04b636154a26c51f78d73a2 v7-2-281
++b57f2617965fd682c6284a706a999b58f00bdc3c v7-3-014
++b5ad00887b816469ab8f7733643380a690c1322f v7-2-111
++b5c1cb6f8d565b4fa5b714660e8a0d7f8d8f7a5e v7-2-174
++b60a569eb708bc6563cc1104335cf56bb38ea901 v7-2b-010
++b61422c4dc7a81d340e33e0ddb8ce8cf0f94aec4 v7-2-025
++b62965091b8d258aaa26871ccf80ff9b4037168e v7-1-254
++b63792dadc23ed5ff4e0e9e8c7acc24d9c61e779 v7-1-120
++b63fe7400eb30f9c7b98199a21ed0bdc583aef62 v7-1-135
++b6627f01c67dd0bcdc2f24d56d0a9342cb5dacda v7-0-151
++b6632d553df3c8d25e419d62cbbbd1d8aa5d2489 v7-0182
++b686fb4898d1fd8579e5bf61f36c2a08fee85a20 v7-1-025
++b6ffc2045211c67d42d806af38dae64626aba605 v7-2b-026
++b76637e5ace1cd75c1894c44e132ea1e4fdc1a9f v7-1-289
++b77f790d53f6b57604b1ad5113da4ab08b4ca918 v7-0-236
++b7c22e34316251f32fa1034d11a3eba1829c2b92 v7-2-043
++b7c89e3e19f703c0ebccecc10ee044367a65ea20 v7-2a-011
++b803b277688037509ad1b6d30466721396d8967f v7-3-062
++b8744d1982d1fe26fc41d62b6e84fd315dd6c941 v7-2-407
++b88f0420148e5e65c2f71f47ed2324fd83b3bd2b v7-2-155
++b8ab4ba6b11018e468362bbadf077654f9cb4be3 v7-2-304
++b8c880d61acb8d5e08ae0cb558ece76d96d12341 v7-0-185
++b8ebbfa519b990d6b892dcf943576761e714c2c3 v7-1-050
++b8ed23ef6ff15604ead321f758ecc624a9d35c2c v7-0-042
++b9202c4cf847ac1898b4af225494197671111785 v7-2-124
++b93a3fc3897b3e16e96b80e35dbd72aabf9cf37d v7-3-078
++b9897545378516c8afe3140b7172d838f33e5b29 v7-2b-009
++b99303b1483f26763f0c4b6c9d244763ad32d476 v7-2-309
++b9975513fe244047a60acc818edd8de94935cc28 v7-0169
++ba2ac6b5bfb9679edffd08edef9cd0db1237ea12 v7-2-259
++ba32a005373a78e0b07972880704e2183f578f86 v7-0-136
++ba51f75bd4b514d5c4d48e57c6018c955434b936 v7-0221
++ba9375e24d4937d863ab87d28e6b7c1ed42b3960 v7-0-050
++baa5f81197c865fd8847f6af95fb1d48cea6aa65 v7-3-043
++babbc735b80efd1ef23f35dcc77c5f5cc9e68fea start
++bac7c3fce15019af25562f5c19b099c55487a6e7 v7-1-133
++bacdeee78827acbae22a7626a93318ee1919c883 v7-1-014
++bae8347a9ae1131d95a7af1d751fa47df5d3baec v7-2a-015
++bb3661a2eccc165bd5d2a87a8d4696f89431a459 v7-3-116
++bb4797166e4c610516eaa16865682ab14411ecb5 v7-2-064
++bb7a0b90100aae1f77748f6f38aec95520825c3e v7-1-023
++bbf0ba46e51d5a4e58b872b840c5dc3e1ca44234 v7-2-116
++bc3f88ca060d25cad633a20548ca38cc529fa0ca v7-3-045
++bc68103ea3f6a13d26598bfc1958a57eae377a92 v7-0-040
++bc7ec0f1f7f35c3b58b3e32bd2ba1b87501b17d9 v7-0170
++bc95c6c4bac13d4a0f8a4bd6ec10f495d3fa5eea v7-0191
++bca50c9e1374c176a63f9baf0ed7fcb34ea16967 v7-1-147
++bce687811199a7866c7728b09f00406ac1294745 v7-2-287
++bce7c73fd56da29730fff999a1fa4b0edea3285c v7-1-157
++bd7e26d05a3fc8e010566ad8f8aea9c31ddf55c8 v7-0-034
++bd94e22dd3db36f07fd31b2e282f25ccc7335f58 v7-1-163
++bdbaeab157e6f88d82056df6b927acb5b342ae01 v7-1-272
++bdbdec22a225553f5d78db019e13cdfe92b9cb5b v7-0161
++bdcfe793d49fa832470953794583b4bb74ab9fb6 v7-1-104
++bddda5d8caa1c6bf174c5e202d3b08a51dbd54a7 v7-2-210
++bde3b38593f9d07da76cdf37ea574fc9d80aa43e v7-0-052
++bdfbf8ef447a4fabef09ee9d28eedcf0e6b99e57 v7-1-249
++be0f21f63d2c9651429a6ec9e97b8e6e9d0d102a v7-0091
++be1d64f82db26bf7892605332aea6126d6343e47 v7-2-325
++be8e2719caa6c7194ce4713206da6f1f8db694ca v7-0-138
++be9fbf8b0cdb6a42c07a8be94e9fba866cff00c8 v7-0-146
++bec979a53f47ff6866d390eff6c4ddd4d5ce8a8b v7-2-307
++bf5ba8a0cdee590c0841391f9a8b65c456ed06bb v7-0129
++bf63a31b77017d78197bc0155c0ec59e31559df3 v7-0-210
++bf7803d0f5b9d0a9cb16636b9490d723623c57e8 v7-0-019
++bf9579ab26e59cda4bdebcd934c43b6fbded60ce v7-3-019
++bfade53bcafb7b6d297f23ce3ba9e6a72dcb7949 v7-3-087
++bfd69bfb41491b83ac7a4b948c649eaec251c54d v7-3-046
++bfd8935d62009b625c37dc373404b67d0019d7f1 v7-0087
++bffbbb566d6b1004cfe26df89e102c465bed4312 v7-0-192
++c00efaa0af249c086557487d172edd6a1cfc0706 v7-3-053
++c050d5bbe79b6a0bd83fb5dc0c13c350492c7c4a v7-2-063
++c06c658691e20f22ae95d4cf117057c7d0736308 v7-0-087
++c0bb3c1dd44695b4eda074afd1a7394d2b7e4552 v7-1-132
++c11845a465ae63ea7f9942484988dd4e441c891f v7-2-370
++c12f39141bbc7c031b51352896a78324ad27398c v7-0053
++c1709e3f8536100dc87defb9f788f895b4e73578 v7-2-140
++c17a42da3920c34a75c17fe8696d2f04bf683f24 v7-2-428
++c17ba3fb433e7cddfdbf2244b777550970493b0a v7-1-106
++c19f6b8d0393dd28a2673da19e8acef59d371f65 v7-1-304
++c1b61096e3d0e4383db1ef01a5dc2f3ebd5eb0fc v7-0-074
++c1f67ce5740adaa7e1e164d706f204252711d5df v7-2-382
++c21975c58b4497d08a2fa30601723537ab1f03ec v7-0123
++c22ded254d0591df640c3ee0ea3dd0a490fa2396 v7-2-071
++c2cae213194d26214a9132c1ec7cddbdafd18175 v7-0e07
++c3242ae88ef1d4cb6eea51fdf96670cae48fc64a v7-2-081
++c3242ae88ef1d4cb6eea51fdf96670cae48fc64a v7-2-082
++c37ed44f014fdcb211ba3decf81d1f3ec94a210b v7-0-153
++c38cdd201cec8e9a774b7256a5eadf2d7194aa0e v7-1-059
++c3b5d3fe94046702944964c32eea7522ecf92c4c v7-3-020
++c3ba2dcc4cf4b96ddd1e3df9beacd1e11abe7868 v7-0-214
++c3bd0a84e11ad1caf53402dbebc39ea8b01fc832 v7-0-167
++c3e225bc213a1a91a278fdcb3c5fc003ae886f02 v7-2a-009
++c3f63ed316b621743f44a5ab6b9a5438b88feded v7-0227
++c44058ba78bc108e98fc15a14756716c3d3241fb v7-1-141
++c474f5691c0c6461414e65601a97e817e976099a v7-2-164
++c4d200412ae9b66732f2c9be98273802a0acdb95 v7-0121
++c4d5f3d8ad71c4d30397ca0101a89925f1666df8 v7-2-099
++c50c82c5e230a9ef1cb570be0a57d3dc9e295993 v7-0069
++c50ed526966abc52d825a36d5114bebc21f850b2 v7-0-220
++c51a4f9936751df0e9bbdc454727bced532da3c5 v7-2-255
++c524f99c79251a7b614776a5d064ba40c8d4d5cc v7-0022
++c544a3507e839f3ad4db6e1d7dd7474ed0167b96 v7-1-066
++c5871806d7e6c121c80030dde025a96c0ddec820 v7-0-057
++c58b9479e304ff055b0404d9d73a51da4e9bf7e5 v7-2-315
++c5a806b29372c033c3b616083c86159a8719635c v7-2-306
++c5b05f6de1adf8bf800da0bcdfa04a262e0e8329 v7-0047
++c5cafb21c45b5e1e16c006056dd5b8f5ad91145d v7-0-096
++c5d5e0f3403f65e77307d1bcb5d71acc73cbc90a v7-0-120
++c5e1b4b9016ff900a005057fd1a055c70b812414 v7-2-047
++c60d231453cfd59c8b313a894027cecc0a4315ec v7-2-424
++c6296b0ad9eae4122e31dd3b4f363e073f388a38 v7-0151
++c649cc22da98e2eee72352917030fc6068883317 v7-1-060
++c669f3280f595ba6133a94d8ceb3ed3ef6c2a4ad v7-1-324
++c6b06a4a8f928b1868a3d48d95293730262a041e v7-2b-023
++c6fe65c000d27b9ddb0cbdffe43cf188b7a51f2e v7-3-037
++c7537662746d8bae8bcdf8502a23a573a54d3855 v7-2-186
++c7654c4db8fd57c397bdfd3b3142632a4e761f32 v7-1-153
++c773cb978acfd216004c871e883d2b31cd4cc0bf v7-0116
++c78d973dce9e0456b96725f55b853ecbe4ebda96 v7-0211
++c7905d03c72e74540d91b1ebf3fc9cfffc2ba699 v7-1-273
++c7c53db66b5521d2deed3b889fbfb13030868942 v7-2b-019
++c82bb7ade452d18a121a6b0b8ff654dfad30532a v7-1-137
++c845dcf7fafa91d8cb370f690c16748758b20332 v7-1-110
++c8568bc2db390972c94374a031bbd195c4403ffd v7-1-311
++c87ce0b2ee2a14d3daf3902bdd4163a002ec7a22 v7-1-190
++c87f38b71d27d9e420e5947d4e99eba9e3eb2e19 v7-1-070
++c89903e16772bebee28ec935f7459c8c83bdf05e v7-1-223
++c8b6b7e1005daebc2d72c578d70b455f42b5bd16 v7-0150
++c8b87fa14d277702b7ca6b9ba18470c3d64ad83f v7-2-179
++c8c47cc9dab1eb6976b9c214c58e65beb3a45e97 v7-2b-025
++c8cae82dee305d003f809d91025ed21582785597 v7-0-061
++c8f343a465a271cec752fce3efdf5fa8476d3c96 v7-2-180
++c94bbf85eb160aa9eabe33b13b267c1446019eaa v7-0-213
++c9b7b1e711d194070184c9c198fbe8126701d1ee v7-0-235
++c9ddc2338f41c43a30044dbdca1775b919f80707 v7-0-058
++ca4883686f934bb338dfe3a2fd7d6d3995c3e0e2 v7-0-088
++ca501ab2fdb3a4477a6b8e469c1a4d8f1859d92a v7-1-170
++ca5b52e99385825f0083c4b122ebfb50c2653039 v7-1-255
++ca82de29ac1903bb1295c04da5624cf295b6447c v7-0g01
++caa550fe445725dea9531b9fe9f0d0f88961baf7 v7-0-191
++cab25717c6a69a7d9ebd010153fd9be9529fb49a v7-1b-002
++cb49fa8c71963b7b69529dfc2abd00b791119fd6 v7-0-126
++cb6487d683f2260fc0b47b5e95f78a297360b1fa v7-1-216
++cb7043482eca744ad9ba1eb11f08cc2906b6bd3c v7-0-149
++cb94c42c0e1a1e00f643be8a96939e42c3afff81 v7-2-445
++cba9c4003cb554f909fdb6426b8870bef24b3edf v7-2-085
++cbc9c335ddb17f9b0e9d281e1c5d97a20ed4fd94 v7-0-119
++cbe70f2e756d80015f6f0057e13a882ee7567276 v7-1-259
++cc03a79fdbb9315956fc22887483a15b414278ea v7-0-197
++cc4fe241baa3596ae9cd27ce65ad25077bfb2e71 v7-1-236
++ccbd8177e1f439fc23ef56be942ab0253d5dcc26 v7-2-132
++ccc9eda1cfcf918fbd1933bca9db01e246d5ef12 v7-2-138
++cd3689efd90a5934dcf2e4e232d97939737414c3 v7-0173
++cd3f52531f6c8f16e89e97f335f974fa25f4b498 v7-3-124
++cd6175cc27d9c8b4d4f4dadc7c38f6c490f3fa62 v7-1-235
++cd7eb2a18060734504ff974065d6a7adfc903b34 v7-1-041
++cd9471bd8e9eb1d2c59d00a7d18dc07dd97fcea6 v7-0-047
++cda8f3aceb85c72c94498120fa171939b83cc8a3 v7-2-120
++cdd82acd75b449784a574058387449096667e56f v7-1-125
++cdf37c8f46163497e0d7fabf9655be37b692fd1a v7-2-008
++cdfc3897c8950aa84c84c1a05158afd32ba71d06 v7-2-222
++ce2181d14aa08a59250267dbec36bba362eeb908 v7-0139
++ce6bc4bf2b87f2303bf47fe64ebdd470711973d0 v7-2-244
++ceaf71b15d813665b3b02036a619bc967db90d8f v7-1-177
++cec8b867838bc2a5b5f5bb0146010060639fea90 v7-0-114
++cf080795d202ac2ef02d282f4aec111b2ec126b7 v7-2-135
++cf0979c30cafc4fbe239ebb9de3c427a265207a3 v7-2-144
++cf4d73a8924e715fb5fc7db94af9a7e67d7643dc v7-0-095
++cf83dacfa25fb1fd8d4929ff2abe871c72ad94a8 v7-0105
++cf8f86128f4c428af72c116cc53d92ad7c1e40e9 v7-2-435
++cfcc1421f5e431d3984c3e9ef3f360ceafaef76f v7-2-146
++cfccbe492612c69ee77d6cca4adb690794e5feac v7-2-126
++d065616e083680035f38a54409e857ebc2202db3 v7-1-146
++d06a461924a3f92575d81c2d1c0c3a74cd0a2929 v7-2-322
++d0cf8c843186301d546870c2661cfa3e8526b3e4 v7-1-100
++d166fe2bfe7438b1539cdedf1810dc91a1cae01e v7-2a-005
++d20d37ef86c8844da2c9c45b2d9fc8b6a2dc3f78 v7-3-129
++d225695aa7945c27e1eed207e3e683b16824ea87 v7-2-282
++d23a400b718419e039eaf4f8ce23517144d41faa v7-2-019
++d2612392202f9b87c122b7233b0bbc67c9edc004 v7-1-004
++d2796c60ca6f11e05cbe080114a3cfc6006488c7 v7-0032
++d2a4f08396fe8c01ebca988db5eb95b7c3f9db8b v7-0f05
++d3571ca62cd6a9138b0aaa4673b09dec78e540e1 v7-2-323
++d38420e2fafe99d58b915213b73f8d1b8c7848d5 v7-1a
++d3bbb5dd3913b6425ffebd18b232fcc2d1907046 v7-0f02
++d3cff90680f3f985c21e34e03607a5808ed4dcbe v7-0-144
++d433f43849ba1dd0006dbc4d794cda3502fc24af v7-2-332
++d4b1aca2e3a97415460ba21ec81eba2218cc0be1 v7-1-128
++d4bc24e6a28144ebb16f143efb72ffdd98bbe0fc v7-0-156
++d4ea645c77489da3d5f0f0f48a14bb63793e1505 v7-0041
++d4f3db33d782da9d33b2715fbd14f5acac280ce0 v7-0037
++d51bf80e8fc9b1048c93bd26e308af7c250ef629 v7-1-045
++d5681bd2661b3e75b506a7d6ffe8bd053e04608b v7-3-013
++d5867fd6b2b72d8095795f4db9aea88035e49e5c v7-2-330
++d5892839ed90bb1a8f9f1b3ce88bcc205e7617cc v7-0156
++d5ec1b42ceb06062f03d828acca852a4ccfbc7a4 v7-0111
++d607b48414b79e7cacccb66391683b23cf1b2cbb v7-0-099
++d608343d25e6ce4b1e6435720c48762501b0fc7e v7-2-197
++d66394147eea6cd5b304fd2b78e5dde46fbb1b02 v7-2-136
++d6a69271cb9a787af6b3a05b01275c9694a144c0 v7-0194
++d6d6ca94371317962df5d92c9b879f7602d3e234 v7-0098
++d6f0d3db1c641e451f9cb0d0697f1b18939d6cf7 v7-2-087
++d75027183cf4b44b2a92333e57b9bc3fe2b2f5dd v7-0-230
++d763e7d7e938d8dd3887b7279b44e3a857285d38 v7-0-189
++d766b2ba2fc6d5b6211cd10d90236dfa8479d617 v7-2b-002
++d7860ee7eb7ef5c27d45c4569107376d3cbdbdef v7-0207
++d7ce3adb8dda9d7acf8aef39cda0b936ce3f3d15 v7-2-362
++d7e33248b9c80fb5c1af5880d6c6a4eb507de990 v7-0206
++d87865573d809129e6d25071cffe8ab451ea2db2 v7-0-041
++d88bdbabfbc6539ce6cb149a3e8b025740a7f351 v7-2-109
++d8983769c9ddbffc13ab427a5e44693070d7788a v7-2-361
++d8af28dbfb80aa6c6248000b011bc9df6f8f337a v7-0-152
++d8b9701a3b7bb58e3f7f2c72145a0dfa33501f31 v7-2-193
++d8dbf7d55c5e9ac3e345eb1b2b86986be3582fdd v7-0-018
++d8e7b6762aaaa48f6bb72b1c51d535119e79c379 v7-2-096
++d8f905020502b0f35d810f27b4d5d28689bb7764 v7-0b
++d9030055c432b20797f883c956f094416e00c622 v7-0033
++d92358c7d6216ff56093067384eb7d96ae47696d v7-2-238
++d92ac5a199fe88f1630678f81e0b47d5f3f1a921 v7-2-196
++d92bab35a16720d2b4e3a2b836fd68df0ee00aca v7-2-234
++d94c322508140c4cc0d36364d994f475aa84f8d0 v7-3-075
++d95676480093879730aed5ba678e3e8305977a4e v7-0-067
++d97518d6b3257b4ab48aace82f9197bd099ff758 v7-0063
++d976f4da2a4d56ed9b59c61f6971ec0cb18c84db v7-1-264
++d982226b7aaaff40647eaa5ad05e01538e90065b v7-3-023
++d9cc61139d12c315d790d79890402ef957be00ff v7-0146
++da0991871b02a5ba7bce7d3c1180d01d50d7646e v7-1-017
++da1d62fe5379f77a2a165e40bf4bcad0466c60cb v7-1-063
++da9142bd190a5ee0e45536ae4c2913be5bdb02b6 v7-0149
++daa1e34570ff649af9d7b64a447cc6d2c0b60e38 v7-0-093
++dabcabce3f9d67ee2cd22246ea16769513982910 v7-2-419
++dac5006b4443f99681d2068d0af065bec10d7a99 v7-1-162
++dae4cd29a0b7d899201c2e6a10f0441e7173bcfd v7-2-347
++db3ca1048f7f800fec81696d29ff8a7a3027a64d v7-2-320
++db44f7b81373a02990aa6030b85024478b7d82bf v7-0f03
++db83098657947521e0e797662c135516a4a300ea v7-1-123
++dbd226be80b18c494f4438045d34b65530dcc198 v7-1-027
++dbef8434a2ea19482b3ba72b428c57dafaad29a4 v7-1-329
++dbf53ece2e23fd6e8652c531ce7976f54ae85635 v7-0029
++dc8197342755fda6ca4d6619dac228406867a7ce v7-0d04
++dc81a4fc63185c72c940e8ade45b5e1534523351 v7-2-143
++dc8a5699253b833ec796460f9ac877d02ab7b165 v7-2-406
++dc8ee74574f80c7eabc90ff7a3973f882993cab5 v7-2-444
++dc948c8dfd1550972011e38d59b9a8ade5a000c4 v7-1-019
++dd9db57ee7ce46bdc86cd787fb58907f20c0a973 v7-0118
++ddafd2ba3a863054041f2f71248f0ea91fc3b1d2 v7-0-117
++dde812fb22478c1fbd34d935ec466b2cd9869da4 v7-2-437
++ddfb6f3f3b2be6e5397db2601f392c45f4a05b84 v7-0-012
++de0e7ca61893d31a4a5ad8e129691650e31477c9 v7-2-427
++de8224965034eaf748c4205cc2a61e097b4aef90 v7-0-063
++decce137e7beaa2edbfb4783d1cac714c7d84d14 v7-0-098
++df6967461cef05aa96ff708863d380e9d15f3bb7 v7-1-065
++df6b12c84b2359415cd987c016f5de135c680100 v7-3-047
++df7ceb64b0c65cc5ea525f7df25ecdbba80b0208 v7-2-137
++dfcff6590aba6d93a69b414759b164c255fda08f v7-1-238
++dfd5dcc73daa3934ff1f47d6d53207de2f9034ed v7-3-067
++dfdaac31aa5df021b444bc2ba64307709d863c63 v7-2-230
++dfdaac31aa5df021b444bc2ba64307709d863c63 v7-2-232
++e038754d419a3ab5ec25d014513bf8773cb9459c v7-2-408
++e03cb9499b83f972c2bdef503b1faa15481da81e v7-2-015
++e06e177de52ae555685a6126213dff168048fcc6 v7-1-305
++e0e0d1ae601197ad22eaad3b721407a2d0cd6294 v7-2-318
++e1070b3b03e9b1490157dce8db81b026460aea35 v7-0-081
++e10d3c07344929c21377722bd3c66d3c54ef582e v7-2-423
++e12f574898a9b21e39af38cd57e50ca87ccdea81 v7-2-272
++e1336150cfcf7e64f66563629accb1cc84fea036 v7-1-089
++e14d0a530351fe26450893977197e81e9e9ae5f2 v7-0-177
++e180933b876a74ded043348c0cff4fb209d4d92c v7-0219
++e19ecdb13f34ca1ccb3dd3c382a08423c385e847 v7-3-080
++e1c7d0ea5dacf4184cf49c3d05d6ce77d944a367 v7-2a-002
++e1d77e652cb7f9e84072f16b3ac6dcbb73a1fd81 v7-2a-018
++e1efa991c2b6992bf361cb432895749fc6b1109e v7-0-106
++e212d1a40ca9638a4b306013d54417dfcbe9d8ab v7-1-243
++e2680bc6a18024d68ce8100e21d4d307dd647aec v7-1-011
++e2d7622d70894e506f9c722bc8ce145521d098b7 v7-2-106
++e2f5c1597829256cfd784681163c232bf907f1c9 v7-1-092
++e319a4fe6e32e0297f1be2c1a8c763f7f7b26cd7 v7-2-378
++e351146e7974acd49f2e9aab749f31670b2c6044 v7-1-116
++e44523d45bf5e276817b7f1f8987f2a8ed3132b7 v7-3-125
++e44efb3af0d58fc58a392e58c604bee91bc52e2e v7-0-060
++e4fa26ce87694c7d810796d41d0f03981e500d1d v7-0187
++e5145ff9c9b0dd7b29154c2ffd220988737c99f7 v7-2-285
++e5602d92da8ccb4822917b2df3e6099344bb4ed4 v7-2-177
++e625dad74346d76132cbcf6ddf98b95d2c8fbfe5 v7-0-113
++e6372ac3ebe536aee65848e52e58fc817697b98e v7-3-063
++e641c7a27c470de82019d313a158a9894e0befc1 v7-1-181
++e649c78407e600ab28819574efd7d2d67f066171 v7-0202
++e65e50609469f1c5d98ab7396803fb697a78bc17 v7-2-219
++e68d8541494dc36b5778d9eda2814014201b0335 v7-0228
++e697bd3c3876c27addb414ae170d741aa1eb1917 v7-0075
++e6a8d55a1626baa2e38837b0e7a4a6bc65783623 v7-1-178
++e6aed39f12648124b0b4e23c669cab6ceda2ea1e v7-0-158
++e6bd96f2d7b81a8963c9c8dcfd9e2b3f08a9f0e4 v7-0-017
++e6d25347de2cc7f7632cb0cbe5adef45d9712aca v7-0-182
++e70aad5761b59933a1f69a8756457fdb3a9aad40 v7-0-069
++e70c0d863e0cb2b26f16acd17ead7ed267faef53 v7-1-022
++e72e30c69d582a55cf3c4836aa274a006a457fe3 v7-1-261
++e73f2978bd4061868337a25ff09c3c84b54dd2da v7-0f04
++e753954c86e2ce32648d9b12c3c135c22748f75f v7-2-237
++e7633eb32cfd9cd631a73f4d412272506261b427 v7-2-098
++e76a088056dd38e02a99daec0741aad6f32a24f8 v7-0-242
++e77e3c11f5076d6eae8a67bd2f531f72d33eed7e v7-2-331
++e7904492cb75b7a69964c331945b261cd4232a7f v7-0071
++e7f6ca5594cf9c6a3902458e0635bec7a7c40d87 v7-2-149
++e8450dbf6f031f2727798a7d955e83dda7ba0288 v7-1-086
++e856f9cc2aee46628ecb83351489d4f41d66c6c6 v7-3-064
++e88950f0d4f699846875e45dd3887cbdf92bc3b9 v7-0-084
++e905716f6a3aaba3c0ba1d18093d4f4f09550524 v7-0-090
++e943e5502fc9cc439294de385dc564226b7311a1 v7-0050
++e9624acb93a750d835c361c08bf3e78f587f6510 v7-2-028
++e965cf54d887eb9bc20b6668d83541992cc4e8a7 v7-2-157
++e97a97d6a0eb98b21bd068283f192e0a2f2b1a89 v7-2a-004
++e980e93d2ac2c7838acfd45fbf2de06939c929bf v7-1-186
++e9c9f37be3066d64d7d87d1b314b2913d0d751f6 v7-2-416
++e9d018b58830d50906a81e1b1ddbb3e2bdd9126a v7-2-107
++e9ddb2181f063b67b3075844b4aa7359db5750be v7-0155
++e9e3355861ba8785dba619e2358a239a9443a580 v7-2-342
++ea15087a42cd21520e628faa3c53385246c04743 v7-0-085
++ea1a2950ed16f441f66ba319615d47f1ac67402c v7-1-191
++ea399ac2c1b963b068beed88bfaff7620d345333 v7-3-138
++ea9f418ed072f45fc1cb04e455379e3db1c0f182 v7-1-215
++eac2556d46208785a173d44b4efff339a7e2fab8 v7-2-215
++eaecfa88c2469471804768932f823f5b264dd0b9 v7-2-148
++eb0504d00480ca6a7758bfa35d64a09b3d389fca v7-1-250
++eb1ce51c1cb0dc7825570f7cf30b0e2c3e9749c1 v7-2-129
++eb27e3e2df706466ccf9bd00e407d2d3419a81e7 v7-2-265
++eb4ee2010aae8f4361054eb367a7b13dcfd738c2 v7-0-107
++eb531146be0ec6cce1187568cc841718df44a296 v7-0114
++eb57516376d4b43889fe43594048f183af15c31e v7-1-032
++eb6fc577c96c2b5e322ca3760fa4e9c043ba5a8c v7-2a-008
++eb800128bd894e9b2c661627d2a302344162987c v7-0-092
++eb9cbad50fa34fad2b422758d6d814059aa89f94 v7-1-313
++ebe059f69b9e46ada2c6e02b3979e31d1b11c906 v7-1-296
++ec5ed41eea2f1d83df5a2507ab2f469fadbbfbfa v7-2b-001
++ec7a570696ac0e50147e2419d8b269ccfb75f25e v7-0-199
++ecc637a844592d48cec38bd795a17ecf6e0253ec v7-1-114
++ecee28dd16d25024fe584cfb8cd0923f1184398f v7-0213
++ed44c1c436d3d61a94062c7a781b77dabeb8ebbe v7-0-100
++ed7fefbef738386c39248b501556bdea80d0f8b4 v7-1-276
++edb3bc186e97a3392b3aac634526a4f4f84f4011 v7-0-020
++ee41e031dfe14ebe50c289158213f05eca869bb1 v7-1-179
++ee50cd1a303271c6be6cf6121f50c0abb8772dbb v7-3-088
++ee9d2d24ea9bd0a7d500f1c37cbea802d8d1d88c v7-1-231
++eef96cfdbbbebe5aa61b420d3eea31c3c5b6d719 v7-1-314
++ef0fe6201b843f699b3ed7483e52eb3348ae5b11 v7-0-006
++ef2890033e88391e92eba7d1ade8a43e9e200abc v7-2-337
++ef3a3ec8940cb0c55d35d2e5fe924a09d6815f2c v7-3-070
++ef6b11bee7d06a843474888d0bbd67d14dd2065d v7-0-181
++ef7fdb3c6927725abb07731a46ab78404ad4c7e8 v7-3-105
++ef886129f0c0be912c7b6c21e695bd9980d31210 v7-2-088
++efd0ce477ae789445312ebb08a0f78b835dd6f5b v7-0-194
++f012c4ed8c38499ed2901d139f4409e2edfe51da v7-0132
++f016c3708ae32436ab545762a1bfb8ebd31af975 v7-3-106
++f018c759e4ed5e1a851c1353c118883efab6a155 v7-2-274
++f04e890524be4a82ade7526f62a967390d3f1cf1 v7-0153
++f08390485cd365abce88ade8987e56bd267cf3e4 v7-0210
++f099adbff8871627d897979b432d74ad1623369e v7-0-031
++f0b3b9ac2147350b1d1fd762cfda0b3073b0bca3 v7-1-161
++f0c598082dff6f0332c9af602b5b4996bce01ff7 v7-2-104
++f0cfff4dcc2f7cad78ce86aae0f4cbd3371ce46d v7-1-283
++f0d6b2bb1093eb12925cea635cd58de0594c422a v7-1-245
++f10fe14748e260eb0d8bfe375cadbbaa0e5ceeca v7-2-055
++f12d38ee49de595d11efb50674bccfe0417c7063 v7-1-006
++f138491673309c018ffede08cd4858c3bf318dba v7-2-169
++f13a0227fb8844e591b6526e4393c8f93dadda29 v7-2-305
++f14cbd913415ac4d6a9968dce20a20291f8c0d05 v7-0097
++f14f7aab518707c29a8ffb75a4e8217de58dda91 v7-1-212
++f1d1214744679d401e17e9ba97ecbb6255696ed0 v7-1-287
++f1d2a58883b96144abcd5b44dbdd190a67b3eb79 v7-0024
++f1d46f94824128251d1212cfaef0b1bfea4dc71b v7-0163
++f234c87ac7e9807004cdc559cf68aa5e04850f5e v7-2-248
++f26d0c74a329cceeed80a7985f5efb5662064283 v7-1-039
++f2927225367a3ac3fbe86d6d03ebb7a526072ed9 v7-3-039
++f299f0bf32d76986d5596d279bc0733cebe1942b v7-0-211
++f2d46e4a859d0f12f12fbf332c40a717dd07df14 v7-0068
++f30c8ac7741c82503bf897fcebc68f199e5b0998 v7-0225
++f339305875fa7cd21cb4d42619f5b9789a027eb2 v7-2-229
++f3669fbc9a31512a0b81fe7f647b935243a76520 v7-0-109
++f38283ce871c19cb82b1c4d364fbc3a242c057bd v7-3-131
++f38b7359dafd1f168a15698412d266c17a16520e v7-2-102
++f398e0cc5b7a032f327aa2f33b71c3bb6a22d46b v7-2-349
++f3abb6aec8c83ada21d56b8be4ffc6be55ce39ba v7-1-048
++f3d3545d6bf6405662476b40e019044b880d8f81 v7-2-058
++f3d7fa7dcf634b669a7d7859bcc39796300346e0 v7-1-035
++f40f1a8520ffaa57ae73a720c179780025aacd64 v7-0c01
++f41b6108e46b7cb3794b2a3680f2ce91b402fb21 v7-2a-016
++f41fa84cd738b945ab34271a92f44e0d1445dda2 v7-0g03
++f455396f3c3fb524ff1082cfe2cd7731f67877b0 v7-0043
++f49d72bf9c5c425dfb8bb94c6bac975716e3023c v7-0-124
++f4a775df722b13250c2b9e6f1154c31ffd9b211f v7-0145
++f4c7b5da017adf78554a240587384823e58ba80c v7-1-012
++f4f8014d516e9b9620311aa2bb7a5a2d5749f451 v7-2c-000
++f529edb9bab3de35ca7451e4d45cc90e9f7aaf81 v7-0025
++f54dab7cebabe6aa275dd6a379b42a15c365af0a v7-2-280
++f55897d6921d622ac2649e4c94ddb38d121c2832 v7-0026
++f5bd6753cdc40733c903090cef1cff033942dcf7 v7-2-440
++f607f15ab091b6a51b0546db6a6d42adfa599c3d v7-0143
++f628d19361d9812a1266baec9f76d60c798f92d5 v7-0-195
++f637471a3607a43bab09a2b61913201a5100e636 v7-2-192
++f66abfa335bb76d20f2a375f148fb7705bfde287 v7-0-170
++f6c72dd1962a46aec26c7caac6f1c3789321e91f v7-0-030
++f713fc55bf7b9a5cbb9ae3628547a78f4e44bcc9 v7-0109
++f765f9c139de3555cd181bd4fa8de50d4aaf41c8 v7-2-158
++f798c90439866d3d29eb0fa460d51e4de26f27d8 v7-2-224
++f79bb032002565143e3392cca0540216e7f93e28 v7-1-241
++f815aad6c05549bfa36f193dc57b1f03d646bb79 v7-2-343
++f84061aa57e4498f15155a4a30da40ea07be84e0 v7-2-030
++f85fe1a05c2ae4c03994c9ea2eb87da590bb3214 v7-3-133
++f88008797313e07112b8c4e549dc2217747fed98 v7-0-101
++f892bda292a89e7592ccee5fc0e296659066d7c5 v7-0198
++f896a7dfd47d15f11ac663f132fa2c5aba91c829 v7-3-052
++f8f35d8208e6c242026dcedd8300b82f415fc59b v7-0-179
++f921368d43c3f0b9b32f52f881e7e58242489bb4 v7-3-093
++f927ca2cedb40441abcd9cf5e18cbde2863761b4 v7-0-226
++f92bb184582321910573561c941167ca46b9850f v7-0101
++f9366d458bd09b73aa46cb202c7c6329e608bf0e v7-0-217
++f959cda54600f8d014cf3a3c69285c598985d828 v7-0-027
++f987220caa57c4d13b64fcfd24cb4bc6a156bb00 v7-3-094
++f9bd6784f393aa771d497611b75a8623c20a8269 v7-3-009
++f9c55e12835e88f072c46b20ac9dac25a46ca839 v7-2-218
++f9eaf0a9872df3ef8610d3fae404231447954d5e v7-0157
++f9f6e35c9f00ee6ee518069ff2bf0f93b635b8af v7-2-005
++fa07532e69c6eec9a6860ef1362f1d8187b8244a v7-1-193
++fa5dee44df3fd23f96090d225dc11dbc4de7bf20 v7-3-034
++fa7e62dd58d779149c96570bc8943f1a1b035e3b v7-2-364
++fa9ee618000f51e5da6c951f24c9bab78f2bb428 v7-0-110
++fae6fb779a6be78f2609dac4fddb8da508735dc9 v7-3-048
++faf4b09c396e8572e84eab84eeb60ea0f3785529 v7-3-097
++fb1222c880fc037f9b76580423c5a57c74acba28 v7-2-344
++fb60c9f35517660092b161abc1e4aa17a7d0ac05 v7-3-040
++fbecb12e37f5b1523aa8e6ecc07ea6c07ed65270 v7-2-131
++fc0c566b91075643f259863d171bb253703698bf v7-0-064
++fc2ee817dc9861774c31bbe768cddcaca4690e4e v7-1-328
++fc42d9cc7ad054a21ac8bab2584732ebb191e5a6 v7-1-258
++fc89a4f98a8b2e51dcdd380a7eede9dbc5cd1282 v7-2-184
++fc8bf5d4051a1c13085db00c902092215ac9852b v7-2b-017
++fcb916bed51a5ae096a9f5f5f697a909b2062040 v7-3-055
++fcea35e2a41fdc928cb92784a4405b4fd220f560 v7-3-112
++fcf44bf1218f63d94e1807c05f470a4eb87e61a3 v7-2-209
++fd1b3406fd1cbe1e7250c95f7b30604d7e46b2d1 v7-0d02
++fd24e02210c9c05b4035ebc717f25ad64d20470a v7-2-276
++fd3346e3ccc02a11f0c2fa9c2c7351b3cead3941 v7-3-082
++fd68db1a72b5f05cc5e586ffe89a10ec6930005d v7-1-199
++fd8864aeb52aa72333573d62f0a9913b0d3e8c8d v7-2-373
++fddea6c03deefda18c971466e0688d196a62fd6c v7-2b-004
++fde086181841aa124af8a38b5c0bba132de3ea94 v7-3-002
++fe26299d6f7015c324bef3829e9ecdf7d08526df v7-2-239
++fe3ec5ea62f76a623c95a2a4bcc0d396c83488bf v7-1-303
++fe4ebbec775a55ba5d9bec6070d8d87dc28138f9 v7-2b-014
++fe52f9888eaaafda72e6f37610327206383ff6a6 v7-2-034
++fe7db192c7cc7ef3d8cdc6bbd8680833338fd7fe v7-1-299
++fea3207b800d97b802892d8edabd1d688817249a v7-3-096
++feb9b421585385b226b4adb98e10f33972068846 v7-2-042
++febddd8d11b0f8f48e3d3297628fcbfd9f427b19 v7-2-112
++fef4bd7afb263aa411f12ff13dd1d12c88ad992e v7-2-438
++ff3a304b4ac2f672e8cc3c60795f0c79c5b191b1 v7-3-066
++ff5a4a71a761f859af81821d340ac609d9309083 v7-2-156
++ff77f541d69df4e538f7db4879eb194378c04458 v7-1-252
++ff9ecf14efe3e2373f2b28fc3e32db4fe19e5ee1 v7-2-203
++ffa17de19445569ea573550eef332323d83e70bd v7-0-016
++fff7028d50c8a44a6285ab23b451d975764b8bd5 v7-2-296
++62e8d93241cd15962f895da4788f21b514238b14 v7-3-142
++632f43801ddb568f872599499fdcfd9522f8c13f v7-3-143
++322a5c8d392bd47ceebd24cd21dacf70409fcc91 v7-3-144
++329a9676040c3182f78e2014322125f8839b5cb6 v7-3-145
++2bd574a2ef1c0ad487a0673a5867b09cd332d176 v7-3-146
++55fe8407514f5387ad872a338d77f64a2ad4b5f5 v7-3-147
++d67916de812ad684718c02e3ff93455ce577be81 v7-3-148
++7f937a04cdbafd7d179b200f75e988408f8caf3c v7-3-149
++6146c9859f6558d618e950fe702c11e41ca21105 v7-3-150
++f169a51f7eadf9a07ed95161143e6209387a4f34 v7-3-151
++0f7f66682a5563c76ab47e9976fd590d9423a013 v7-3-152
++d0cae598360945a425859bf8acf22923c29501f4 v7-3-153
++d72d709f0e18c309069e42d3d7865d68db9e89d7 v7-3-154
++5747cd65d62b613d5060254849ed4bc1e1e5d714 v7-3-155
++7fb8cdb9cb25e1409abe45bba959f5f27608d713 v7-3-156
++9a98d8562637d4c90439125a14224a3403d8bee3 v7-3-157
++b5f774f159274af375455f32d628881c027417d1 v7-3-158
++415c55534d901aa4617bf584462faf0c7198e07e v7-3-159
++c5e47b752f07a95534bbfa83f031a58af67054cb v7-3-160
++25672ad7f377341ff1de9a0773d8cfcad1d37883 v7-3-161
++18ad854f5dcd0ba1700c73b03677dbc88b9844c3 v7-3-162
++e8f012b00187c5a957def85bb3c6f0430f20fed5 v7-3-163
++cdefcbb70e8cdc1f7185f1023d3a4660d30a074b v7-3-164
++e92a4b9b4484d1c07d930719ab1370fcaf94d3c5 v7-3-165
++5ddb68c2a845ad7941d1ae7533a81c12b106dffc v7-3-166
++0a0d7961b4fe83151b03d98ee904ea7038f64123 v7-3-167
++930b171ce3fc9dbca3f9da6bf883faa725593c67 v7-3-168
++5f45bacf31efef21f9b60543504d1832ded3e098 v7-3-169
++64c3402df964791a7b8c925905423f83af83e930 v7-3-170
++1bd8af13fb434e4c99bb756052556f4d56cde200 v7-3-171
++ee48b3da9d53a487f3636df34cace6400d13f32c v7-3-172
++133d089f247eb7156a6e8c49e0526f41cc082c3c v7-3-173
++820f12659c50890dbda80e7280086ae1176d1378 v7-3-174
++537e0102c0f9cc2c0656c298ed1534ef30176eb8 v7-3-175
++94f42ae4e4e66483fb6cc7305c61820b004c6182 v7-3-176
++66f2d62271fe77d4acdda5808bd0d3a45be3149c v7-3-177
++ac639ca9f58f7c71551c19090473395d81a021b6 v7-3-178
++11e62fb6f8154537f92be5f278c31e737247f781 v7-3-179
++ed47d18b39c6a672ad4f0caa2f2c3ee897e784a7 v7-3-180
++5381eb5b1eb9c39797c435ad904bfcb71f1efb01 v7-3-181
++21346361ce6c7e9afca2e475ceb62f6244197919 v7-3-182
++e4403440e192d082af7dc8fe3e1a12d24f0e259c v7-3-183
++b941cc96926a26b62d59f759a021ddb5b51823ed v7-3-184
++9c8dffc62a41a143230f76376f9a3abf46ff3536 v7-3-185
++3d1a3aa0240c7a9acdf3feb77b664798e3703463 v7-3-186
++8bd38abda3149cce7043da86e6093dbebecf63df v7-3-187
++f2e1c3a90a3bda6ce8977187b365745efd4e5c35 v7-3-188
++71e1da07e1414740d1d0eed47a346cb3292a9e2e v7-3-189
++30b7cde2194064040cb7d7e6485a5712b2fc9b40 v7-3-190
++107b03fdf1ad831e2697c22a04bd3eeaca08c291 v7-3-191
++8470ac4679c17b69aefb06989c6e8a267761988a v7-3-192
++e1c5f69de95b99112fae28c23ce6427ca251e50f v7-3-193
++664c1adcb909aca654c4fe9200364cc741068803 v7-3-194
++8dbea5adc937ecddf8ca336856cd487e1b118b1a v7-3-195
++d641f141f9376b3ecf2146e5d68c38bf0227c970 v7-3-196
++45c536fe48db330c4ee8f1056befe702d9d19cfe v7-3-197
++b0190e93e601f9061a797689a1eb95a86805f769 v7-3-198
++c76efe33a3c1db5767cfa4f4bb433466cba6e351 v7-3-199
++41b17dd070295783af37698b1229a7052ab0549c v7-3-200
++78859ef2982bbc75dcfbc551e3d8a0ec5c9126eb v7-3-201
++f80e67bd627114cf7f16098ec4ed7d878816a46b v7-3-202
++ce1dce2af2a34aec196b7fbe29cf8c653b6ec6de v7-3-203
++e6ce47f06836721108394f0b921af076606cf715 v7-3-204
++8d8bd6307b1aa51fe2f592ce45d32abf0f6666d8 v7-3-205
++46544d3ae7ecb245a2646ae5005a3d67ca380f88 v7-3-206
++d1445b72ddb7d8b4a44393756b00d21c81212db1 v7-3-207
++205adc87d579512482c27f309c73d5fe8f612ff3 v7-3-208
++82cd9f1e8d6b21ef4d59f27b39f041d5cddec19d v7-3-209
++eeb1ac4f66d1d69c0c75f1028655a81890cf65c2 v7-3-210
++c7d942260772003e21039f9891775b479311b40e v7-3-211
++6bbdb9c7a425b0bd90d5823eba9475b850a409fd v7-3-212
++493897f8bf9057aa0fee4c18d269558d32053cc7 v7-3-213
++d84a564f28c9e64c3c2a1689af0e0851bc7e5027 v7-3-214
++b7523ef31e23f1a40cc3950b6ec75b39ad7f762d v7-3-215
++eb6c704607025d89a0a5d3fd2769a694ac47e0af v7-3-216
++15705b520c298738588a9a3b8d724c6d86d4cb8c v7-3-217
++cf89a1d3a0ddd21fe6b734fd72346468b808836f v7-3-218
++acda456c788ae1b0b45b8c67a93edcccde594819 v7-3-219
++fe9c7da98b5e2f92e4212e948e98f2d44bf06320 v7-3-220
++fd4224d9ee09801ed1ad9341a72c4683e291bb76 v7-3-221
++c3b4b1c89d8ed62a2624bf9404fc79f60223bd81 v7-3-222
++4e21fd3cfc3084db66f65aef132cb6c5e076cb96 v7-3-223
++69e0783ed0ef40f72ebeba41f8c98c9992f368c7 v7-3-224
++c249d9aa60f759286f54781829c1e3da8680c4a7 v7-3-225
++8477b2cc2b81603408b3fb1a84cd65afb2aadc65 v7-3-226
++b65a26a2aa095c739e90edb7b980154476529d35 v7-3-227
++c6df8554b39d009ed146baa48c0cfb351aa8379a v7-3-228
++07647a0545c9f0fad4e1e84062e0572a07d94659 v7-3-229
++70c8f54e7efbd7b59bbe6764d0fbfa1f1602273f v7-3-230
++455a4c85d04d04c732367f915d82c5b3c9a65b50 v7-3-231
++b67d3a44262a97e7b3ae212fcffb36926b5f53f4 v7-3-232
++69b90e43b728ec28939b0a536de32f818b7ee756 v7-3-233
++7653420fdc454be197d59e420a1672909fac7b82 v7-3-234
++441d364773dc53264b5f26042f8fc6f8b77c8044 v7-3-235
++c1733ef5b6e87dde521d0d85a1e5e62259854ac1 v7-3-236
++e3bb93df6c34da672244bce5695c1426da139614 v7-3-237
++f2c108f44f415c7cfe92862e791a01cc542ac378 v7-3-238
++0bef86c5c985218a9448fa16d935b913e67af8d5 v7-3-239
++bf283e37792b4b557a2b9081e4fdb0e10acb9655 v7-3-240
++0a650db0265381b540df8ca6bd716c4b2d47dfc9 v7-3-241
++3d96ddbeb3b0003de29b736f63b76675909f133c v7-3-242
++512ddd87f1a817749c8362bd043682a7bbd87014 v7-3-243
++be6b6509636242cd7e6fab9a4b8772e97fc9a0db v7-3-244
++52512eddb876f64399e98d12643233a87c9f2823 v7-3-245
++3f1a4ed36d1b520a1ad5aa6cbf50d68bc8b9c7a5 v7-3-246
++7fe2c092913e84e6717782da1f1a220069eebbe7 v7-3-247
++57a7998e0fa8854a7a8c3946df1d4c9b1ee220e5 v7-3-248
++9f71f5a526aff4f1e0eefe1068d9534aee427afa v7-3-249
++f909f4f0f38c71594266b3595d31ce04d4ebe3ec v7-3-250
++fe6ad3fd85322b394824a5c495a78061a747b074 v7-3-251
++0b4289bcf8364854dd5f94c42d0252504103e5b9 v7-3-252
++c21429d7768cd4b834a086dd47881d01bca74e8c v7-3-253
++1eb805225de7750c03af7b0f7ac2f5dd18d032be v7-3-254
++aa998de9f9592426c17396b60c5db9170a234024 v7-3-255
++c296c225736e4489706c62c95752a0c4788be1d3 v7-3-256
++1fad9c73d77a0030586704cccab1b1a7aba8b58b v7-3-257
++bdc3335bd72eea207b28fcf8af90a73c855c8847 v7-3-258
++59130cd78dfc73bd04f22d201b8f7c0772d98e79 v7-3-259
++cb4682b959098e486977eb4b5969c9eb07d2798e v7-3-260
++410d42e3d4da09284394456186143d595e9b2efc v7-3-261
++847733973bfdd716bfafc364a4102e76f88e7fe8 v7-3-262
++a56259157c935b4e78e9f5f4dfb1436e3461eefb v7-3-263
++aa40bddeea9a44c6c6b4ffa32c1ef373df437a16 v7-3-264
++eff686fb8de66a26367f5e6430d34729f1a0e336 v7-3-265
++25be7c9dda549e4cfa1eb57937dc2b38b3d1e997 v7-3-266
++ad404f2a4bfa5374e97f29335f41b7ef34cd6bfa v7-3-267
++ee17ee712512451a54046d6bcd3ddb9f70cb5cdf v7-3-268
++7f4f5ca70dbde4e31c2de494b982bfb9bd71ed75 v7-3-269
++b9182da84c7eeda221e5219ef4361cca201b3b41 v7-3-270
++32a52f06f33b9e2d4817330099b410c1fcf64db2 v7-3-271
++02f5abca10aee570d5a9cf00928ffaa663daba66 v7-3-272
++7d4e5e31d8c10c767cdf774a2b13aedd2f95f096 v7-3-273
++1bb6776fa8c445e0b3f9dd2ed14fdf2a56f5873e v7-3-274
++125c7bf52271461dfbf46cc33317eadc67aaf742 v7-3-275
++37a54a85413eae68932233e64a0ab88c99c9d811 v7-3-276
++e5b17a5f651696ad4c523a21822692115d371250 v7-3-277
++6622f28b7e87a93de6f1520945d1c5d2a1fc0dab v7-3-278
++342b176089678e86cde3e1afac4aaaa1e5153f99 v7-3-279
++58bba69b3371d9ff02b27fe24f044e229c8aa99a v7-3-280
++45ead8a0bedeade57c320d72e9f710a703e61cf0 v7-3-281
++92167bb91c95410a0550ff8c94370307bb7d9d80 v7-3-282
++47b6d37b60122f45eb147106b8da1322c1cdbc60 v7-3-283
++27d43855b72312500e6fc2122e167a579a1f35f2 v7-3-284
++6018c815e1205e7db9328fe6ed91b26b514465f3 v7-3-285
++3f822e54765c54a1112a953e3c37bb60185fd51c v7-3-286
++07bc2ccfe5559035e785f22851365b3a31dec67e v7-3-287
++e4f3fa1a474e677dce486ea07ee31270f92b2b4a v7-3-288
++44ffd0a8abcdba441216514cb711649eb1169876 v7-3-289
++df33dba4e553f8fa27ba467042f16315c613a00d v7-3-290
++e8ee4b4ebf41abb199ea9a9e9cc38f9b0c2f7192 v7-3-291
++b6af1c5dd22f08db2b9e52ae763f193ba82965ad v7-3-292
++6cd0d6413a2e03687aca8138b2843f1f2aac5b84 v7-3-293
++dbd73fe939cf772a8b07c19230e5ee60aa0cfcc7 v7-3-294
++0d8494c051131b6470fe8af67646e235bc63fcf7 v7-3-295
++c19c15a9e9bf2914b25748c0544936e84a5c77c0 v7-3-296
++22550986c713ce5f37f069f0c8f99a54dc4a421b v7-3-297
++43b1d031e3028248abcbd5099841d3aafda7f68d v7-3-298
++eb4972982bfea006ead5b461f319744d5ecd58f5 v7-3-299
++2665b456ee59652c7b590dff0fa522ce337e0f16 v7-3-300
++4a70971530899e32058207cae683a69e7b8f85dc v7-3-301
++61b2f26623104f75850b1568bf61663597fe7fb0 v7-3-302
++d832d642f520d426f111b35102450617922547d3 v7-3-303
++b3a523ced6bd1173e4c17611559c173094830d43 v7-3-304
++0e06c025f66ffdfea20c8b73a995d23448b8dbfb v7-3-305
++0787bb5f387b79842d5c9353ae3541a992d1b9f1 v7-3-306
++880b7dd69331d1fefaf2d8735b118b39d546280c v7-3-307
++61c5e1527bd857e724f8396c89d0687126390675 v7-3-308
++6eae1b42c6684f3fcdb4d6cdbfb7dc1942d9b364 v7-3-309
++51ce22ba89d11505e18aa585fbd7dcbb22097f9a v7-3-310
++2cbde6bcc6238f41506f87bf31ff7d90f632345a v7-3-311
++0ed06069aaf32dbb2aa3827b23280b0028954ce7 v7-3-312
++dc60200a16b21c3e4157708bb825ea61b9e5bdc1 v7-3-313
++6ab1b45cc95ed56105b2130dc9938bb8344ff903 v7-3-314
++3ecf9e91d88acdb5eaaf93cc15a18914b60e0eb3 v7-3-315
++33c140e4664d102c34ec3ec5a17318f75cf475d7 v7-3-316
++92a181a1cec3fec52cde1b3d71f628a3a2dc53c6 v7-3-317
++d68f20a86a3ec75d927955be5d31983b6c37eb1d v7-3-318
++dc7f2f9759208aa07bf136deca661fd080a1ee68 v7-3-319
++738ea87c196431c452bd499c5a9849597ac938de v7-3-320
++fc0804089b2945bfe683f9bc9ee0238b8c64a46e v7-3-321
++38a7fd9043474dfb464c338ffd7f393361f5a6c1 v7-3-322
++3bdb646fc8a46ee5a5fe474dccdce098680d24d6 v7-3-323
++f04619f1fc1663f4ab05798c410e4fa35a9dd863 v7-3-324
++8aca621c00910556d4f52bd650d6841d6059d6ec v7-3-325
++d3758064ff9946d23aeccc9d2340686766647b84 v7-3-326
++9028c70adafd109ab294102f74dfb5005a20bbfb v7-3-327
++5b53cea62e5d1be2a1a36ce685c15f99bb8a41ba v7-3-328
++ec901ddc84d5c66c5d0c1dcca093584598487f9f v7-3-329
++abb03be99d661455fd3790cd25355459448fa432 v7-3-330
++4b8c614c1c914ce5d712368a75dbfea9b7e44e17 v7-3-331
++0ecfe54a273f6bc440684aca4ebe5926a2dfc6e2 v7-3-332
++992b24149a9ee0d6f417e40a7462891a9f62ec6a v7-3-333
++fdc72363229865cc6fd2da9db66f1d6e683b87c0 v7-3-334
++dc3f90a73fb375092ea9d870ae48ff31b31a56ab v7-3-335
++52526aec4afb220a1271e9a645194c42d3b2a538 v7-3-336
++176bfa951339a0a36366cbc8def41ae75f5034e0 v7-3-337
++7919a3d7333b99cece7d1a2657c89c18de78bf82 v7-3-338
++b5a2b4c0c1cac1758990ea449bc1c552522f39a9 v7-3-339
++49b08c9b9f5b72d930a1c02f00aa4128dc58532d v7-3-340
++6963603ec6dc2b47da9a7e951b2d0b3e024535eb v7-3-341
++314d9368069ec0458631ca150c202e7f724ad6d3 v7-3-342
++98a05814f1b466c87611b810eeafe8e7d9c581b6 v7-3-343
++7ba2f171cdaca18571b5e73dece426411c4f124a v7-3-344
++35f098371af699aa7e614a6397a068119b54cabf v7-3-345
++af76a61a7f79ccd3bcf64e15c73f2a3ea0eb77da v7-3-346
++72528c5eb87ea315a7c1a48f7734d1717c28820f v7-3-347
++4d4a328f199e4020457b4bf8f077622966bb3563 v7-3-348
++075acc2dccaa621998ccb1d671a987090367d485 v7-3-349
++07956eab189c0c776b79bc42235833d234480559 v7-3-350
++ff69efc4bc55d83b5f2bb68aeede1d921e8f1036 v7-3-351
++ca65249eb34bc62e82d54f74e14271be7f7f8a44 v7-3-352
++12bb368fef2c8c5478f0f8905aac381a56a75fe0 v7-3-353
++6672b1645306ceab4348caaffec40990dc319b98 v7-3-354
++d2f70593afeb432611cdb0ea2a0600c2869a20e0 v7-3-355
++c349a670716ab5e5f01b8121f3b7f07560ce0b8a v7-3-356
++e618700297e83c0d51efbb77a849ce5f0b19b507 v7-3-357
++97a52300ef2b496b6c8e2487973f134d9e0afba8 v7-3-358
++b7f0f23bf90603f83854fd1aece09fcc64876a29 v7-3-359
++28480c9006e6e6936aae05de1f3ca3eaf4d2f267 v7-3-360
++e42252611e74c1df2063955d6086f59fb3e3247d v7-3-361
++074ddc768feadcb3164973c7f7be8bf78dbdd56e v7-3-362
++c025592d7b1dd658955b9a6d2d159c04e83c31e0 v7-3-363
++b0bbaf1020f08fa6dbeb059e251127e27fab9ecc v7-3-364
++54ef99c39139cad53db24bcdc18470394d76b40f v7-3-365
++436b42f3cba1896b65ad32e791d131a7c3978738 v7-3-366
++972bd3fca5562b8752ae18313e8cb3e6fac207c5 v7-3-367
++4e9c5338f44c24d511a989b5ea50850a2b9110b6 v7-3-368
++0df9718c45b68c0aaa40934bb54b3217b0c24495 v7-3-369
++3801e4811b0ecd56667fe89172ed37a84047307d v7-3-370
++e757e1127d210632cc920d9a0d2d2a3b89be7ffe v7-3-371
++6ff80dd02b51e9bd6d3c1b0167b81e295b0b4881 v7-3-372
++a1d2f741d45c8731450db862e89eb4a650796fe9 v7-3-373
++0a9d7cf90f94945578b83883e2ade369ecfbfc6d v7-3-374
++767bb493e7d31273edc45f4cb6602784f639f516 v7-3-375
++1d7434010de186b02fd6a5c8eef3e28108a4a251 v7-3-376
++cd145cc2f2c918b9fd77dc177f69805c77e31e41 v7-3-377
++a7517e84d9b8191092ff849e520558d61be01f71 v7-3-378
++0f193ef0f4298ed632b5e9dc88c7efefe093728b v7-3-379
++534b3ef1cf1440a9e22c2efc7f2673017024f124 v7-3-380
++6cc788692b2e8e043a3d7fff4e1efa2601ad39c7 v7-3-381
++2260435283f2ba0ac8d0b35e216b297605ef81db v7-3-382
++f8d2ef4512f8d78c00a7aff24fb8f99aced6f2d6 v7-3-383
++e958eeffa0a7d0ed2021f2f4b61ed9e5daf3d9a5 v7-3-384
++910eb66c97684b3c0511789e7655dce2c7ba254a v7-3-385
++1cedbee50ca65fc96eca2d360ddf886b3e7ad74f v7-3-386
++ac16c62282ac0e961afa44b556fe850dd6c8e1aa v7-3-387
++683fab13904c115b4e1f8b9ecb902d192501245d v7-3-388
++c97c3272d7a67a2980ddc291f12f09c36568c54c v7-3-389
++48252b5fd17042ae95c6736073ba3c5b12820f2c v7-3-390
++819322e0e93e50c04fa79163f9b88085cbe7db8d v7-3-391
++c4898d6d73a2ffa55fc91f79f8e110260eda29cb v7-3-392
++e0248b732a5cf0c4e6d61253564f3f855d11a755 v7-3-393
++927c7377cf49bbbf87d12863c2a2d462c9cf97a7 v7-3-394
++80c529a5650f1d70342f18c681b69d7897495006 v7-3-395
++2f075595590f498f1a9cfc42dfce24cd0d980e96 v7-3-396
++75217982ea460e7bdfdd2517d8d4e4f0d0ebaef4 v7-3-397
++9eb7fdfb5e63ad98f6feb81b03566fbdc5ebd895 v7-3-398
++ce6afdc00290520fb2d9677b44a0cbb70bc401e6 v7-3-399
++320cc46d0eb022bfb24d1b636050becc83ac0014 v7-3-400
++1251e1ce94610b265d3c1f636d379a0504cf2ae5 v7-3-401
++4eda43e1fce06ef32d0a79721fa0a6850a72b4dc v7-3-402
++5850b58276918de8edf19ece0bd258e179967af8 v7-3-403
++8b928bc814a8d502f25a06ddfa66b0474b89a73f v7-3-404
++c75a8d2404bd4f1297aafbb10ab1ae68ba678249 v7-3-405
++fbb23bd517f8614f512cd81b253519cbf4548863 v7-3-406
++55cebc7e5de078ef323a94ad79319c0ab33b09ef v7-3-407
++1fec3c62f6e8065c2f7ea7422213e78b50032de6 v7-3-408
++7b59c2c032ca8a15425afb1b519c809abfd572f0 v7-3-409
++5cf2a671d8ebdf46590b8fe349ad2b6f84eed868 v7-3-410
++8066fb7e356481b52019a52696072594d2590d4f v7-3-411
++aaee6093302281b70798ae4dc599145b95891908 v7-3-412
++821c8be2e9d604282481f50f7c5a1a210b9b1696 v7-3-413
++c7861dd3b593a2011ae46dbe43d78f44cdf2d99f v7-3-414
++e7e4dbac7ded5e048e289c7fd92c40e29f775758 v7-3-415
++5c5ca538693fbfd3a574998693094b48f19ec12e v7-3-416
++5c5ca538693fbfd3a574998693094b48f19ec12e v7-3-416
++22a626604672b37914ae929b0d5e11e3efb0d79f v7-3-416
++63d3541d07339c65d602bac2bbc72d755b416ad8 v7-3-417
++4500a0ad2e0a24f54e5c4b4a3266456cd5ccb2eb v7-3-418
++f4574729f6df749668df181a9dc09030f37de2ad v7-3-419
++ded8f5add04c9477c47098a66991f971324787f2 v7-3-420
++076003f52582c2ec0b4851df539edf512945778c v7-3-421
++60f6df978a413952e37d03b85a50ca858456b53b v7-3-422
++b7811ab264bf31e0049e7a9b689a399ead6cbda6 v7-3-423
++2e4539dc2de7da0aed83286304d1afeb0a4cdb3d v7-3-424
++7b17a38eb223b4b56327f019267c1156121f5c0f v7-3-425
++c70c005f61fb08ca032b4eab533908cfc6e6f40a v7-3-426
++45467d77047df9134a7694367bf97344441b1b3c v7-3-427
++d473f39aeadf6d022e520968db17257b42b52b61 v7-3-428
++c9366ca36f6feb95bd8e01dbed9973a404f5391e v7-3-429
++a9f8dd20a49f9b8296a6ef6d9e17e3446c0974eb v7-3-430
++a27fac494e709a3cb78399f5dbc5d807a1dc7a46 v7-3-431
++81201fb337a58a58cbac43c2b89025c681361df7 v7-3-432
++8a731d7f0664b13176afb640ed0325949836962d v7-3-433
++636c2b1cdc8b6cc5279ac7d5986da1085484b98a v7-3-434
++afbf45d854965f9e557497ab9d4d9aca87e220fd v7-3-435
++2a6eb75275d94b864eba6d6135de650a903a4a7e v7-3-436
++539613ce999d3a938c602a6b6eb230fd0d77a1d1 v7-3-437
++bb67cd961fc3011d367357c215a0603dcc46ea40 v7-3-438
++dec4338a7da22b02e7c7cc65668d35db264d3400 v7-3-439
++e3cbb11f3555d5dbb1cbd3daac4a958a9e1f01ea v7-3-440
++af4ed13ca541f034e3241f2eda1abdb3b45d1770 v7-3-441
++198ec1fff71a44a35aa7a59b4952583a82a296fa v7-3-442
++de050fcc24cfb56a7dc07dd283cc1132d774e7b7 v7-3-443
++72146e7f47fa647f19fe419f4c8602897880eed5 v7-3-444
++397e7e49bb0b831f7260d3ad70f6b07175c44a0c v7-3-445
++20ca2e05ae20ece942490182691ed45746f64cb6 v7-3-446
++6a03b0ea2e12d748c1e4199e3f428ee080760939 v7-3-447
++756d712b3118b896b57ddb4f4c071135bc031607 v7-3-448
++9ccdc4a69d8ff7aab8abf89f9a3cc9dad12249dd v7-3-449
++3479ac596f6c4b38849d2e5235ad590378605eb8 v7-3-450
++045fdc5b6056a18579f28b40a4914f4a7cb8d4a3 v7-3-451
++f1cde9cf023e15cd1bc26ae720d6380fa5ceac7d v7-3-452
++791baa7b35e1b6244cdecd4a2feed933f78fd84f v7-3-453
++1632640a24b42a9193eeb8f6e8150afaeee5ee35 v7-3-454
++e6392f2aed4c13170664b4ec13dd2d8b3ce968aa v7-3-455
++07fd030f89be62aa11c4ea1a188ee2d8f4348677 v7-3-456
++4a2744311b3f3c8207189dee4ef405959a2e2446 v7-3-457
++da670fb71d30a1eefb07b19256f8c0d677807550 v7-3-458
++cb2ae92ce106de532c53f8a16a82bc2bf6edacd2 v7-3-459
++981c7ad9dd48cac1b4030b97c2f0dc0b8fe82337 v7-3-460
++de60f6fa3d8d77442a39ec13efef89f6ca76af03 v7-3-461
++70eff6af1158f9dc99118ba73e81f456015c3ebd v7-3-462
++8e0fe5a723adfb45c44978083db7aeac11e6d72b v7-3-463
++43259e4542c76e950fecc86114c43065064d1b34 v7-3-464
++d1096a4e96bdd5bfc0ce2f1aaddcbff1475c69ad v7-3-465
++df9c7798b5e2c022310cd12e199c9de8d866aa39 v7-3-466
++276d58e9265cfee76c04bc5450681090900a16f4 v7-3-467
++38a1357304234dcea96f96019abf0f3e5ae290ab v7-3-468
++e61c3b09ae86a8a448ad2d028df6fa6b9778666b v7-3-469
++636e4db6e2075bd22640cfc8229af62059f8ffe0 v7-3-470
++3465a9e7758850684d18a9bb11ac033efdcd1755 v7-3-471
++8332129d9ae8f11f8ecb9f016e5292c6582bbb4e v7-3-472
++7f1bce9c9b79d4ebbf798d6122612934d55d70d9 v7-3-473
++7613c9ab083f3e9262be5a21fe086921b757da4c v7-3-474
++36160830a5e8d0e3b4174aa7d98363623468b77c v7-3-475
++fb2c5a51dac7f1dbce6a0f35808927ac206c7f47 v7-3-476
++62dc0d69ab11d5b5a67c6139a0dd3e2618d2c2a1 v7-3-477
++754db405921292fc57dbdaa85e62af333dce5912 v7-3-478
++3db4282d5e6bb74a5c1094f35a81472d5a98f313 v7-3-479
++b35844f3eb49bb84101fdb276e3e69b0b8f7813f v7-3-480
++8e21ac7f2d6e9f269b057939dda58d3a31beb894 v7-3-481
++3229335d0c4e6cd7e91e6e61d791d7dff7d3082d v7-3-482
++19040069b8bf1818db44396a150acb54f47c3a96 v7-3-483
++00fa605e7d7ba7d522c627a93de6e2f5017d2884 v7-3-484
++94374e0b6267d8983a73a22166888c2282ee793d v7-3-485
++08a37c57af479b54fa327bedc0ef31c42dd96f63 v7-3-486
++21219ffc97903684349f1fcc843eb61838877874 v7-3-487
++8691bdcdbf66733c7ec1ef8161da1d4ef49dce66 v7-3-488
++c1a6e1745cb521f863e63670e6c22c1c682ab4b1 v7-3-489
++b067b8b81be9c2839df75824da2e88da24b07b54 v7-3-490
++e070b34fe35e6e8c40ec31a08196dd81353db4e5 v7-3-491
++214c7ec1c8f995664d5684da8cbeaaa86850468f v7-3-492
++bf5960ec253293b7240f59a7682f2e862dacd205 v7-3-493
++5240610f277823478983e3f04abfbed4e85141cf v7-3-494
++27f6a22ff88eea07f24163fe470b7335f3c1b32b v7-3-495
++3daba355b0c15ef66a9d2810ae7c7cc534dccf62 v7-3-496
++e34c620007be9fd805556c43fe848de521f3b64c v7-3-497
++b1a42d2522fb4ff627a0c381e994e2a598f7bbbb v7-3-498
++4a2cb025b6417b00f2ced076eb79739e03acd7d4 v7-3-499
++b36640b2f671c006fe26b573fd42347227efbfa8 v7-3-500
++d7b335626ddc7a61667cb3e23ecadfe399b676fb v7-3-501
++1d1cce57421c78884cff2d3234d3759bc858d6fb v7-3-502
++65d036fd449e488303e78d2c6679a736551c39a6 v7-3-503
++17bfcb054cb770ac685acaa349165f210bdd36ca v7-3-504
++fe7bf24804e195209bef4cd008f0bac7eec7fc60 v7-3-505
++982f84487daf102f1203977a09f2c6c76d1ed3d5 v7-3-506
++f9a865d97614940f817b76642282d966781296e5 v7-3-507
++2722f11ddc998ac7c578c68c0248b58468179418 v7-3-508
++8101253704f6504bed3f0209e9a6fcae3966c6e7 v7-3-509
++53786601213cd9f86db8714f7b0e077b05e2704f v7-3-510
++b782e2f9e6892116ae5d068249b5198bbe0042c6 v7-3-511
++454646820185cbe13e1f2e4f7533b984d3b07b18 v7-3-512
++75037f9bc97ad76bca58dbbc0ddac69cc7f5d9ac v7-3-513
++7e4428115d2cea86fcfa980097c98c11380ae196 v7-3-514
++6c318419e3310fb9658ee6ead6b4ea33def8cb6d v7-3-515
++02440d1fcc9aa953ebb7c0719405ccf2525f2777 v7-3-516
++9a1dba1f969ac4cb2477626cd79a7a6b0bea1894 v7-3-517
++ec4ab9d832b0f5308c861423d99253fa496b3a3b v7-3-518
++ebec52bc2800b8e51e522425fdca5c252e6d4f8e v7-3-519
++7bafe52b6245761a242321352daca224e6b9df78 v7-3-520
++b14842cf382bd3f99ca090c985609c6dead5f9e0 v7-3-521
++e4899d2ff5d8e552ace52b7eafe02b2c5dcdb409 v7-3-522
++d8ce4a2eb44e3e3d56db5e26d9982aeb48d7814b v7-3-523
++ae1641c4fbcc8c25d27802d6048cb0767c4021d1 v7-3-524
++ac2e00f917df566b81b9e33891b102cba5b390e0 v7-3-525
++257c2878e0fcabd5504dcfed910287374405440a v7-3-526
++a17918b76ca1296f63db0e81dea0e37b8b880150 v7-3-527
++fa17c8646feb4719639150f1c301ce6c1557afb7 v7-3-528
++d83218a156dd8258a5f2f3ae019c56f3e8851d48 v7-3-529
++81d5f3a3e27fff9188ae34c41b939fc88c9837de v7-3-530
++c44f0f7424b98d321d90994198374628911623ce v7-3-531
++9755d151c7492a5f1d0e77a2d3c9e414f20f3b4e v7-3-532
++74d51b51f3e69df7d3295255ee10391b3409055b v7-3-533
++65f905eb14cd373e205ff4c8a53027514e96d819 v7-3-534
++f52d2ea0f81c20e6f026d74cec66b135d5470d2d v7-3-535
++a8897fd5d074d7baaba692013521304b13beb784 v7-3-536
++96715c3a905faa1bbdc50b16b0f57671b4758e0c v7-3-537
++bbf1fbbe4ab45442f8876790004805503e25f563 v7-3-538
++7a710cf51d73cb3c3c76fcea34ee706443800c54 v7-3-539
++af083cb521bcb69aae315654a3873c488dc58c43 v7-3-540
++5c1aaf9b4b1bc2d14d627fe22d414f3a2525c50b v7-3-541
++8d1b63e6d3173625324f4adfe733efc8091f9422 v7-3-542
++ce7bd50bafa74f4da979f27c4e5fa9a47e69d739 v7-3-543
++09d0bda69df0c5eb505a02e37a978e92fbc89332 v7-3-544
++e7ff3251dfa157284a48c5322783499d079e3eb0 v7-3-545
++0a364618c0e59fa777f526c99bee608bb5cf55ce v7-3-546
++4f4db5d661c4fae42f2d917c09549d58a2f4d05f v7-3-547
++8625e38066dbf6a4d5e2563fbe191c3910681d2e v7-3-548
++c0c935956ac3b7c706043e5c7c0ba840636fb10f v7-3-549
++297771eff080ed3bcfb2ade57c2dcab34bac5de8 v7-3-550
++e83c5dcea112a44f9a7b06042b52798e32d96541 v7-3-551
++443c50cd3e8811b58a4ca131ab21abd18aea9489 v7-3-552
++583e46e4a56c40fa1a7336be85eaec93f6800edf v7-3-553
++a967a979c37f458bd4d164afb8a6192a5b4a6fde v7-3-554
++8fb7bd9dfb2b26b43725c90e042d2089762466a6 v7-3-555
++b8924014a03991b79947d735a894e2c2e8f94980 v7-3-556
++a220dd97b5c7218558eaea27d301af2ed4f9ec2d v7-3-557
++34724dc5172bb81a9e670c5bd23edbe6a124fd28 v7-3-558
++74adc9f7e15b8c088abd04de35615cad6c83a811 v7-3-559
++0abd38ba64557c4a6d62575aaa3fc7ab6482d747 v7-3-560
++a1de7928a7aba45240c85a2bc8d70adadc49e4dc v7-3-561
++b2763055bdf26e1f11bf8cfb0601fefbefb34e0d v7-3-562
++02c86cdcf9a23f092400c7631e5906cb9053703b v7-3-563
++683de93060968ed4e9dfb7992910c75f479471ec v7-3-564
++5f811338b1186e1aef683d03fa05a8026d30e9f1 v7-3-565
++18c6b1752d0baab043792d3f6267ec393f7a11e1 v7-3-566
++f90bb88c261582fef85c16009f19168b38debd74 v7-3-567
++3b5f541269e2d9e57b82ea1ec89c6747e2003434 v7-3-568
++c052f3b79b9948e7072580e7db42f90c92eb40af v7-3-569
++4f1c511e71f851c4f1c14e950f95ebd6967c6ed1 v7-3-570
++43fd3896fab7be5ad01deed2960d37d91ba65691 v7-3-571
++3ae387af405f46e200fdf9bc204d0a251864abb9 v7-3-572
++802b1a1b275f5c8f95724d50d53642f221621d79 v7-3-573
++3ac005f02cf015b3aa246482c6331bd61c08d91a v7-3-574
++79ae10bd056520fb6367247804af22e52d2de8b8 v7-3-575
++7e3fedfc3d08d020e3ce047ec1a1cfd195af9ed7 v7-3-576
++286ba0251c0aff1a664a481846c1f4107fae0c11 v7-3-577
++0e9b2622c94a8edf906d6c44831c1cded7184d13 v7-3-578
++80ed6aa7b9eb18058a0b105af2ecd7b213891be2 v7-3-579
++f02b6ad168ae82ead0286b64627762ab2343ee96 v7-3-580
++96249a1803e28e6173faed53f8687334aa63360c v7-3-581
++d383bc2ba8112103389a44c2c747eaa1016da935 v7-3-582
++a69b1d711ff9d8b227acff694c53310cf237933f v7-3-583
++2d107086903af80afee524549e57d3ba016b3f12 v7-3-584
++d258a0c5c38a6a604b983b6499a0f02bc061c816 v7-3-585
++8393a16069fb5f7b22ab766167b698e4dc129911 v7-3-586
++a34fb0a077c9c26946727a25222e0a99dc08db0d v7-3-587
++e92cc285632dc29d932061970e43b53cdbb3460d v7-3-588
++e82937b753a8ca6705bf55dbf258f077746ec428 v7-3-589
++bdf7f3e4c763f2a038c397af8eb6b8950e58db6b v7-3-590
++e5b925ae56e36e86eb2ff059aa28d6a2dd332845 v7-3-591
++0e06193d4bd7be03924dd9c6251a64c6c6adf78d v7-3-592
++46896c29edd74418c665af7c1ed685aa52a41e1a v7-3-593
++5e7b500dbb7e9e964457d300b536aeba9771af6c v7-3-594
++928e7cef8836d13d4f2a17234e127b928ee63ff4 v7-3-595
++5aad2c444a00a2309e6e373b6bcb5441669ba126 v7-3-596
++b9aa7fb4a9281b87a651251f799e049409634757 v7-3-597
++f0747581607924c30530687fa88ebaa57602eb5f v7-3-598
++b06578f1390fea339a2d9d18e12758ec1dbcc279 v7-3-599
++8f98038a0bf34310a8224a569eacd539b7b8b649 v7-3-600
++c1780b4cb9955fc113c3c993c18c139e06425ef5 v7-3-601
++5cacdf56c94b6fa1992f7e9c07c95bfe52bcccec v7-3-602
++085f14642fe828b1cbae5706ca87f2932cebeb75 v7-3-603
++acd91c9741a6d0185b7c63db412888de4f904118 v7-3-604
++4873d9c4ad3b7214d3ea8af9712a87ff69948380 v7-3-605
++c612d154bcdd642e4097ae88526a81ed7868c184 v7-3-606
++002f2c5de317aaedb93bd2e506a295efe2d552ce v7-3-607
++d47e6222d1cde1caf08fa63104375f5750c25d90 v7-3-608
++d29aa05b7e311bc05491521f4059ca2b625c5550 v7-3-609
++9f48a54329975434d73ddfc19e33c343653d5c73 v7-3-610
++e13f2f3568e1e21fbd223a1c0627605e2b670c53 v7-3-611
++2b4b6185054ff05fb6ee3ab1bcde47409bf2ebe0 v7-3-612
++c03b6363492b26c02b4f8a725a91849a1a5cf548 v7-3-613
++2bb51730ef4bb0824658f7507edad165e194dd45 v7-3-614
++169ccc471a8a947c046b7ff41023b9045beb3496 v7-3-615
++baba6286c91e63dd42039206e3e0990fb0ac346f v7-3-616
++73db39ca1877a07008310a2ec98a2220e50c52f1 v7-3-617
++0b1cb3f839c48daaccbb3abcbd5f1c394c57cb10 v7-3-618
++27ecf0c87bd20140d9e85d4fd581332e0916191e v7-3-619
++a6ebae140d89f35876628cde44f0e7ee5a0ae1d2 v7-3-620
++ac13ea2b098d98e62408ec2d88026f690f68f940 v7-3-621
++52247eb615118965bb6a949307e9abfd378cd088 v7-3-622
++a46a101bfddd4fcf30759f3847fa1e18546907f4 v7-3-623
++06749e351b1c030acf50cf8c469f8973aff4a96a v7-3-624
++f43ffd820a46bf47b3e55b56d3e5334302383757 v7-3-625
++956b1ed19282518e0287891d4e7b2b8a3f850402 v7-3-626
++dc65e6429d2c1b79719455d7303f3f95c5897965 v7-3-627
++1ed93878d6e224d46a7c125a82e52338b9bf0f6b v7-3-628
++7de7ef01288db1abc944293a28aac13ddd87879e v7-3-629
++3416ac23d0758528919aaffbe02cecc6420b8aac v7-3-630
++99f076ca8d846d553aefd7e626ca938bcf93f259 v7-3-631
++44038a9777aaf0e6502e0eb57b8f7ccf31798ec4 v7-3-632
++ad5fbf3596e0a8ad15c260c5b529efc5ac689e13 v7-3-633
++b7eea24095073d55ac3c59664466b78a0525bebc v7-3-634
++f7f68f83fc335379bc9e3371c5118b8f81c8d5bc v7-3-635
++616bc1ad4f12be0ef37fe67d2f6ed7535f20e515 v7-3-636
++3b62d8f36cdf709d4e0575d63486ebe57ce7150c v7-3-637
++c0256c4bd91ed7b806aab002e4a45e440dd00343 v7-3-638
++1ec385a8faf4002fa300caf370ef2ac380d9702a v7-3-639
++c2c3577021ed4e354853d330e5fc60691d8750c5 v7-3-640
++c068389057c9a89fa351678b5f5776278971dabe v7-3-641
++79ac6744237ce5076a6d2e2b21198dfddc2cc9dd v7-3-642
++fdac34e3afa5f0dea26dba5e96932e3b9a0be50a v7-3-643
++fb7c028dcac7555fee78096813e3846d157cc91b v7-3-644
++1810ee914648ef3e16a8cf866299a32c4a9a00cb v7-3-645
++e70485d3f81df4d72cb40d6fa4ad4218cf1e8392 v7-3-646
++29fe4e5c1db17a62b16a95fdda84f08cd05c27b5 v7-3-647
++76c099d45772a233982c39a29510d89eaa4d5a1c v7-3-648
++063765c3cebbd6040dc091b8c1ba28739fef9118 v7-3-649
++a638ae0f1b0cc41d8d753d79503238f11215f3ea v7-3-650
++ece544e85821a6118da55dad1538ea4c3625bd1c v7-3-651
++5edf3c51aa93110e57fcd0428c30e5bed149df34 v7-3-652
++fd0c7452fa51118d8f6557b34b4cc96e830ef6c7 v7-3-653
++73557eda70271b49015265b7147562b63a7a094d v7-3-654
++0d3238b54963c4b1358a1f33221f75e067c1613f v7-3-655
++a2f61b2b8e770bb8d233ce50c8c7508508578a8b v7-3-656
++3958b0e672d676a310d756bff1b9c629a7b0142f v7-3-657
++15cdcb8ddcfb848c929cc37e239d5da8fe48a8d9 v7-3-658
++e75da4a3225d48e59ee321411134cf9999348b7d v7-3-659
++8fdadfccd184b7de73811a3a18dc8815b7eb3434 v7-3-660
++5e909c379a1e87491bfa95ba1a37b39d0725933b v7-3-661
++87afa95a2992a31b1937def0e1db4a193b0ab32f v7-3-662
++2a200527131fac8f50487790ec201badbccdaf0e v7-3-663
++f86619764a1e0338ef9e14c653a5909847304b8b v7-3-664
++35939e1e25ff5a3862b83248f8039971c81936d0 v7-3-665
++1e22adc6176ec07f52102f383a9c3c414d43f9c2 v7-3-666
++cd36c0fed43e63a94d6e87b5c5c0b4d95628da27 v7-3-667
++dde6d0216a08a5554f3c351e519134c386d14232 v7-3-668
++2b3b7b48370848149c8b831b2b7aee9b7f4f88bb v7-3-669
++2bf8c00741f7f07d9b58596764236a92eaeca862 v7-3-670
++530f5a9030315f984e096794938c61f9d3562e22 v7-3-671
++fd6ef931aa77239804860b74ed2362b29c1a6d4a v7-3-672
++ca1c025079b11c98363e11576d903af756a593fc v7-3-673
++4da6003f0f0eee0f3908f8627af6d13a94c10cc6 v7-3-674
++9963f7a9b41b555a0660288dd94df44b6dee7c2e v7-3-675
++5309996ddcedd7e2dcc8c46624348405290b8940 v7-3-676
++8115f449a574bc146f75449161f1757aaa5bbb66 v7-3-677
++de253f606048a2862a338190b071e5e3c7de7a41 v7-3-678
++dd0f25ede9a8322b5b638961835cc4743cd479a2 v7-3-679
++52acec46b75ecf24d044982d4cc067ef7890e7d6 v7-3-680
++a2fe24ec6a0d06d0af286b9fee9e307c33f27cca v7-3-681
++8eb5b61161b4c56b378ec829e360204102d22db4 v7-3-682
++0f5ee262963528ddccfa1f54b83696f939d21b53 v7-3-683
++1cc37b8cfaa1c670e442e2f9444feeb1820228bc v7-3-684
++34aa94a421b7a03a71013ddbb92937dbaf83b1aa v7-3-685
++ba9c9d0c4ff4cf56c3c5d2dec2da71decbbe9f6a v7-3-686
++0545dab1517f8ce2b8319c02572e4bb357567034 v7-3-687
++2696da84d37093da0dea419878e4241385eb515b v7-3-688
++3c072c1cb87372f3ebd345463abbc451e80143e2 v7-3-689
++caa0ca9ad06cb515b7e6d2e4410e03802b58e167 v7-3-690
++7f10daa706bb6ed0c39f1d2905cd78368a98d19f v7-3-691
++337a4368fd2b68b9822b94e595d77b4d6773bfa4 v7-3-692
++fd96b3cc88ed71d4c4d24c6ac67c9d3a68ae6e6b v7-3-693
++8235ccf121bb241f8105d0ba6e1c92e9f8b04555 v7-3-694
++cd6c420e31d6843fa1231e1cf7a3d9eff0ad4e07 v7-3-695
++447c688b82eb4a5eb7cd0e16521094b77160fd0f v7-3-696
++7c72b5f7ada1f4a028315aa50f8739e0e83c2e74 v7-3-697
++b5b892472ecb1a10cce1709e41700b264b6485d2 v7-3-698
++4ffb6f9b58e0b51923fe6a71e6af158b6e3f7864 v7-3-699
++c656847932d33b5d68394ae1ea3153dbdba4d3ff v7-3-700
++48af8656094539f8f71dc51e0a6aa14d48ddffd0 v7-3-701
++916b5c11a13e9978c85f9742546e70d614116883 v7-3-702
++f69321485951a3c9bd0e9e7484a1901b94cae726 v7-3-703
++be8ad9c9b973a4d87b9bcfee2b6a8de1f6d3e071 v7-3-704
++0aa74f2f50a8333fd5544f5d4b383132be41704c v7-3-705
++d0ae72c2f5f94e2483ab0979eec652b1289679a8 v7-3-706
++d24d309c365fc5c6a9324a6183d7b927d9f5132f v7-3-707
++64427849c1582299f2af389c6225eead529f0329 v7-3-708
++fb7dec372910b61478abdd7f79871724153ebfdd v7-3-709
++906eb5c0ef129b6876fa9c6c5a13e44807f7a503 v7-3-710
++2a7b2943be22c27edb3c0334423c1b17275f18fb v7-3-711
++557ef119999ea687ccb84eddca295755c24989da v7-3-712
++f15769bce0b811fc840fd455035270288e8d744d v7-3-713
++9ea14f097855e0929f86c86d405725717efb044d v7-3-714
++4f0ddf4137eeb08753f2593a32b42a1dcb1e6f4c v7-3-715
++eb268db98f321b93f5e7552920b6389f9dddfd3f v7-3-716
++6a76846b84eb0fe1220f8cfa19b1161145932d4d v7-3-717
++18e95db59826aa9379e6e3ada5d3540cbae1e596 v7-3-718
++e6d8b44065bc05741effbc0635c21506032d97b4 v7-3-719
++9e119e0ade5d804f174a3b67ad5e0d0e7449739f v7-3-720
++b23f583e132e88ec98f2b449b7216642ba64a8a8 v7-3-721
++de6968039340db04ec65164a3450a40773488e00 v7-3-722
++ee138f29259e02f62fe8181073e7a063523e50b8 v7-3-723
++6e5acfdf7a5a2b3fa27a529881af77c1e1b1c0f7 v7-3-724
++f4aa43d952f5bacc752951c80495fd20c72ba90c v7-3-725
++5049eacbff0e9688af99eb67a408cae5919ff52c v7-3-726
++d3c291efdb0b9f5cd286013b789eb1c91ae868ca v7-3-727
++233666f859339f425684af70dd008354776259af v7-3-728
++d08f05285dd102d8f071ee42869416d25dd4e72d v7-3-729
++37a4cacd20511ead4cf1a8ecb235276bc448fddf v7-3-730
++778ff2e87806133faa8fcfefbd41cad2b601bdb6 v7-3-731
++fa8bf69d3866eaf31e6c8fed74862feea11a40b0 v7-3-732
++509e55bd4a3feeb651ea173cefcbd933f723d8b6 v7-3-733
++fc8b4a06af9db05af800b1304599afd3e1229980 v7-3-734
++d3158bf4dee9270477defcde85949ce58fa350e5 v7-3-735
++b1536bbbda104edb11b0f5772e433d2b5388905e v7-3-736
++1773d5aa6437b0f88029a192cdde2c510faf517d v7-3-737
++eccae034465b9a44aa2389039ba06b25dc6ae7dc v7-3-738
++e2d36f345a7f1131e085336e7b471f718fad6c9d v7-3-739
++2c12cd5c1381dd9691af5e7d3e1fe1f54c929ee1 v7-3-740
++6e1fe64cf4404d899232a880552cf52998934656 v7-3-741
++4d1753f3e85c7fb6d9cde1a8aa9ded8d11cdcd01 v7-3-742
++67e3b2753a6ef97a94084b85f87873c309fea3d6 v7-3-743
++26c8b3b49f743ca163a63463da08cc3822322bc2 v7-3-744
++aab4b29520e79134e33f2c641f1d960de2dcdc1e v7-3-745
++4934eb2e22dc0bc03fd5d4f95706a69a1ddffb94 v7-3-746
++cd59ba19985a3b3bd66dffdcf59b00427f844818 v7-3-747
++56bb88c68f985365b0545a0370be59fcd97a4178 v7-3-748
++3e22fe67fa6935d1156738a34e50bffdf62006c9 v7-3-749
++5c36fe9f19a529fb6064b37b8e47e82cdeeb7ca8 v7-3-750
++d149f18b289fdf19363214e7805a0637307bd264 v7-3-751
++ed936effb1f374004db15f092b8c8ab87631fdd4 v7-3-752
++c83cd3d01128204d6926550cbe1064daaf8dee8c v7-3-753
++beceb0a18c79b5b1bda4822b34cb2d62b2967d27 v7-3-754
++d9b4cf53be2edbb872cc489aea32a4441b39eaf9 v7-3-755
++706c87d16d40ecdf9c6fba45bc47b911d8e140cc v7-3-756
++65ef7c96d65fb2fbf660797608809f0ac5d0c4b7 v7-3-757
++9eb0d30510f7b02aa5f55f400bfab08d847ab447 v7-3-758
++25ea15fdfa5c7d5894a06814fe9411b75050ebff v7-3-759
++8e54a32bcd56226647cfd3d8c5e142e3a98c0ca7 v7-3-760
++6834d6aeae099d6bfdff5151aa2174cafc22647f v7-3-761
++699f8d8f096d4627f97e8d3bcf64b8634a484c26 v7-3-762
++b6148e4a9c397b5dd1716cdac2f96730bd0f353d v7-3-763
++b29e55d0ef01c506ec48c0c5782e669bb1d80f14 v7-3-764
++915fb3d2dd8ffc322a5cc9e294d9bb7dfa8c5a83 v7-3-765
++b5103b7d9e1284ef9ffbc7d1170d9105c0769c4d v7-3-766
++be1cffa1e477c4a96bb54a3097d3369b23f32825 v7-3-767
++9ea81cd9b1f50054629547ce2eccfac1fa00d096 v7-3-768
++d179a8eff9d7b0adc561f4a4dcfb0b7612c1f301 v7-3-769
++da7a7ba36ed2a51f28e4d3f7e1fd550303e3ece8 v7-3-770
++3bd2c055319e086665af5e449498a4d5bf40f25e v7-3-771
++d828cab6964f4249db54bff6df0fe02d0f290387 v7-3-772
++3db9aee957f7eea6729e5bfd294e3a24d41c79e4 v7-3-773
++a8f5876e498125f4916c5f7168823885c27dad8c v7-3-774
++a6e60677aea727622dde15d1306c61588b805500 v7-3-775
++80b041b994d156360992666110964e74f7473d3e v7-3-776
++9a1a4c486e6bb367c639c29c6120d5fb1fadcc38 v7-3-777
++562bbee33aa4f9896cb23ed6de8fbf60cac323e0 v7-3-778
++2067ed78d37c331685ef8f293d6a23c372ca4b78 v7-3-779
++42edc5dac33c92876d93f00f8ab8c1f6bb25d3fc v7-3-780
++29f29e86602e4a7f83d4572d2fe75b9b0de2752f v7-3-781
++0de969850c0687d2018e025f31e5cef9e9ce1444 v7-3-782
++a80af62d5e3b3614ff9e058f42647c99bffe7481 v7-3-783
++fbadf0f6987790d98c3b3fd935fea0494743830a v7-3-784
++be4baed0c933e1f1543ea175e2e36551ff6caa18 v7-3-785
++8b3e88bab70215a18768fca5a90c6f07ac1aa5eb v7-3-786
++e1b98967a985f4d1ad889c8e69b822d9126411ab v7-3-787
++386fc822dd002958fdade4329845013cbfaa3dab v7-3-788
++43c15135926fb95fa82b01424677a9c37f4d0e46 v7-3-789
++8819ea6dcb72dcf61fd0d20f8ea1904a7546917f v7-3-790
++16e8a09e8ab08d2226dc84b12b7e434bda6b4fa9 v7-3-791
++7061704c2014e4563efa032672264a47b4b7b0d9 v7-3-792
++fdbded463fdcc861630b3ea61b9654374847231a v7-3-793
++9867f92c9b9fb082ee6daca816f859b53ed8e58b v7-3-794
++17a312ba38a0b606cfd64d82ed2ebc844828085f v7-3-795
++2c12c4e2fae8db60fbdf58b34c8b73eacdc32665 v7-3-796
++0cbea05f19c73c01dbd0f04378a65ab7de6719e7 v7-3-797
++cdaa688e3dddc442c1d39780b6ac0b5ac98c253e v7-3-798
++5e9730de25e9b4fc2abe14b8d6b0968a9e59983a v7-3-799
++c0cc0e0620dd935956a472e5b23369d1d78f5fb9 v7-3-800
++48b54c590dc83b705f2e19f9aea1e9a69fe09720 v7-3-801
++cd5145d2408bb52217417af654f5664af269e19e v7-3-802
++77fa4dee43fcd1c0bacad9dc85b3deb39e0ba487 v7-3-803
++2eb4b9ed2d42312eff32e845336aab748f7fe311 v7-3-804
++dc30c01f995623e65ee6651a46b12ff062df8860 v7-3-805
++f7e3f87ac9928df0079741258a3c6034ecc48806 v7-3-806
++1efc30385c417bb413f5199253edca2795f9da0e v7-3-807
++3b2a771abb39f670269b0ee9c4041bf02c2d5b84 v7-3-808
++918d7df425afb77261428968ae646efb95b15224 v7-3-809
++8904ccd5ee85ff326a05530c02cc90e1260f768a v7-3-810
++ad21448af931b3923d9b76e4efdcf0e966c9d199 v7-3-811
++4584e59860b8db6fc5870f0b8f0425f540ea90a7 v7-3-812
++4e6e012af15028dde0f55bd9bc676bbb14e481ff v7-3-813
++d5b1d6177b374bbecfbd5c75fbce28e148eeecea v7-3-814
++448a6e7cf32e14a4adcbc4066743e2f058f7e1c0 v7-3-815
++2b340e5c5baaf66015f3367208d9bf22ce1dfc8e v7-3-816
++01fa9313d4b560997234b94b2408e6bf64808afc v7-3-817
++ad7b6062a7f4041b736d45c5f045671d60eb782f v7-3-818
++36fd800b8c6c527c75bfe285d0ed0c3bc1cf45f7 v7-3-819
++688da4d486a019afa3565ffc553af6ee1a4e67d8 v7-3-820
++4936ee89b4bcfaa33f74114bd07f20af382af14d v7-3-821
++2f7883063b19039840a4a73fa227f6f42b9e3281 v7-3-822
++db401e5e4c5d868b7848486c84521f047dc04b01 v7-3-823
++f5ef9b9c18cd9345eca783fb0c6d4ed50e215cb8 v7-3-824
++6b1f3fc893cdb6d0a4fff5997cc8ff083940e727 v7-3-825
++646cb6b6ff2372c26cb9dc9ef1a0f8d562204950 v7-3-826
++5e17a12a3b1438a7ce044db02d9916ef36e404a9 v7-3-827
++13170a796134824375a42e77af4ff012ceed2b5a v7-3-828
++7728d626ae038dedbf3347508238ef3ab4216a9e v7-3-829
++454d35a4339251adf125de78a8a98d99105533eb v7-3-830
++cb185366f5c84852a7221ed6d9b274a7239ad06d v7-3-831
++670e576a58d19c2033877d26b4338873d8a7db12 v7-3-832
++b971097606032c6fceb961fd559121d5bd74a260 v7-3-833
++3ac9d7d8274e669d10178c4d95eac55080ee0ea5 v7-3-834
++d356b5ce84ceac41b036136807ebe887208fb6f0 v7-3-835
++ff193256398a81a520b44c67d661eee36c64ee95 v7-3-836
++14698f63de8db5b034939aa66b7076ab76bcd529 v7-3-837
++1c819b05529cbbc39982513271499e0217382124 v7-3-838
++2030aca407edf6c865114f459bf2d5d79adea390 v7-3-839
++1778d51fcbc37e819c305b860f98c949915d35eb v7-3-840
++b40e6a47ee53789e91b57c04d9ee7328fa9237d5 v7-3-841
++78321dcaa8e263cdf408f7880530b7aea7401a49 v7-3-842
++f4960ddda07ce46a098d9106ac1b22fd0f6d0f0a v7-3-843
++eccc0e8a82fb632efdfa600db3f65f4ed3dff01b v7-3-844
++171234e02b1e74a2482003d56e7110d37fb4a62b v7-3-845
++b06bb07d906be3be689f90399effd2b3b2ac2ee3 v7-3-846
++4dd43d6b3df705a513be75db8a1b50a83f72088d v7-3-847
++e49b80f267dc3cde78de78026368dec3a20520f2 v7-3-848
++dc77c2a14a05810bda7e53373d76b7f41341f44d v7-3-849
++07fef68eb0188adb3d750b92b78059cf41fc8c7c v7-3-850
++dd669f296568a7525e02ab54b615bde20d37c466 v7-3-851
++3fd805ca2a6a6ef231f111c6a7b3cd512abaf537 v7-3-852
++eea32254940fb4cd61339650e10a808f4e702e62 v7-3-853
++14cdb6e4d5b88aaaf7e33eaee87efec5b1c1ebf5 v7-3-854
++6604853dd8227c7983dc1b10f804f6aa4b28578f v7-3-855
++fb533fb6c015f40a3b1301c0c876c35665b0d6ef v7-3-856
++4905e038b1057e133d0e72c48cf88580cdedf26b v7-3-857
++0a3fab86f34d6bab27e0be69db4f39ffb664557a v7-3-858
++ecf21be84def6033137d168e0a66500c29aeffec v7-3-859
++6ce32844727d8d04e8dc91310d0a4118d81aa161 v7-3-860
++6fe728bf165e9b6974ef47e86d98b0eb14ce21f3 v7-3-861
++dd4f3ceb5d86f8367d4cfd6fdc898e493c6d0aad v7-3-862
++5c0652f455c9f2ae72790a782fe5b5fd1a0e857c v7-3-863
++a82ef37d38c09523bab204253b52e177dbbc0581 v7-3-864
++94342b0605fb9111b7fd4a45a8bbc72992c4c255 v7-3-865
++90d72df431e54d677f03171cbe558434029c027e v7-3-866
++0fcb050fd79d84ed190452e6387e42d320678fec v7-3-867
++b31989e2b05832d432557a32ed8901dce237dec2 v7-3-868
++23ce9a61bdc2a35892ec4e4fa22e8964d60dc6cd v7-3-869
++26e59a39fdd965ffe83bd654b705540551c8e0c8 v7-3-870
++d52c45b35fb0c3b77bbace6cec3deda8100fbb7a v7-3-871
++edd0bc1f26bd019cfd328a0dc2c9a854607e4a41 v7-3-872
++7faeece39228fde0ac5c26a362a223d0dbe9bba5 v7-3-873
++4d0b39bcec207130e483ffa66b6f51f999d8e95b v7-3-874
++beab15a2ef147b880bf7b5add269142b9af58317 v7-3-875
++787df0fc6539ff7886e9fabc85ea403096577440 v7-3-876
++96f478b812b14fb1a5710450a1174baa55c73409 v7-3-877
++97a5ce76cb7d5f635876bbddf35b421c0c76690c v7-3-878
++79176b78969cf5d182b378ffb8e341e22f18775b v7-3-879
++9945fe0536a32496fe4842524199b5c24bb8b0d0 v7-3-880
++d8acfc49d94e485f839d8e2534d302b91a98bf9d v7-3-881
++8653c39b85ea93e052bb0cbda571e7298451eebe v7-3-882
++76aa34cef80f5d22bbbcf60278c833fdadd70131 v7-3-883
++22adc26aaa9f701267bd1ee4636592859ee2dc70 v7-3-884
++c5eab656ec51dc2d40ef6e39194c74af868a4b5e v7-3-885
++902d6ab377ee2f011279b3aaebeb05d0f5c2bf80 v7-3-886
++015e53d9978721bbb9283a999c668c98ad2554a9 v7-3-887
++b0b253898cf9ff8f5fbacf69de76b5640b1b6a55 v7-3-888
++cb0c694517a08f1f8f548f0771e874537a390dd4 v7-3-889
++89bdd6d575101291c66f9e701c456ee71085d147 v7-3-890
++1dc160bf2488fb1332250edaefcc9f1e320c8e57 v7-3-891
++6c2e8074ea2588f710adc669e7a15041f6e80adc v7-3-892
++dc3efb6d5a0821c79f939db8e3b77a714292195c v7-3-893
++52e946d654e0fe978609e0a23dde3c8998f2ce24 v7-3-894
++11007e80829ca9d72813a9c60a2eded80a0c1855 v7-3-895
++af3a3680fc75f090e896d902f0b4c7a710c41d41 v7-3-896
++5aa74a2f8f9de4a6c10bdebbef910d6750f2a980 v7-3-897
++aca1886102bdf19f755dc5eb1ac379f1f0680f6d v7-3-898
++bb3cfdb626077d9236447f40ee725b9a5d78216b v7-3-899
++b53fa3b431934de82d3bee329643bbe0856f651b v7-3-900
++790238e5a46c70f45232c0a54d0c73a6ca1d37dd v7-3-901
++b01e3cff92530f6c317e0cf2c0ba0fb4f97df883 v7-3-902
++166b3df562ead7b4f85a494fb8a6eef40affdf85 v7-3-903
++bdab73bf24a8b361a42ffcf429c0aa705d4594e0 v7-3-904
++8e1d1da398b378cf03c0910979cf475ddb2df7e3 v7-3-905
++ff1f3e42df08b2ebc39e3b1f2c80f4751bf16dbc v7-3-906
++9f3da1dea7c0944837e8d5a080eb59a24f6c9dd7 v7-3-907
++4281875776fb2c3127d08a03c3600b58353c9796 v7-3-908
++b79f3c3a584c701e93acd1881a934c931634c39f v7-3-909
++d8d9c591c50fec51b64c12bd2f42d3550bd31d7d v7-3-910
++f1eab4f77a6fe4b77508d86a68a6681195806607 v7-3-911
++62eadd7de409641de83ce61e1eb311e9116e06fa v7-3-912
++0d3573091d42d4797f10cff1c4139557d384f899 v7-3-913
++9f642ac84df9303d34d0214da2ade28f78ecfb6c v7-3-914
++d8053e6bf72a555ed34201c6edb55a23b4fc9965 v7-3-915
++f39af34195702c5587eff88dec51b40e327f418d v7-3-916
++3887b02953cec045611021e0adcd512b3d127692 v7-3-917
++6a8ffaf0585660badbb817f6a2f1cb583c9f1447 v7-3-918
++12636b8248163628e7c8df68210dc17932440157 v7-3-919
++923277a9cce4316d6b4cb3c6571dab538a6b0108 v7-3-920
++97474f967eec7f24f09d20dbac65ec9bb660bb2e v7-3-921
++1d56e5dfa08e68c9ef0645cabf076e401799e3bd v7-3-922
++6ecb80dc6521837e28bc58d27539767d6947037d v7-3-923
++7eaccdaa530431c15fb0e0803e5495074e883bb9 v7-3-924
++04736b4030ecfa2c9e8d6046ea533718dc5d8ff0 v7-3-925
++c80838526eebf3374fc42febcf40cd911cc1523c v7-3-926
++d67e292af6f9d259d0893c8062f3896a8aac000f v7-3-927
++6d45e6f974159e816a4300877296e9a0760ad113 v7-3-928
++94aa0d30a3ea6291daf7e6207810ec5282cc97a4 v7-3-929
++d85196defe0da017ff6d547e36bcf40aecba9661 v7-3-930
++fe0c7437ae8b0e05b57990549e1ddc71e456f18e v7-3-931
++b7f2d97ae2b7442c46c48ef36d9e33c3ddd34db7 v7-3-932
++c9820396afb971035e722ddce2058d5db2f0fc64 v7-3-933
++000bb500208d54e17de26bd5cc5a18fae8d1729c v7-3-934
++c42e130ebf36515e574d89efbe98fe380ec7c694 v7-3-935
++e7361b2d8136f6468daedf1bec7390d77c5c5bb1 v7-3-936
++8ec7323f417d998685afc26bbb4e466eb0204352 v7-3-937
++a2f03b41dca7024da5e702d016ae52fe7f51594c v7-3-938
++48a22f36ff45659594ca865f502fe95691b2e332 v7-3-939
++e2db42528a5bf380bc7e92e41afc807b27f01c12 v7-3-940
++da71e66dc1d4300cd792f0da77a5afd99d634c6c v7-3-941
++358c10968c7fcb2599356b419473a3fd46edcb69 v7-3-942
++736b8e18a3bced7e498a6b81e7189d78cf4671e0 v7-3-943
++71fa86c8fd4a1af0a27a880ea15e3a7b97334453 v7-3-944
++80eea7a9d6b9c2e7e8ceb18d6a090387f7e1e9f5 v7-3-945
++11376842075637114ee3714ccbc2e0e8a432a4ac v7-3-946
++a84f21892563be88839b4026bafba77f9e9a1fec v7-3-947
++a6f0544df95e5f783861d3c67d84bc5a28a315da v7-3-948
++cfd76908da252e03f46ea15cde44a3664e895fb0 v7-3-949
++d4816e7c33289b9c8aec739850133484c5c3e8fa v7-3-950
++907b1f035ee7cc61fec1463db85a9eaba4717120 v7-3-951
++2a166caf8709876053f9b32f4f88590a4fbc6899 v7-3-952
++7b789d337820088f09f6a8fb488efd418f702133 v7-3-953
++1afdb7d21c14e15a1239d406205563dd702d7d24 v7-3-954
++fa90ebf2c8f36d98ef27b2668ac1e1c11db75bbe v7-3-955
++0bbacb6a83bd678266a0a864e47f4e03927103fd v7-3-956
++c16602758d847665ed50138a562f1513ca5dedc8 v7-3-957
++58b74ab7f29df09e54bf76ac84697f04b9f4c163 v7-3-958
++ef6b11bb183da058edf52c86ce705726ccf72600 v7-3-959
++e67522c4f56646bd6ef91ad63b152bcec96b2e05 v7-3-960
++d5177d5ece0c539680390448c8ce8d05a6d61201 v7-3-961
++0a94ac379769762200c427995551fa4325ec8f28 v7-3-962
++7eafa576528e6921f337da5c1e3e2d0a9617993a v7-3-963
++7d81f4e967285d14c9e9901328d2c66911a9a2f2 v7-3-964
++8a3ca4adb5d8046f87aabcf30a2b7aefb8b9d46c v7-3-965
++9b800f0a757fcbedc2c6a1851353c3e5044d39b2 v7-3-966
++20e30e31bd86390590e288516670b81caec6188c v7-3-967
++dfbe53a54c790d63f8788c13a6a2d18198825605 v7-3-968
++137f9d41f50894cd25e5b47764af817dd84037cd v7-3-969
++ccecb03e5e8ba41db171a5535047f9a30b5d391d v7-3-970
++8d6bb2338a583af5eb85589949065cfe46c42bd4 v7-3-971
++ba53304245f033b6cf2f6088c09f45dc0d98c47c v7-3-972
++09e1e574a52d38522a35af8741b3f8ce92336398 v7-3-973
++92fec4b83be56a65ed81f25885717f6db7639854 v7-3-974
++44b89b025cdfb6a7371a036ef1b2dd93670b2a15 v7-3-975
++015a8fabf90072ae0eadee5c013f7db00f83977c v7-3-976
++21e13403140aec6f32a8f9b49dac02c37945ab11 v7-3-977
++fe8a0a6a1c2a2ca51c92275a9010999106505ed8 v7-3-978
++a63361b9097952faa9c9eba2caebef09b9f8b62b v7-3-979
++c83656c9745a005df1aa7d6985787048a1884734 v7-3-980
++4ff8fa416a0dd64046e0471933d09f7f19a4ea0f v7-3-981
++dde1cf311be6edf32243f03fd8436bdf9798de93 v7-3-982
++ab5154170c3dfc0dd769243e1da53a865e1f69d7 v7-3-983
++94c5441984cc47971ac49435d184c13cd6d3014b v7-3-984
++0c940b6f282836186f428d201760c6f6b9b52fc6 v7-3-985
++3cc2dca142a0aed29befbe6d2944ed580d728545 v7-3-986
++032c9f916f257ed59f7c55a6c8113791d3def365 v7-3-987
++035fb0d5e7ce67eaff19a6cadb37b57c0c25a36b v7-3-988
++cd005ab15ef3fce8f551c81ea10c93889f42d09d v7-3-989
++9a1d78f828261181232734378f73d648148a42bc v7-3-990
++8fe768bc1234fc817db3cda61ae9e9dabf4ae958 v7-3-991
++89ea7593fc0cb9ec66cc04619217447715289a78 v7-3-992
++dff1542e64f95a3fe10ea24f4007206d53880087 v7-3-993
++f74611bfb1b77eb2ad42b6d74b3e3657cf3f0725 v7-3-994
++6d517f6e5f0b031cdb386878d8d428f7f2cfc2a1 v7-3-995
++ebd94eabfd8013a605d8efc7df64a970531fd5a8 v7-3-996
++ef02f32d8e53a7b3d7327ac79359a18070e4a101 v7-3-997
++47e6dec5ce3cbc8e833480b8300132d4bf5f035e v7-3-998
++e6e60d9da892296ad770b26a22f98bb72c4e1b7d v7-3-999
++d037b9cbdaaa0af2b383c93acd0fd87e8eb2b8f1 v7-3-1000
++9dbbddb2ed10936c20048ad28a2dcb9fdb6cdd79 v7-3-1001
++b498224f5b417bc436c9b967978628703191c0d9 v7-3-1002
++ce94a870b59bbaad92399eb782edc33a855e0b93 v7-3-1003
++cadb57fbb78165c81fe4718a355b5f73c641bb62 v7-3-1004
++90e9917d4114461c5f7258c04e61de1dff2e1a74 v7-3-1005
++9a2183bd829502597d52f22a1c27fec8399298fd v7-3-1006
++fba9c0f86f77942d47a5505b065e01a733e7f111 v7-3-1007
++8cb14f59a3275cb183f031e2aa1e29e230635d6f v7-3-1008
++57393dc4b811a1283a77c759a09bc52ba78acb8d v7-3-1009
++36ddcf4cecbc96b9854af6956f371dea205a6890 v7-3-1010
++55bcaa1d2749f9dc22187bea848b002220cfe960 v7-3-1011
++432a6b8c7d933dee8faf25a342e857fa0a538eea v7-3-1012
++1be43c095affe8e945751a5cb4e21210f31c02ab v7-3-1013
++6a2005efa02b4ae30fa4867db1463fd4a3689843 v7-3-1014
++45f97c34953728cfe859cfe5212c241fab1da20f v7-3-1015
++5cc98a5898cf9ff0841c78acfe1056ae075a217a v7-3-1016
++532c2e850256cced37b8864ee7042ef8240f135a v7-3-1017
++80170d61a85cc03d66228c16c80cd8a4898a971e v7-3-1018
++08ac4698095359c3a888b34074548435e9775973 v7-3-1019
++f7944ce459ac77416617e0b2f8a91a9c8cb385b6 v7-3-1020
++fc997f05cbc7b566df765c79452a541afaadccb8 v7-3-1021
++849180347ac359fd52b92d70b545800126178eab v7-3-1022
++f0c37f5cf4eabb04044ccab4031cc4056c5a47a2 v7-3-1023
++7b835b2969af137f979b633977d59e13cc0960df v7-3-1024
++b2946c06d1b6d4e9d38fad1d4281e2d4db3523f3 v7-3-1025
++888c12c899e552deb33b2e1e8ea3c8141352c3ce v7-3-1026
++04086e29756318d7a7cfe3d35fd38ccf550ac366 v7-3-1027
++4d81fdda8f35cf764744161118aeaec948b9fc90 v7-3-1028
++e7016af0cbf92a5562c01e95f2cec306b6465783 v7-3-1029
++d1f3c77159f9b69f229ee0f70fd98464b2546920 v7-3-1030
++96c1a785009768720fcb16add8b9daf1290ce56d v7-3-1031
++f262fb02889d46743226a78363250e2e1ed7426b v7-3-1032
++b2a8e3a66f8cc73c3942ef5cb9c0519df86203cd v7-3-1033
++37e444aeb33b2adf359f8736807f18ff5dc11019 v7-3-1034
++626e9ccb7c48b3fa7ff6d2ca5efe91bff39135dc v7-3-1035
++b22bff1a6af81dd78f8e9ff0bcded471ab858245 v7-3-1036
++7a2be4a39423e4763ca164dc77fcfd4b27f91a8e v7-3-1037
++6a73ac422c67d7ad4642ae9194cf9d4c832021d2 v7-3-1038
++321cfbef943199e8e967f6354877ca8fc07e4551 v7-3-1039
++b9f87487d93597f69f09ecab8cdca11bef6c09d0 v7-3-1040
++63c9b681c3dba1cfcd2df48085de2453c43855af v7-3-1041
++fa39483a1363d533f9c7897d476bf0ebd1b8f44b v7-3-1042
++1e8952a5a726ddc1458ff40270cd5da16be3f272 v7-3-1043
++0cf552b325b55d417079ad28dff4e27afec5a2ca v7-3-1044
++29b2be2bba0d369fef85af7aa3196f8b84cce35c v7-3-1045
++00eecb2f8e3e9664ff00682d278a2b1e19cc4b09 v7-3-1046
++89bec74fd7936cc425b42f9e882f1f3864b1c95d v7-3-1047
++19d406a8509d9755b05af7d5ea521925b01f0d76 v7-3-1048
++074491a83571596acb6aac6d371140e8f99fbc24 v7-3-1049
++38276cfe40b2069f94b159cc14b4ade47257c836 v7-3-1050
++70600448f9e7f3bff3b8b0c2f2733662bac08ea8 v7-3-1051
++12421d8a45d5597828b8343c31faa79f77d9c512 v7-3-1052
++49f0fcd9762ce5057e4ac22417105b3ce43a35f3 v7-3-1053
++219b2fcad60d27febcaf7251a91be331484b2c98 v7-3-1054
++5679b8ddd8cc0eb004cbb61babb336c3af398c92 v7-3-1055
++21a99611149b0f1c200e001ec26b8b07c6e28c45 v7-3-1056
++90beab957ba9ebeac150bc5a56cf6ad90f53336d v7-3-1057
++66e615ce7f61948a2a4a8615d703a42d56763490 v7-3-1058
++548b889fe3cfbf06ab50de373df5e65f52cb249c v7-3-1059
++cb5c1e37ad4d4811e5fe178f14c523b178da81ec v7-3-1060
++18ba89e06fab93e8cdf7ca8dfbb34b66ff9d61d1 v7-3-1061
++e4e48d4ee0409509d56f7d654b77a35133283bc7 v7-3-1062
++4157fef7b95074cac55977127964adfa883ec030 v7-3-1063
++3857d399ab41ee8af64c5307c27da64b01e0a233 v7-3-1064
++07c534fe9b6cdbfecfd100b7e01f894d6708de1b v7-3-1065
++4c46e1487c634997f4701d8e68ba9ab019f85227 v7-3-1066
++52a4f66ae1f5695426de21877b2954d11ad8a4f4 v7-3-1067
++59e6c2bd68e38244d2133fc8d76bfc9c7b082d9f v7-3-1068
++6ec3dada4ad3c7e2551191e598cfb6d37bedac36 v7-3-1069
++c316a30a889217be4158fba900c85d9d44ad3a1b v7-3-1070
++857f6c53f1172ed836d44f105f6832973369bef5 v7-3-1071
++9f502d8d5165a79b361ad6048e84c278e1397f88 v7-3-1072
++f10f63aaec5c08e6f3b1b3abdef6ce3eef1cff6f v7-3-1073
++b943fd24c351141113dba360bd1d1f02b38813f5 v7-3-1074
++779ca415f8e142ab5ca74f95c8f732d1f00fb7dc v7-3-1075
++93b7ed814bec8a9a0b43138be7500b948d48eb92 v7-3-1076
++80b0081824fa3084d0e12f0b21f6e504b4e5e076 v7-3-1077
++0dce3d812e7acc74c39b3d87d8bb5b3a4dbee878 v7-3-1078
++bce2051173f01564805158ff669255359953fcad v7-3-1079
++7a35419393c36edcb710602edba31d5096d357d0 v7-3-1080
++9e7ef781d494694a36e056631dbd2c4357ab1090 v7-3-1081
++2d15582e132f62aa37e5eea5e837b3824f148dd2 v7-3-1082
++b3c59716e7001ab5127c259c9fd3552de0d36d53 v7-3-1083
++05d57d7c2d5578f1d794151be9cbb5aef89d821e v7-3-1084
++811a4c9b51d808cbd54dd0bab606d7cc1cc2e412 v7-3-1085
++c1622ff9ed8d984604a47ad0805d3fc528452bde v7-3-1086
++4d92b873acefb69e112fd73b642bfdf7979f1355 v7-3-1087
++2f51ee8825dbeb31713e635fd8d77ef77742ad64 v7-3-1088
++79522bb1712556183073b148e085d302967d7260 v7-3-1089
++8db697ae406a8ceb05f9fb8b45a70980904f230a v7-3-1090
++371cc0c44097772ac13e0e3cb59350c6be52257a v7-3-1091
++9d97a0c045ef5c86652c7fae4d4cd5752bcb42d6 v7-3-1092
++08fbb1ce1bc56e3884c5d35106df31a9cae1f954 v7-3-1093
++efc4fb311d5d45f6320b9d17ed47d24748335bcb v7-3-1094
++ed4e689bbea1c45a8aeb808b526dfd052470ef20 v7-3-1095
++2db0050523719e39f17f4bd855310bf5688155f5 v7-3-1096
++0c25fa1dfd97721cd4c92f4e7a9a524a24f3f43e v7-3-1097
++26f2dbea7443f719c854c7a1fc35dbacdd129307 v7-3-1098
++542af01979be709a4763eb8b9cc1cbcfaf584838 v7-3-1099
++bf917ee1fad22f643d7ef1a919b233f07fc1fb3c v7-3-1100
++761e42cc79c2560af55ebec0ec1060f547e64577 v7-3-1101
++1c5da99d1b708b7af2928e7bc0d9d57935872958 v7-3-1102
++832bf8136d86dd17489d962cd2d7316d7edf5087 v7-3-1103
++fc4d7f02ea3ac731a9717438c72aba098b117e8e v7-3-1104
++a804309e7327f0ece015aace3c855e7987f0ac3d v7-3-1105
++ec72bb4a0fc2e7f0d517cb12f784770cea9cc19c v7-3-1106
++bd6bef0bd0fbeb79b440e429f5e077169388198c v7-3-1107
++3534e9b4fa42b392399d66d08a1dcdd230accba5 v7-3-1108
++450e13fe16211217f32bc57c3827f439540398bf v7-3-1109
++3849c811cc0bccbe09a559e2be5fec7e810510cc v7-3-1110
++43de4ebbe7ad009199987337b864240ba19bfec6 v7-3-1111
++749e2b2755d59eedd6fd28e7d9ec47523b722be7 v7-3-1112
++0798b096bab3efde994f0b50d6776ac72ca0f41c v7-3-1113
++532c31f9e92fd44526d02d26c503a15c1c1c78c2 v7-3-1114
++3f2319a953b3c2fc8cbe9ae9225080a5b30a638a v7-3-1115
++66a9e8fa6f45ddd8dec5b98c193abc576330e4d4 v7-3-1116
++97560c16ca99a1341f31d88ed9f508d777647b5c v7-3-1117
++6a706ca7a889d27ecd6b671e31dbe28ab6b66f28 v7-3-1118
++a62695305e031260557ff0cde6eca1db5ab9e3e9 v7-3-1119
++d1376091d18b5a742ada87bf825d20e99ccbef19 v7-3-1120
++4b9503f0c7d3d75d772c2c0dbe19616da2480749 v7-3-1121
++7793e737ec8723a18d4c5468b33a895249ba4f02 v7-3-1122
++77ecab3bb2078fe525602172b35c2031c819ade3 v7-3-1123
++be1e4acb30cab46ab439e45b9b6871a7aff23800 v7-3-1124
++96f3348f9f119a996ae8826ef4d5a06c3f7e677f v7-3-1125
++b25a1b2e3175902e49a69e8d9ccc5c1cc43fbe3f v7-3-1126
++532a9855bd30d28cc14848ce5136658a273bc999 v7-3-1127
++47906f888725760ac704668b71057629e266e486 v7-3-1128
++f824cb97eb922975cdc1025f3c2c62f1bdbcfdd6 v7-3-1129
++ec24ff78a79c1851d8003780035d6c55f98dcceb v7-3-1130
++82e6588762e4aee5b0f0cd51d5c124ebfec6424d v7-3-1131
++b20dbf3a5370543ffaa1d6fc337df1969843477e v7-3-1132
++03375ccf28a27ed72f6cf347383aaacbd1a51e4d v7-3-1133
++531e598651fc6a7c28bc808d82c09ddc1759bf4f v7-3-1134
++e4bc21965079eb6948d8e22ad96d145659852707 v7-3-1135
++343d09006056ff408f08850317b8e8caf056f5fe v7-3-1136
++c02c7df9bdc91ae08ef626d4a8262fed47285c41 v7-3-1137
++47222d8b1e94c962f9daf6c2ff3f6c6ddcb71613 v7-3-1138
++3b5a023a45434e825b8dbeed551cf7f4578243f6 v7-3-1139
++7fde662e1db24077abbe26e6d78c286928f5c9b6 v7-3-1140
++10673b3531ebcc18467d04bb806036cbee1b8e2b v7-3-1141
++65cef998f860b3745880622cba74135bfa249ae2 v7-3-1142
++66e849c4558aca6c522026882159b41994d0c0c1 v7-3-1143
++8360a59aa04b8668e377a66d1fc46e9e52b35110 v7-3-1144
++a30e3762957d61966152040315d160f860433576 v7-3-1145
++e3f9e33fb28c367aac7b2270b6fd304fd755b6d4 v7-3-1146
++3cd3cc1e91193a0b45e6aff1373cd4802e595a16 v7-3-1147
++220bdea4f57919c290d92b1f6c83a7252cd660b6 v7-3-1148
++66803af09906a828b9f41d7ae0f7a379137eaf99 v7-3-1149
++3dbd251777de232c168d87650acda5fec408146c v7-3-1150
++4d7e3df04256790855f7a6dc289f32ffc04da133 v7-3-1151
++9909e44879b9f80679fd05af19a423b2673b2301 v7-3-1152
++bc3f4804cf470cec5773d8842743efb760f69102 v7-3-1153
++6419ee8098c80f0418081c73b790b09c61f13c3a v7-3-1154
++bf1e6326df1104cabc04b8490f9456dbda901fd2 v7-3-1155
++8c4324e6f4779ee316361511ff783f6344750be9 v7-3-1156
++2f1ee97f5f23a5f9e1c572ed4afb50fb79ce7a35 v7-3-1157
++46077370bc605815f5e41cbfc925120a913acbaa v7-3-1158
++208a6c04e6b8221c1f5187391d86c5b57e61445b v7-3-1159
++60301d4d16827a961019d72a78e811f41326c680 v7-3-1160
++ff393592644960783e9a1c7c7959a8cbb0954673 v7-3-1161
++b8eabb6a96871321bec8526fa04ba1ff1a96780e v7-3-1162
++70b1178dec7919120632cdeee6056e38108356a7 v7-3-1163
++4db0bf9f1b44d1f0d42a1863732dfaef73c9971d v7-3-1164
++05b8436873d48055cbd24f043548092755d77be7 v7-3-1165
++d59ff2114733a526847ea38d093897f496f73ffc v7-3-1166
++81dedcd648216d6b3fc6b967368fef23d8ee1154 v7-3-1167
++ed47632fd1498d50e31ab5b30aac403de3db2496 v7-3-1168
++a83fb2bd8c8ea8865f460f7d82d8ebff8202cced v7-3-1169
++14c2e63caec65cca0d315e82f90b5e1d84430487 v7-3-1170
++fc7f985df53745d157182585b01ee5dadb722a62 v7-3-1171
++96e154e825a7441274a615e7d7fdbe68e5534ee9 v7-3-1172
++b584d361e7461c79728585f16f408984b0234fdd v7-3-1173
++52850ef928f85755f005267c1f02fe9e9f898c99 v7-3-1174
++84a8d1ba81c393dcc3a45eb3b20fb6ac5f18df7b v7-3-1175
++e48cabe984537b06cfa945926844c4af96799331 v7-3-1176
++e79a20f07daa91051435208887cc31b245555046 v7-3-1177
++c4d4f0fc12b9b8665d6859680155797be960c36f v7-3-1178
++d84833983de7708de27774e3f01e7ffc8c03eec6 v7-3-1179
++04b8912a9c85e72728a2cd6a4f8e6aee82525b31 v7-3-1180
++b7bb20390111b75616eb66558aa9517901eb0144 v7-3-1181
++fa98c2b030ed5ac8d8c8139405d20ad6c611c065 v7-3-1182
++044d23a64c177549b4b5e3183642f3a5b286d14f v7-3-1183
++9e36c6b1ebf4554a24bd879965f348b81ad5ca6a v7-3-1184
++6d935f45c489b346f06aef5b1bdd87cb98b8400b v7-3-1185
++7b8991e084f9bea2dde9ceef7a245254d656b6f9 v7-3-1186
++fefd8d33a7ea43f86d6e5a2ab30440140ada14f6 v7-3-1187
++6f7ed9b799a3db282f0fc076d8232752716a4e00 v7-3-1188
++dc78a26f6f64bb1330b9027559ce0c8fe54ba1de v7-3-1189
++25d64a4edc0b0f3f17330a7b12f3c1ca141ccfb3 v7-3-1190
++4c42efb4c0982d305ec9ee99bb3bddfaeec2cf87 v7-3-1191
++07b9c48a30e973833ee70d38633934f6fc2177d8 v7-3-1192
++8b46c37c4b843039e5a543be98978e79ff6f3d31 v7-3-1193
++91136a41f83f3716e7ccb4f2402216ea215a4acf v7-3-1194
++4837fd61be52d420c69fcde0621cd5ecc298d2b6 v7-3-1195
++56fbf60e94766a202ee71749eea19a862695c92f v7-3-1196
++2fc1f3346bfb3229f35455101a5944e6785a02af v7-3-1197
++517fa1a34c7cf1c8fb04d43976ad6c381f48cebd v7-3-1198
++be2973afe77045bd749c63c46ea02f61efa55862 v7-3-1199
++2945fe016b936c9e3a89db48692495c83f1843a1 v7-3-1200
++d8f65e6238fa2bac706f1a4868e8d38ad71ded64 v7-3-1201
++1707ddb6f5aed99b69fff8a66dc3eb8ab40d7f46 v7-3-1202
++ba328b4a990ee460cc907ec59aabee8d872b7768 v7-3-1203
++0792cc5133ce1f37ad9e1d49804100b28d0a391b v7-3-1204
++d02448031708fca0df590f46f850e33acc9f9651 v7-3-1205
++8dd2769ab75c07d88feb49d1dd489a1282854217 v7-3-1206
++6ae32a64e153d7275058d965e0c1c12d106bc7de v7-3-1207
++784e342ddcaeb260ffaab5f0dd30ec5db832842e v7-3-1208
++afb00cc8caacb8969705ffae0316bb9c01156e7f v7-3-1209
++7155782d94fb88e47e252b159dd677c31a3f14e8 v7-3-1210
++1cf02fbe6281c8efe63f866470b6c44d5835125c v7-3-1211
++81e623ff2e554695c372b7b06bd826c6298bb8b5 v7-3-1212
++ae05437a744a3b6f87d6f3304a19e5256849bb1c v7-3-1213
++bcb84438bb5bf27101b25ffb2c2267ab6ff0e946 v7-3-1214
++8bbd0ff486b3cfa711e0a7f305b4a0241bd5dd52 v7-3-1215
++b89aa3374b7fe64968421f4e20cf22cd3e95713b v7-3-1216
++613651492c1905f62cbbcbfc616d7935234badab v7-3-1217
++d10ede931224a9818a98a58bd9382f77728ced1b v7-3-1218
++eb5c3508cd7da14f8d3337ca4dfabe4122ded20c v7-3-1219
++ba7db05e1482457a36b19ed608f820275fafb9f7 v7-3-1220
++9f7b92f232d31450fd04ecec3e89b027c0f28b02 v7-3-1221
++07831d280e90a87ab9f42a9c96775ef2bc0cdedf v7-3-1222
++5cd32322154c1c5970194eb5300eec2ddb8ccc30 v7-3-1223
++0a379dea13c97df4ec2ba1487dd50c1e8ba0c912 v7-3-1224
++27b008d5b7ac5fab02c6934b87f258bc4715aed6 v7-3-1225
++b34d719b13cd9dd44485600e5cd939814b9b065f v7-3-1226
++5cee875f30961cf1adadf386b7e2764ea8aeeb64 v7-3-1227
++620d9b59d4ed9deaac614c707c71257907b1dd21 v7-3-1228
++b6e693e1f9461e5020e4cafa1c6e1de24776e11b v7-3-1229
++f5c822e5a0eba6f490d0be9f6892de929295be87 v7-3-1230
++537bbfff0c5c0bc2307a85133f59f07b00c55e41 v7-3-1231
++a594ce86b5eade96cb84415b3b027abe611c2238 v7-3-1232
++4ed713442c51625160cd0bca612d9a3417e4ba14 v7-3-1233
++f4969f8f66e974584e8e7815d0a262c5dca79638 v7-3-1234
++9ae0fe46777674504e0f372e68cfb8e0be81b2ee v7-3-1235
++39980afcf54aafdb9255424adf5808af45ab2242 v7-3-1236
++5b2c8f3b390632e1e57a3839f040146f6798a969 v7-3-1237
++048c69ebe8eecb218320030d9ea41fe4f6290848 v7-3-1238
++e130cc3d17af412971143b8420d6e7b1cbd13ff2 v7-3-1239
++bc9125136c69a4feecb4b68912fa04380f42b77f v7-3-1240
++c8747604696795a300f6ff05091813d691f9a488 v7-3-1241
++b4a2eaf28b51327b4e56b4eacf4b5d72a52560f6 v7-3-1242
++8a7d3a73adabaad5e9fe079acf6431982145c7d1 v7-3-1243
++b4a71dbdb78790ca423103ad5deb71b1df9b5b04 v7-3-1244
++43329b2b5b79ed2e1017869ee2e0b1caeaf2f0f6 v7-3-1245
++a1b41dabc682ed8f8770a12c2d3a227eb348885b v7-3-1246
++f451d60ab8ec56d02a7b5f2d5c16187566279886 v7-3-1247
++3717d569027d8ec8b62e42e33f91333ac22ce6ba v7-3-1248
++b614332f7df2f6f471bb4bd93767becd7844b90c v7-3-1249
++6aecf486bb347ac6885afe36d62ddbbf2457f898 v7-3-1250
++788f4802967766b7f3d6dce83cc027baef422f4a v7-3-1251
++875a0aeb301c3fb2be8a79f2d82e324d80caf4f3 v7-3-1252
++d6a7dea44a8667d834e463b8658cf85ea938112d v7-3-1253
++5eff37e92f03771aee77a3688d79a73e5b6107e9 v7-3-1254
++f8d307ebd74a4097f7083ea8117be0433f00c7ce v7-3-1255
++322441058afca6a8aa52d34eda9fa307608354d3 v7-3-1256
++5751284311f37399cb7a66d99fe317de4ae86ea9 v7-3-1257
++c9e2ccc53f2e119e247da7fc9111b6b9c9385d93 v7-3-1258
++7ab94cb688bebd694109442be4dd6edb6ebe3c85 v7-3-1259
++7aa4e0822dec0840770d9f41052a772a887cd213 v7-3-1260
++1cf89d38aa7628b55f1a45a5325adc83abe85dc2 v7-3-1261
++5e0b6a9282df8b9435da372cad77482f1f5b20aa v7-3-1262
++a02575cd564ade1019ea89db07c1c1d0c4b5418c v7-3-1263
++558c815e1a38d7ac2fc61c4155aabf8e81a14034 v7-3-1264
++53c1b30632df47993bc00947078dd31a226c9a97 v7-3-1265
++bbe4bd64c68c64afaa6636e8c3e9a9a6241e91cb v7-3-1266
++cabdcfe72dc398fd67bbbe02cff5e11e4dc2506e v7-3-1267
++72fcf674e545eb87bb4ea996df56e4eb7c04f6cc v7-3-1268
++350239b0e9eb063d9f84dfa4bc7a2b47d78e9afb v7-3-1269
++35b6fc57a2868b235284d914820da0815e62d54b v7-3-1270
++034abed357a1a2fabe624ed59ea49ebdec09d790 v7-3-1271
++a00cd1839ac4f3467e1e51e619b4c65ce4e0ee81 v7-3-1272
++30910831e5b0f0eb28a8eea7412f5ec9f3533ab2 v7-3-1273
++761cef8f5d1d42e315fb85765ee90857981fec06 v7-3-1274
++8875401008da99a39878478a293f833f68481ffc v7-3-1275
++d2f9f67924e77ec3d90164dd6ff2e50c5107faf0 v7-3-1276
++6a7ae677d6a1f116b685fa0f892052e20003eaad v7-3-1277
++cf52d2a8c05cd037c049abef0f58fd918146f3bb v7-3-1278
++cca600e6092839efeb3795db863916959921bb0e v7-3-1279
++1cacf785299e771ca463c493c8c870e395c09cd0 v7-3-1280
++19ed30f7cef76224ef39ceadefb64387eb986342 v7-3-1281
++22ac43fb6d30ad1097d0c7e8937b28efcb162137 v7-3-1282
++d6ceddc0be86e46a5a9a696e36c54b9d133f2203 v7-3-1283
++7b20dc8041645778eeb2f7823a4c1c647f735d24 v7-3-1284
++14e7a115d54d2c095f31ccda2d04fbcf775dacde v7-3-1285
++6ddc1785c4ff3779c18f5c313da591a052388b2d v7-3-1286
++34c629c3b4bab5fc755e83869d929f8cb322bfcd v7-3-1287
++8b7baf39a345aecf00a6116b5da211b51c6e3457 v7-3-1288
++1ed945570d47e9a60694ed1ef3a5b208243657e9 v7-3-1289
++08d4c11cdaed2c5d95e2c0be3b0df91d01f52b84 v7-3-1290
++a6ddcab6a240d22f965c4961bb93ddfea6a74c73 v7-3-1291
++cad8d29b0bc0356a49a455296e5e79eb6f38139d v7-3-1292
++18b43970fb7a796ab740e65baa4ff2ba46f929a8 v7-3-1293
++11d0c6df1d7bdc399b34a8cc70f354d6ee908661 v7-3-1294
++93cccad6a26b439728bf3c155ed5532001a2f2ab v7-3-1295
++c3a82208e143e4cd4a3b9d9b1716eb9d876bf462 v7-3-1296
++cb0a5c9c0f9bcc6c5a18ed97762206309d3e334c v7-3-1297
++dafd77a15d44cced4e405a9fcfe67fc48a02004a v7-3-1298
++f063be86b6323f396e6d3a7be73e860e636eb51d v7-3-1299
++56bc3698f8c6ac275a9a05b64ae056de619d226b v7-3-1300
++6cabac58f26fe9d8b608542d9fdbfed3fc437c90 v7-3-1301
++5569d11ef585033ef40e4402cd6a52453e4d13d9 v7-3-1302
++6e611380b4cf586f210de94d92a4f158b6900a5f v7-3-1303
++46d6318d5b965b77278ea252b25209468214dd2d v7-3-1304
++6f24376028af97c93b426cdbd46379795be7cdfd v7-3-1305
++71859e71b1f902c28b8842bc7092dd155b8c7f88 v7-3-1306
++3dafc80e781b8d5ed12d6107a2c804067aeafd90 v7-3-1307
++71e066e10a4789eeb9553aa08f9ca8e7eec96532 v7-3-1308
++a686295448918b7066bc52e3fd9748e6702c2219 v7-3-1309
++b49784c49d537fabe083cc3f8cc460629bb6957f v7-3-1310
++28e6f5f889683fe161b7bc260bd02b742157fc5b v7-3-1311
++80bab8b1a30db72b7eda880b0442ab0b0f4a1611 v7-3-1312
++afbc9dd67cea81e73d64f7ecce47dfcd35d48865 v7-3-1313
++29e57603bf6f3a2e3c178a63d332ed4d2eccfa82 v7-3-1314
++6ec6b7ff2d43842d04a8d653356d0ff3850707c0 v7-4a
++0ddba00c204d855c0b3da30cb338d9bdb0ded847 v7-4a-001
++d0288faf3086e6ccd5046edc91f1baf21bf1babf v7-4a-002
++b5abda4e7c4b8b04cb823c160c47097448823ba8 v7-4a-003
++f72d49c406c48293e30d774303493e4c8d120bfb v7-4a-004
++7a6ce0c426fec6051523bb00e050b826fa664beb v7-4a-005
++6b6e1786c7dfb2d1190373dfddc3cd33e5346e18 v7-4a-006
++c624928fbc49408ab932e5c79f5f79e53327d700 v7-4a-007
++b3bd43ef012d975cafb7b2a4c41fb78486ee4cc0 v7-4a-008
++467efeee8f9e2060891bc718e6aeffaf79eab43b v7-4a-009
++a4e08386a6aa29c5e58302f1650fa2ad3f03b76b v7-4a-010
++ce587b26b8d6bec140af41712bb99c4c73c3bf99 v7-4a-011
++fca6ba0d2d66d38da8ae023e73944a69662c0d66 v7-4a-012
++42d592dbbec3706429e3f3f75c9c394db6b9c1bd v7-4a-013
++08eb573821869727e5951e6586207dfbe5fd982c v7-4a-014
++7a1b782ec64ac55052755ed72ff023093b246d96 v7-4a-015
++4104bed69ea561a105c3db590aa6c75be2a24836 v7-4a-016
++4cbff53717d4920cb64d417c7a603b45519138f1 v7-4a-017
++c6dd0c545e5ca25e0b45fc1dbd7d1cb20642830e v7-4a-018
++bea5eb942011c09a6a8805e6b21079375462a710 v7-4a-019
++fa76be660fa914de79e3856caea8261cc7ab6c5b v7-4a-020
++fc6f4a653265f9e6b3dfa82faf067329dd5044a2 v7-4a-021
++c28202427d71b4460122754884bb548f084c3d7a v7-4a-022
++45b2278e6f461689d068f138428e9f3fdb01615c v7-4a-023
++ba9a11fe25637103e1a77fefbbaed4ac2ff182f9 v7-4a-024
++1b89e3f916c59fbdfdbd31e4d8af8b22274275b2 v7-4a-025
++b3ff17862b4c9d06411bd3c854cfceb77d5b97b6 v7-4a-026
++8edba3805d787f50b51d7fd59899c5361c09a348 v7-4a-027
++7aca84c0cd37ab4eceab8897e0297e2e318b8fff v7-4a-028
++2b58913e19a5a40d169f2aa1ef9530a78c375d2e v7-4a-029
++bc4fb031746594e4e84b36e64389e78454617a86 v7-4a-030
++839ebe7c1b2fb8150714fc48ec597d2e1f1c7557 v7-4a-031
++2741b46e96bfe6c06a5e9704bcad649655f7b50f v7-4a-032
++fa024ce48542356206bf86bdc9286ecf0510ad49 v7-4a-033
++947edb6335d1e196c27e2e7e0e0a5ed8f6b78498 v7-4a-034
++4ceacc1b00548c0b21c0dc2628608515899df721 v7-4a-035
++9982ec574beb1866536f0e8a0ace3073faa3bb97 v7-4a-036
++91d478da863e0779c482c790cc96b14188f3ecaf v7-4a-037
++8f983df0299fb4f1c7359eb3b844ee93e8f7e8fb v7-4a-038
++a08fa2919f2b39be0416109d87a42fbb5880ac76 v7-4a-039
++1261caf9bc5193d304140647c08ca5b52120ce52 v7-4a-040
++74d2f3188cd0aaa0d3d7cd3df001d88b04f77f5c v7-4a-041
++1899acc5aebd40f625b9fed7bc4c1b5f67e5bc3f v7-4a-042
++6fa64615c8d38ecf464702b102538c09fe250813 v7-4a-043
++647596ab1ae2f4b36bfc20293adf4b3a43372818 v7-4a-044
++da95a7f1d5a8413ae719188cec5b706b99db4a91 v7-4a-045
++f0361e297d9ceb533a17530647b4482c3990df3c v7-4a-046
++8c6615a30951fb9f2d2b218e55626f5dfa3fa24e v7-4a-047
++09c88160095d98a0b1403e9230c76e8adbb75d59 v7-4b-000
++47a09a572ea670d0498983eaa6ded5ab4f12fd15 v7-4b-001
++2e63b6c763f7af2ef11f751d3047847652dddfe0 v7-4b-002
++ea876fe914833a69018c54d6927dbbdb42ce6ecc v7-4b-003
++3c6e2b89875f39c8417021aa369695ec1ba762df v7-4b-004
++e63e4b4be9236c2d811b5ec7bdd79e387ec8bac9 v7-4b-005
++6b7ab6a4f31a54bceb4e7d6f0f9404b5a37bdad3 v7-4b-006
++b882d4b14e00af23444fd630aae3ac32214dd097 v7-4b-007
++3059c799fcd997ea60a63ed10a2a09d73e3ed3cf v7-4b-008
++cd971e951b0626c253059d8e25859032560920a6 v7-4b-009
++585b623a1aa3baea87a1584e6064612b2183d312 v7-4b-010
++7d1f89b2710305a00e6adac35a1fa6edd47982ba v7-4b-011
++25f67b62afd8c58b6c661961cc762f00ee89e562 v7-4b-012
++1ed6fd19c36051da73f9987777002b331853f5ea v7-4b-013
++3ddec3d25bd178d4f90114bce9ce889f3889e6d2 v7-4b-014
++d96f16667cc48d89c380fae29d86286b20040d5b v7-4b-015
++ba37e955913e85700677b89a720c6e5fc8d23cc3 v7-4b-016
++8c42772f05438e9f06200bca731cf301097be8ea v7-4b-017
++7ed1ec814dafe8109a2f34302174267d31bbc924 v7-4b-018
++74a211a0d3a3135dd67329cd981f5100f5e4d064 v7-4b-019
++46cf49cc9289920704999a971f397eee1efdb3fc v7-4b-020
++059c8a4b103f6971276435127c7ad970a81b0b2c v7-4b-021
++d5d6b78cff090e87d52924179e44131b5ba7436d v7-4b-022
++359743c1f59af353454dd80a26d9f8c20ae6ee8e v7-4
++3e9107b86b68d83bfa94e43afffbf17623afe55e v7-4-001
++e29f11399ccec9215cc8cfab1f9307dea0567d70 v7-4-002
++560a6a2329503d483db019a88cacc3307e5c30b7 v7-4-003
++f6247eaf4e1d556f782321890d725663f74babe6 v7-4-004
++3640cf4c0d4b6e5687bb7a31678fab70c88ed94b v7-4-005
++2374a05efe20287d55bd824689a41becc7662505 v7-4-006
++4fe1dfc7014e57b4beb5a01c9e94357265d19a92 v7-4-007
++b04bdb2c5fce70a278d26c477debb65a388da0ca v7-4-008
++8b5d80861c5e0403ea9f54ddddce2752a463c8a5 v7-4-009
++bb358cc41d920983629ace62bcf26decbf06cab4 v7-4-010
++54e66395831c1a58b4a9804e7884e505842157e8 v7-4-011
++8e28c23e482c5b3c8296d8022271822886793456 v7-4-012
++07737d3aa81725672796cbc9a010d63414ab6fea v7-4-013
++9801d06e7b4ccdcd02cf40bee34eaaada0ca0409 v7-4-014
++a7478f9f2551e95bff138cd658f7a86ced804ab1 v7-4-015
++8d5cd0ec3e7183a289f9bac41d3981307cdc1fac v7-4-016
++c47c8cd5fe5c014c141d9fb3fa8935b268436a4e v7-4-017
++460d5be9395ef3e05f4b1397ea98a5b54d825fc5 v7-4-018
++d5eb32dc231cd870c562e7b0be96fa994b505d9f v7-4-019
++c1ae5baa41f47bbf96be81e0158707a88af48b34 v7-4-020
++c514693882b9f1c7be2e76a0307926df799da3ea v7-4-021
++965044860b7f4884657fcaa042853238c7b13e69 v7-4-022
++09361f13580b075b6e87707c47165e8d45ee98a5 v7-4-023
++00d61a47df66cad21b80c6a683164e8d19180045 v7-4-024
++9085d32d7424963013650805452ede5dad22211c v7-4-025
++6bbb2ae990c92f6858b86c047e16dd12183d4273 v7-4-026
++73cc7272de5e0173b9578f715c4794a8b3803bce v7-4-027
++923738744a60e5e0bd2d9990758a2169106807ca v7-4-028
++2d3fbc68b3a84ad2bf4d58c77244043328e3fb81 v7-4-029
++0978e99043d2a9faedb1a3bad75b59121c270bde v7-4-030
++b21b5dcdca2197fc86b9bde77bd6777f0e2d5175 v7-4-031
++71e92a1cb37db719d6406858a50ca3bdfc9881fb v7-4-032
++91f6a28e010d49ae73c13c85dbb8b14c9e5edb36 v7-4-033
++22dfcd1494e4f7ea8ddc96e8dd895482e77e3b5a v7-4-034
++5481f188dcbb7143596f2d470c7d674bf36efe64 v7-4-035
++90e2f0729a0df249931a2dbe5f4310ba6c91cab4 v7-4-036
++c3d379c2a115b957d82eaa5f2215b688f36a22da v7-4-037
++6daa78b6b99a2ec07d20336db47c9f8165098062 v7-4-038
++4dfba3df303c51fe31efd1255338e9fcbedc5401 v7-4-039
++8336fd924e057d8c797043430325379d9a3ae37b v7-4-040
++408f2a1a953feef25a2c5c96352c82674655e797 v7-4-041
++70915ede509a737ac78c421f43c4447c9682ba41 v7-4-042
++6d11572e2c8b1117b90adf588ff1467b185c1b57 v7-4-043
++c0e3990aed3f179ef006e6de1458e9818c9ab896 v7-4-044
++8ced827b2e8ba49f9ae0da2033670fee83e7b55b v7-4-045
+diff -Naur vim74.orig/runtime/autoload/clojurecomplete.vim vim74/runtime/autoload/clojurecomplete.vim
+--- vim74.orig/runtime/autoload/clojurecomplete.vim	2013-02-06 14:35:23.000000000 +0000
++++ vim74/runtime/autoload/clojurecomplete.vim	2013-10-01 16:15:43.224538786 +0000
+@@ -1,20 +1,22 @@
+ " Vim completion script
+-" Language:     Clojure
+-" Maintainer:   Sung Pae <self@sungpae.com>
+-" URL:          https://github.com/guns/vim-clojure-static
+-" License:      Same as Vim
+-" Last Change:  05 February 2013
++" Language:	Clojure
++" Maintainer:	Sung Pae <self@sungpae.com>
++" URL:		https://github.com/guns/vim-clojure-static
++" License:	Same as Vim
++" Last Change:	08 September 2013
+ 
+ " Special forms and public vars in clojure.core
+-" Generated from https://github.com/guns/vim-clojure-static/blob/vim-release-002/vim_clojure_static.clj
+-" Clojure 1.5.0-RC6
+-let s:words = ["*","*'","*1","*2","*3","*agent*","*allow-unresolved-vars*","*assert*","*clojure-version*","*command-line-args*","*compile-files*","*compile-path*","*compiler-options*","*data-readers*","*default-data-reader-fn*","*e","*err*","*file*","*flush-on-newline*","*fn-loader*","*in*","*math-context*","*ns*","*out*","*print-dup*","*print-length*","*print-level*","*print-meta*","*print-readably*","*read-eval*","*read-whitelist*","*source-path*","*unchecked-math*","*use-context-classloader*","*verbose-defrecords*","*warn-on-reflection*","+","+'","-","-'","->","->>","->ArrayChunk","->Vec","->VecNode","->VecSeq","-cache-protocol-fn","-reset-methods",".","..","/","<","<=","=","==",">",">=","EMPTY-NODE","accessor","aclone","add-classpath","add-watch","agent","agent-error","agent-errors","aget","alength","alias","all-ns","alter","alter-meta!","alter-var-root","amap","ancestors","and","apply","areduce","array-map","as->","aset","aset-boolean","aset-byte","aset-char","aset-double","aset-float","aset-int","aset-long","aset-short","assert","assoc!","assoc","assoc-in","associative?","atom","await","await-for","await1","bases","bean","bigdec","bigint","biginteger","binding","bit-and","bit-and-not","bit-clear","bit-flip","bit-not","bit-or","bit-set","bit-shift-left","bit-shift-right","bit-test","bit-xor","boolean","boolean-array","booleans","bound-fn","bound-fn*","bound?","butlast","byte","byte-array","bytes","case","cast","catch","char","char-array","char-escape-string","char-name-string","char?","chars","chunk","chunk-append","chunk-buffer","chunk-cons","chunk-first","chunk-next","chunk-rest","chunked-seq?","class","class?","clear-agent-errors","clojure-version","coll?","comment","commute","comp","comparator","compare","compare-and-set!","compile","complement","concat","cond","cond->","cond->>","condp","conj!","conj","cons","constantly","construct-proxy","contains?","count","counted?","create-ns","create-struct","cycle","dec","dec'","decimal?","declare","def","default-data-readers","definline","definterface","defmacro","defmethod","defmulti","defn","defn-","defonce","defprotocol","defrecord","defstruct","deftype","delay","delay?","deliver","denominator","deref","derive","descendants","destructure","disj!","disj","dissoc!","dissoc","distinct","distinct?","do","doall","dorun","doseq","dosync","dotimes","doto","double","double-array","doubles","drop","drop-last","drop-while","empty","empty?","ensure","enumeration-seq","error-handler","error-mode","eval","even?","every-pred","every?","ex-data","ex-info","extend","extend-protocol","extend-type","extenders","extends?","false?","ffirst","file-seq","filter","filterv","finally","find","find-keyword","find-ns","find-protocol-impl","find-protocol-method","find-var","first","flatten","float","float-array","float?","floats","flush","fn","fn","fn?","fnext","fnil","for","force","format","frequencies","future","future-call","future-cancel","future-cancelled?","future-done?","future?","gen-class","gen-interface","gensym","get","get-in","get-method","get-proxy-class","get-thread-bindings","get-validator","group-by","hash","hash-combine","hash-map","hash-set","identical?","identity","if","if-let","if-not","ifn?","import","in-ns","inc","inc'","init-proxy","instance?","int","int-array","integer?","interleave","intern","interpose","into","into-array","ints","io!","isa?","iterate","iterator-seq","juxt","keep","keep-indexed","key","keys","keyword","keyword?","last","lazy-cat","lazy-seq","let","let","letfn","line-seq","list","list*","list?","load","load-file","load-reader","load-string","loaded-libs","locking","long","long-array","longs","loop","loop","macroexpand","macroexpand-1","make-array","make-hierarchy","map","map-indexed","map?","mapcat","mapv","max","max-key","memfn","memoize","merge","merge-with","meta","method-sig","methods","min","min-key","mod","monitor-enter","monitor-exit","munge","name","namespace","namespace-munge","neg?","new","newline","next","nfirst","nil?","nnext","not","not-any?","not-empty","not-every?","not=","ns","ns-aliases","ns-imports","ns-interns","ns-map","ns-name","ns-publics","ns-refers","ns-resolve","ns-unalias","ns-unmap","nth","nthnext","nthrest","num","number?","numerator","object-array","odd?","or","parents","partial","partition","partition-all","partition-by","pcalls","peek","persistent!","pmap","pop!","pop","pop-thread-bindings","pos?","pr","pr-str","prefer-method","prefers","primitives-classnames","print","print-ctor","print-dup","print-method","print-simple","print-str","printf","println","println-str","prn","prn-str","promise","proxy","proxy-call-with-super","proxy-mappings","proxy-name","proxy-super","push-thread-bindings","pvalues","quot","quote","rand","rand-int","rand-nth","range","ratio?","rational?","rationalize","re-find","re-groups","re-matcher","re-matches","re-pattern","re-seq","read","read-line","read-string","realized?","recur","reduce","reduce-kv","reduced","reduced?","reductions","ref","ref-history-count","ref-max-history","ref-min-history","ref-set","refer","refer-clojure","reify","release-pending-sends","rem","remove","remove-all-methods","remove-method","remove-ns","remove-watch","repeat","repeatedly","replace","replicate","require","reset!","reset-meta!","resolve","rest","restart-agent","resultset-seq","reverse","reversible?","rseq","rsubseq","satisfies?","second","select-keys","send","send-off","send-via","seq","seq?","seque","sequence","sequential?","set!","set","set-agent-send-executor!","set-agent-send-off-executor!","set-error-handler!","set-error-mode!","set-validator!","set?","short","short-array","shorts","shuffle","shutdown-agents","slurp","some","some->","some->>","some-fn","sort","sort-by","sorted-map","sorted-map-by","sorted-set","sorted-set-by","sorted?","special-symbol?","spit","split-at","split-with","str","string?","struct","struct-map","subs","subseq","subvec","supers","swap!","symbol","symbol?","sync","take","take-last","take-nth","take-while","test","the-ns","thread-bound?","throw","time","to-array","to-array-2d","trampoline","transient","tree-seq","true?","try","type","unchecked-add","unchecked-add-int","unchecked-byte","unchecked-char","unchecked-dec","unchecked-dec-int","unchecked-divide-int","unchecked-double","unchecked-float","unchecked-inc","unchecked-inc-int","unchecked-int","unchecked-long","unchecked-multiply","unchecked-multiply-int","unchecked-negate","unchecked-negate-int","unchecked-remainder-int","unchecked-short","unchecked-subtract","unchecked-subtract-int","underive","unquote","unquote-splicing","update-in","update-proxy","use","val","vals","var","var-get","var-set","var?","vary-meta","vec","vector","vector-of","vector?","when","when-first","when-let","when-not","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn","xml-seq","zero?","zipmap"]
++" Generated from https://github.com/guns/vim-clojure-static/blob/vim-release-005/clj/src/vim_clojure_static/generate.clj
++" Clojure version 1.5.1
++let s:words = ["*","*'","*1","*2","*3","*agent*","*allow-unresolved-vars*","*assert*","*clojure-version*","*command-line-args*","*compile-files*","*compile-path*","*compiler-options*","*data-readers*","*default-data-reader-fn*","*e","*err*","*file*","*flush-on-newline*","*fn-loader*","*in*","*math-context*","*ns*","*out*","*print-dup*","*print-length*","*print-level*","*print-meta*","*print-readably*","*read-eval*","*source-path*","*unchecked-math*","*use-context-classloader*","*verbose-defrecords*","*warn-on-reflection*","+","+'","-","-'","->","->>","->ArrayChunk","->Vec","->VecNode","->VecSeq","-cache-protocol-fn","-reset-methods",".","..","/","<","<=","=","==",">",">=","EMPTY-NODE","accessor","aclone","add-classpath","add-watch","agent","agent-error","agent-errors","aget","alength","alias","all-ns","alter","alter-meta!","alter-var-root","amap","ancestors","and","apply","areduce","array-map","as->","aset","aset-boolean","aset-byte","aset-char","aset-double","aset-float","aset-int","aset-long","aset-short","assert","assoc!","assoc","assoc-in","associative?","atom","await","await-for","await1","bases","bean","bigdec","bigint","biginteger","binding","bit-and","bit-and-not","bit-clear","bit-flip","bit-not","bit-or","bit-set","bit-shift-left","bit-shift-right","bit-test","bit-xor","boolean","boolean-array","booleans","bound-fn","bound-fn*","bound?","butlast","byte","byte-array","bytes","case","cast","catch","char","char-array","char-escape-string","char-name-string","char?","chars","chunk","chunk-append","chunk-buffer","chunk-cons","chunk-first","chunk-next","chunk-rest","chunked-seq?","class","class?","clear-agent-errors","clojure-version","coll?","comment","commute","comp","comparator","compare","compare-and-set!","compile","complement","concat","cond","cond->","cond->>","condp","conj!","conj","cons","constantly","construct-proxy","contains?","count","counted?","create-ns","create-struct","cycle","dec","dec'","decimal?","declare","def","default-data-readers","definline","definterface","defmacro","defmethod","defmulti","defn","defn-","defonce","defprotocol","defrecord","defstruct","deftype","delay","delay?","deliver","denominator","deref","derive","descendants","destructure","disj!","disj","dissoc!","dissoc","distinct","distinct?","do","doall","dorun","doseq","dosync","dotimes","doto","double","double-array","doubles","drop","drop-last","drop-while","empty","empty?","ensure","enumeration-seq","error-handler","error-mode","eval","even?","every-pred","every?","ex-data","ex-info","extend","extend-protocol","extend-type","extenders","extends?","false?","ffirst","file-seq","filter","filterv","finally","find","find-keyword","find-ns","find-protocol-impl","find-protocol-method","find-var","first","flatten","float","float-array","float?","floats","flush","fn","fn","fn?","fnext","fnil","for","force","format","frequencies","future","future-call","future-cancel","future-cancelled?","future-done?","future?","gen-class","gen-interface","gensym","get","get-in","get-method","get-proxy-class","get-thread-bindings","get-validator","group-by","hash","hash-combine","hash-map","hash-set","identical?","identity","if","if-let","if-not","ifn?","import","in-ns","inc","inc'","init-proxy","instance?","int","int-array","integer?","interleave","intern","interpose","into","into-array","ints","io!","isa?","iterate","iterator-seq","juxt","keep","keep-indexed","key","keys","keyword","keyword?","last","lazy-cat","lazy-seq","let","let","letfn","line-seq","list","list*","list?","load","load-file","load-reader","load-string","loaded-libs","locking","long","long-array","longs","loop","loop","macroexpand","macroexpand-1","make-array","make-hierarchy","map","map-indexed","map?","mapcat","mapv","max","max-key","memfn","memoize","merge","merge-with","meta","method-sig","methods","min","min-key","mod","monitor-enter","monitor-exit","munge","name","namespace","namespace-munge","neg?","new","newline","next","nfirst","nil?","nnext","not","not-any?","not-empty","not-every?","not=","ns","ns-aliases","ns-imports","ns-interns","ns-map","ns-name","ns-publics","ns-refers","ns-resolve","ns-unalias","ns-unmap","nth","nthnext","nthrest","num","number?","numerator","object-array","odd?","or","parents","partial","partition","partition-all","partition-by","pcalls","peek","persistent!","pmap","pop!","pop","pop-thread-bindings","pos?","pr","pr-str","prefer-method","prefers","primitives-classnames","print","print-ctor","print-dup","print-method","print-simple","print-str","printf","println","println-str","prn","prn-str","promise","proxy","proxy-call-with-super","proxy-mappings","proxy-name","proxy-super","push-thread-bindings","pvalues","quot","quote","rand","rand-int","rand-nth","range","ratio?","rational?","rationalize","re-find","re-groups","re-matcher","re-matches","re-pattern","re-seq","read","read-line","read-string","realized?","recur","reduce","reduce-kv","reduced","reduced?","reductions","ref","ref-history-count","ref-max-history","ref-min-history","ref-set","refer","refer-clojure","reify","release-pending-sends","rem","remove","remove-all-methods","remove-method","remove-ns","remove-watch","repeat","repeatedly","replace","replicate","require","reset!","reset-meta!","resolve","rest","restart-agent","resultset-seq","reverse","reversible?","rseq","rsubseq","satisfies?","second","select-keys","send","send-off","send-via","seq","seq?","seque","sequence","sequential?","set!","set","set-agent-send-executor!","set-agent-send-off-executor!","set-error-handler!","set-error-mode!","set-validator!","set?","short","short-array","shorts","shuffle","shutdown-agents","slurp","some","some->","some->>","some-fn","sort","sort-by","sorted-map","sorted-map-by","sorted-set","sorted-set-by","sorted?","special-symbol?","spit","split-at","split-with","str","string?","struct","struct-map","subs","subseq","subvec","supers","swap!","symbol","symbol?","sync","take","take-last","take-nth","take-while","test","the-ns","thread-bound?","throw","time","to-array","to-array-2d","trampoline","transient","tree-seq","true?","try","type","unchecked-add","unchecked-add-int","unchecked-byte","unchecked-char","unchecked-dec","unchecked-dec-int","unchecked-divide-int","unchecked-double","unchecked-float","unchecked-inc","unchecked-inc-int","unchecked-int","unchecked-long","unchecked-multiply","unchecked-multiply-int","unchecked-negate","unchecked-negate-int","unchecked-remainder-int","unchecked-short","unchecked-subtract","unchecked-subtract-int","underive","unquote","unquote-splicing","update-in","update-proxy","use","val","vals","var","var-get","var-set","var?","vary-meta","vec","vector","vector-of","vector?","when","when-first","when-let","when-not","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn","xml-seq","zero?","zipmap"]
+ 
+ " Simple word completion omnifunc
+ function! clojurecomplete#Complete(findstart, base)
+-    if a:findstart
+-        return searchpos('\<', 'bnW', line('.'))[1] - 1
+-    else
+-        return { 'words': filter(copy(s:words), 'v:val =~ "\\V\\^' . a:base . '"') }
+-    endif
++	if a:findstart
++		return searchpos('\<', 'bnW', line('.'))[1] - 1
++	else
++		return { 'words': filter(copy(s:words), 'v:val =~ "\\V\\^' . a:base . '"') }
++	endif
+ endfunction
++
++" vim:sts=8:sw=8:ts=8:noet
+diff -Naur vim74.orig/runtime/doc/change.txt vim74/runtime/doc/change.txt
+--- vim74.orig/runtime/doc/change.txt	2013-08-10 11:24:52.000000000 +0000
++++ vim74/runtime/doc/change.txt	2013-10-01 16:15:43.276538784 +0000
+@@ -1,4 +1,4 @@
+-*change.txt*    For Vim version 7.4.  Last change: 2013 Jul 17
++*change.txt*    For Vim version 7.4.  Last change: 2013 Aug 25
+ 
+ 
+ 		  VIM REFERENCE MANUAL    by Bram Moolenaar
+@@ -1069,6 +1069,11 @@
+ replace and use "0p .  You can repeat this as many times as you like, the
+ unnamed register will be changed each time.
+ 
++When you use a blockwise Visual mode command and yank only a single line into
++a register, a paste on a visual selected area will paste that single line on
++each of the selected lines (thus replacing the blockwise selected region by a
++block of the pasted line).
++
+ 							*blockwise-register*
+ If you use a blockwise Visual mode command to get the text into the register,
+ the block of text will be inserted before ("P") or after ("p") the cursor
+@@ -1126,6 +1131,8 @@
+ made for the delete operator with these movement commands: |%|, |(|, |)|, |`|,
+ |/|, |?|, |n|, |N|, |{| and |}|.  Register "1 is always used then (this is Vi
+ compatible).  The "- register is used as well if the delete is within a line.
++Note that these characters may be mapped.  E.g. |%| is mapped by the matchit
++plugin.
+    With each successive deletion or change, Vim shifts the previous contents
+ of register 1 into register 2, 2 into 3, and so forth, losing the previous
+ contents of register 9.
+diff -Naur vim74.orig/runtime/doc/diff.txt vim74/runtime/doc/diff.txt
+--- vim74.orig/runtime/doc/diff.txt	2013-08-10 11:24:52.000000000 +0000
++++ vim74/runtime/doc/diff.txt	2013-10-01 16:15:43.280538784 +0000
+@@ -1,4 +1,4 @@
+-*diff.txt*      For Vim version 7.4.  Last change: 2013 Jul 07
++*diff.txt*      For Vim version 7.4.  Last change: 2013 Sep 20
+ 
+ 
+ 		  VIM REFERENCE MANUAL    by Bram Moolenaar
+@@ -123,10 +123,14 @@
+ file for a moment and come back to the same file and be in diff mode again.
+ 
+ 							*:diffo* *:diffoff*
+-:diffo[ff]	Switch off diff mode for the current window.
++:diffo[ff]	Switch off diff mode for the current window.  Resets related
++		options also when 'diff' was not set.
+ 
+ :diffo[ff]!	Switch off diff mode for the current window and in all windows
+-		in the current tab page where 'diff' is set.
++		in the current tab page where 'diff' is set.  Resetting
++		related options only happens in a window that has 'diff' set,
++		if the current window does not have 'diff' set then no options
++		in it are changed.
+ 
+ The ":diffoff" command resets the relevant options to the values they had when
+ using |:diffsplit|, |:diffpatch| , |:diffthis|. or starting Vim in diff mode.
+diff -Naur vim74.orig/runtime/doc/eval.txt vim74/runtime/doc/eval.txt
+--- vim74.orig/runtime/doc/eval.txt	2013-08-10 11:24:53.000000000 +0000
++++ vim74/runtime/doc/eval.txt	2013-10-01 16:15:43.288538784 +0000
+@@ -1,4 +1,4 @@
+-*eval.txt*	For Vim version 7.4.  Last change: 2013 Aug 03
++*eval.txt*	For Vim version 7.4.  Last change: 2013 Aug 24
+ 
+ 
+ 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
+@@ -123,6 +123,7 @@
+ 	:echo Fn()
+ <							*E704* *E705* *E707*
+ A Funcref variable must start with a capital, "s:", "w:", "t:" or "b:".  You
++can use "g:" but the following name must still start with a capital.  You
+ cannot have both a Funcref variable and a function with the same name.
+ 
+ A special case is defining a function and directly assigning its Funcref to a
+@@ -6337,6 +6338,7 @@
+ <   Note that it's possible for patch 147 to be omitted even though 148 is
+     included.
+ 
++acl			Compiled with |ACL| support.
+ all_builtin_terms	Compiled with all builtin terminals enabled.
+ amiga			Amiga version of Vim.
+ arabic			Compiled with Arabic support |Arabic|.
+@@ -6503,7 +6505,9 @@
+ writebackup		Compiled with 'writebackup' default on.
+ xfontset		Compiled with X fontset support |xfontset|.
+ xim			Compiled with X input method support |xim|.
+-xpm_w32			Compiled with pixmap support for Win32.
++xpm			Compiled with pixmap support.
++xpm_w32			Compiled with pixmap support for Win32. (Only for
++			backward compatibility. Use "xpm" instead.)
+ xsmp			Compiled with X session management support.
+ xsmp_interact		Compiled with interactive X session management support.
+ xterm_clipboard		Compiled with support for xterm clipboard.
+diff -Naur vim74.orig/runtime/doc/if_lua.txt vim74/runtime/doc/if_lua.txt
+--- vim74.orig/runtime/doc/if_lua.txt	2013-08-10 11:24:55.000000000 +0000
++++ vim74/runtime/doc/if_lua.txt	2013-10-01 16:15:43.300538784 +0000
+@@ -1,4 +1,4 @@
+-*if_lua.txt*    For Vim version 7.4.  Last change: 2012 Jun 29
++*if_lua.txt*    For Vim version 7.4.  Last change: 2013 Sep 04
+ 
+ 
+ 		  VIM REFERENCE MANUAL    by Luis Carvalho
+@@ -135,7 +135,7 @@
+ <
+ 	vim.funcref({name})	Returns a Funcref to function {name} (see
+ 				|Funcref|). It is equivalent to Vim's
+-				"function".
++				"function". NOT IMPLEMENTED YET
+ 
+ 	vim.buffer([arg])	If "arg" is a number, returns buffer with
+ 				number "arg" in the buffer list or, if "arg"
+diff -Naur vim74.orig/runtime/doc/indent.txt vim74/runtime/doc/indent.txt
+--- vim74.orig/runtime/doc/indent.txt	2013-08-10 11:24:56.000000000 +0000
++++ vim74/runtime/doc/indent.txt	2013-10-01 16:15:43.304538784 +0000
+@@ -581,8 +581,8 @@
+ 
+ Clojure indentation differs somewhat from traditional Lisps, due in part to
+ the use of square and curly brackets, and otherwise by community convention.
+-These conventions are not always universally followed, so the Clojure indent
+-script offers a few configurable options, listed below.
++These conventions are not universally followed, so the Clojure indent script
++offers a few configurable options, listed below.
+ 
+ If the current vim does not include searchpairpos(), the indent script falls
+ back to normal 'lisp' indenting, and the following options are ignored.
+diff -Naur vim74.orig/runtime/doc/map.txt vim74/runtime/doc/map.txt
+--- vim74.orig/runtime/doc/map.txt	2013-08-10 11:24:56.000000000 +0000
++++ vim74/runtime/doc/map.txt	2013-10-01 16:15:43.312538783 +0000
+@@ -1,4 +1,4 @@
+-*map.txt*       For Vim version 7.4.  Last change: 2013 Aug 03
++*map.txt*       For Vim version 7.4.  Last change: 2013 Aug 22
+ 
+ 
+ 		  VIM REFERENCE MANUAL    by Bram Moolenaar
+@@ -380,7 +380,7 @@
+    The simplest way to load a set of related language mappings is by using the
+ 'keymap' option.  See |45.5|.
+    In Insert mode and in Command-line mode the mappings can be disabled with
+-the CTRL-^ command |i_CTRL-^| |c_CTRL-^| These commands change the value of
++the CTRL-^ command |i_CTRL-^| |c_CTRL-^|. These commands change the value of
+ the 'iminsert' option.  When starting to enter a normal command line (not a
+ search pattern) the mappings are disabled until a CTRL-^ is typed.  The state
+ last used is remembered for Insert mode and Search patterns separately.  The
+@@ -1359,6 +1359,8 @@
+ In the cases of the -count and -register attributes, if the optional argument
+ is supplied, it is removed from the argument list and is available to the
+ replacement text separately.
++Note that these arguments can be abbreviated, but that is a deprecated
++feature.  Use the full name for new scripts.
+ 
+ Replacement text
+ 
+diff -Naur vim74.orig/runtime/doc/options.txt vim74/runtime/doc/options.txt
+--- vim74.orig/runtime/doc/options.txt	2013-08-10 11:24:57.000000000 +0000
++++ vim74/runtime/doc/options.txt	2013-10-01 16:15:43.320538783 +0000
+@@ -1,4 +1,4 @@
+-*options.txt*	For Vim version 7.4.  Last change: 2013 Jul 09
++*options.txt*	For Vim version 7.4.  Last change: 2013 Aug 22
+ 
+ 
+ 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
+@@ -1884,8 +1884,8 @@
+ 			global
+ 			{not in Vi}
+ 	A sequence of single character flags.  When a character is present
+-	this indicates vi-compatible behavior.  This is used for things where
+-	not being vi-compatible is mostly or sometimes preferred.
++	this indicates Vi-compatible behavior.  This is used for things where
++	not being Vi-compatible is mostly or sometimes preferred.
+ 	'cpoptions' stands for "compatible-options".
+ 	Commas can be added for readability.
+ 	To avoid problems with flags that are added in the future, use the
+diff -Naur vim74.orig/runtime/doc/os_vms.txt vim74/runtime/doc/os_vms.txt
+--- vim74.orig/runtime/doc/os_vms.txt	2013-08-10 11:24:59.000000000 +0000
++++ vim74/runtime/doc/os_vms.txt	2013-10-01 16:15:43.324538783 +0000
+@@ -1,4 +1,4 @@
+-*os_vms.txt*    For Vim version 7.4.  Last change: 2011 Aug 14
++*os_vms.txt*    For Vim version 7.4.  Last change: 2013 Aug 22
+ 
+ 
+ 		  VIM REFERENCE MANUAL
+@@ -24,7 +24,7 @@
+ 
+ 1. Getting started					*vms-started*
+ 
+-Vim (Vi IMproved) is a vi-compatible text editor that runs on nearly every
++Vim (Vi IMproved) is a Vi-compatible text editor that runs on nearly every
+ operating system known to humanity.  Now use Vim on OpenVMS too, in character
+ or X/Motif environment.  It is fully featured and absolutely compatible with
+ Vim on other operating systems.
+diff -Naur vim74.orig/runtime/doc/pi_vimball.txt vim74/runtime/doc/pi_vimball.txt
+--- vim74.orig/runtime/doc/pi_vimball.txt	2013-08-10 11:25:00.000000000 +0000
++++ vim74/runtime/doc/pi_vimball.txt	2013-10-01 16:15:43.332538783 +0000
+@@ -188,7 +188,7 @@
+ 			  * Changed silent! to sil! (shorter)
+ 			  * Safed |'swf'| setting (during vimball extraction,
+ 			    its now turned off)
+-	32 : May 19, 2010 * (Christian Brabrandt) :so someplugin.vba and
++	32 : May 19, 2010 * (Christian Brabandt) :so someplugin.vba and
+ 			    :so someplugin.vba.gz (and the other supported
+ 			    compression types) now works
+ 			  * (Jan Steffens) added support for xz compression
+diff -Naur vim74.orig/runtime/doc/syntax.txt vim74/runtime/doc/syntax.txt
+--- vim74.orig/runtime/doc/syntax.txt	2013-08-10 11:25:01.000000000 +0000
++++ vim74/runtime/doc/syntax.txt	2013-10-01 16:15:43.348538782 +0000
+@@ -1,4 +1,4 @@
+-*syntax.txt*	For Vim version 7.4.  Last change: 2013 Jul 05
++*syntax.txt*	For Vim version 7.4.  Last change: 2013 Aug 22
+ 
+ 
+ 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
+@@ -3156,18 +3156,16 @@
+ embedded script highlighting they wish to have. >
+ 
+    g:vimsyn_embed == 0   : don't embed any scripts
+-   g:vimsyn_embed =~ 'm' : embed mzscheme (but only if vim supports it)
+-   g:vimsyn_embed =~ 'p' : embed perl     (but only if vim supports it)
+-   g:vimsyn_embed =~ 'P' : embed python   (but only if vim supports it)
+-   g:vimsyn_embed =~ 'r' : embed ruby     (but only if vim supports it)
+-   g:vimsyn_embed =~ 't' : embed tcl      (but only if vim supports it)
+-<
+-By default, g:vimsyn_embed is "mpPr"; ie. syntax/vim.vim will support
+-highlighting mzscheme, perl, python, and ruby by default.  Vim's has("tcl")
+-test appears to hang vim when tcl is not truly available.  Thus, by default,
+-tcl is not supported for embedding (but those of you who like tcl embedded in
+-their vim syntax highlighting can simply include it in the g:vimembedscript
+-option).
++   g:vimsyn_embed =~ 'm' : support embedded mzscheme
++   g:vimsyn_embed =~ 'p' : support embedded perl
++   g:vimsyn_embed =~ 'P' : support embedded python
++   g:vimsyn_embed =~ 'r' : support embedded ruby
++   g:vimsyn_embed =~ 't' : support embedded tcl
++<
++By default, g:vimsyn_embed is a string supporting interpreters that your vim
++itself supports.  Concatenate multiple characters to support multiple types
++of embedded interpreters; ie. g:vimsyn_embed= "mp" supports embedded mzscheme
++and embedded perl.
+ 						*g:vimsyn_folding*
+ 
+ Some folding is now supported with syntax/vim.vim: >
+diff -Naur vim74.orig/runtime/doc/tags vim74/runtime/doc/tags
+--- vim74.orig/runtime/doc/tags	2013-08-10 12:23:34.000000000 +0000
++++ vim74/runtime/doc/tags	2013-10-01 16:15:43.352538782 +0000
+@@ -1140,6 +1140,7 @@
+ +GUI_Photon	various.txt	/*+GUI_Photon*
+ +GUI_neXtaw	various.txt	/*+GUI_neXtaw*
+ +X11	various.txt	/*+X11*
+++acl	various.txt	/*+acl*
+ +arabic	various.txt	/*+arabic*
+ +autocmd	various.txt	/*+autocmd*
+ +balloon_eval	various.txt	/*+balloon_eval*
+@@ -1262,6 +1263,7 @@
+ +writebackup	various.txt	/*+writebackup*
+ +xfontset	various.txt	/*+xfontset*
+ +xim	various.txt	/*+xim*
+++xpm	various.txt	/*+xpm*
+ +xpm_w32	various.txt	/*+xpm_w32*
+ +xsmp	various.txt	/*+xsmp*
+ +xsmp_interact	various.txt	/*+xsmp_interact*
+diff -Naur vim74.orig/runtime/doc/todo.txt vim74/runtime/doc/todo.txt
+--- vim74.orig/runtime/doc/todo.txt	2013-08-10 11:25:02.000000000 +0000
++++ vim74/runtime/doc/todo.txt	2013-10-01 16:15:43.364538782 +0000
+@@ -1,4 +1,4 @@
+-*todo.txt*      For Vim version 7.4.  Last change: 2013 Aug 10
++*todo.txt*      For Vim version 7.4.  Last change: 2013 Sep 22
+ 
+ 
+ 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
+@@ -34,9 +34,76 @@
+ 							*known-bugs*
+ -------------------- Known bugs and current work -----------------------
+ 
++NFA engine mismatch, with example. (ZyX, 2013 Aug 29)
++
++NFA engine difference, with test case. (Axel Bender, 2013 Sep 17)
++Comments from Vlad Irnov Sep 18.
++
++Problem positioning the cursor after auto-formatting without a comment. (Tor
++Perkins, 2013 Sep 1)
++
++Patch to fix test 92 and 93 failing in a bad way. (Hirohito Higashi, 2013 Sep
++11)
++
++Patch to fix using "p" in Visual block mode. (Christian Brabandt, 2013 Sep 19)
++
++Using \1 in pattern goes one line too far. (Bohr Shaw, 2013 Sep 5)
++Column is OK.  "/\v(^.+\n)\1/e" (John Little, Sep 5)
++Also, matches start of 2nd line, not the whole line.
++
++Error for incomplete help argument. (John Beckett, 2013 Sep 12)
++
++Popup menu: first item is not selected when typing more than one character?
++
++Patch to add async functionality. (Geoff Greer, 2013 Sep 1)
++
++Patch to avoid mouse cursor flickering. (Ken Takata,, 2013 Sep 2)
++
++Patch to make zg and zb work better. (Christian Brabandt, 2013 Sep 8)
++
++Patch to fix that VC10 does not stat() a symlink to a directory.
++(Ken Takata,, 2013 Sep 20)  Update Sep 21
++
++Should win_redr_custom() not be allowed to use recursively?
++(Yasuhiro Matsumoto, 2013 Aug 15)
++
++NFA engine combining character mismatch. (glts, 2013 Aug 27)
++Remark Dominique, Aug 27
++
++Patch to make Tcl 8.6 work. (Issue 167)
++
++Patch to make input() work while inside :normal. (Yasuhiro Matsumoto, 2013 Sep
++19)
++
++Problem using ":try" inside ":execute". (ZyX, 2013 Sep 15)
++
++Issue 164: freeze on regexp search.
++
+ Python: ":py raw_input('prompt')" doesn't work. (Manu Hack)
+ 
+-Patch to add "acl" and "xpm" as a feature. (Ken Takata, 2013 Jul 8)
++Patch to fix substitute prompt with line number. (Benoit Pierre, 2013 Aug 27,
++third message)
++
++Patch to avoid problem with colon in file name. (Yasuhiro Matsumoto, 2013 Sep
++5) Only copy file name when needed: Sep 9.
++
++Include systemverilog file?  Two votes yes.
++
++Wrapping around end of file does not work for "." after "cgn".  (Dimitar
++Dimitrov)
++Patch by Christian Brabandt, 2013 Aug 22
++
++Clang error for integer overflow. (Dominique Pelle, 2013 Sep 21)
++
++Patch to add v:hlsearch. (ZyX, 2013 Sep 22)
++
++Problem with 'spellsuggest' file, only works for some words.
++(Cesar Romani, 2013 Aug 20)  Depends on file name? (Aug 24)
++Additional remark by glts: the suggested words are marked bad?
++
++Syntax highlighting slow (hangs) in SASS file. (Niek Bosch, 2013 Aug 21)
++
++Adding "~" to 'cdpath' doesn't work for completion?  (Davido, 2013 Aug 19)
+ 
+ Patch to make has() check for Vim version and patch at the same time.
+ (Marc Weber, 2013 Jun 7)
+@@ -44,15 +111,29 @@
+ Several syntax file match "^\s*" which may get underlined if that's in the
+ highlight group.  Add a "\zs" after it?
+ 
++Win32: When a directory name contains an exclamation mark, completion doesn't
++complete the contents of the directory.  No escaping for the "!"? (Jan
++Stocker, 2012 Jan 5; 2013 Aug 20)
++Patch 2013 Sept 10, test: Sept 11.
++
+ Go through more coverity reports.
+ 
+-"gUgn" cannot be repeated, while "dgn" can.
++With "$" in 'cpoptions' the popup menu isn't fully drawn. (Matti Niemenmaa,
++2013 Sep 5)
++
++"gUgn" cannot be repeated, while "dgn" can. (Dimitar Dimitrov)
++Patch by Christian Brabandt (2013 Aug 12)
+ 
+ Several Win32 functions are not using Unicode.
+ Patches to fix this. (Ken Takata, 2013 Aug 9)
+ 
+ /[b-a] gives error E16, should probably be E769.
+ 
++:help gives example for z?, but it does not work.  m? and t? do work.
++
++Patch to add funcref to Lua.  (Luis Carvalho, 2013 Sep 4)
++With tests: Sep 5.
++
+ Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10)
+ 
+ Patch to make external commands work with multi-byte characters on Win32 when
+@@ -83,10 +164,6 @@
+ Patch by Christian Brabandt, 2013 Mar 23.
+ Not 100% sure this is the right solution.
+ 
+-Win32: When a directory name contains an exclamation mark, completion doesn't
+-complete the contents of the directory.  No escaping for the "!"? (Jan
+-Stocker, 2012 Jan 5)
+-
+ Patch to support expression argument to sort() instead of a function name.
+ Yasuhiro Matsumoto, 2013 May 31.
+ Or should we add a more general mechanism, like lambda functions?
+@@ -94,6 +171,10 @@
+ Problem caused by patch 7.3.638: window->open does not update window
+ correctly. Issue 91.
+ 
++8   'backupdir' and 'directory' should use $TMPDIR, $TMP and/or $TEMP when
++    defined.
++Issue 28.
++
+ Patch to fix that 'cedit' is recognized after :normal. (Christian Brabandt,
+ 2013 Mar 19, later message)
+ 
+@@ -108,6 +189,8 @@
+ Bug with 'cursorline' in diff mode.  Line being scrolled into view gets
+ highlighted as the cursor line.  (Alessandro Ivaldi, 2013 Jun 4)
+ 
++Two highlighting bugs. (Zyx, 2013 Aug 18)
++
+ Patch to add the bufferlist() function. (Yegappan Lakshmanan, 2013 May 5)
+ May 17: with winlist() and tabpagelist().
+ May 19: with local variables.
+@@ -119,6 +202,8 @@
+ Patch from Christian Brabandt to make the "buffer" argument for ":sign place"
+ optional. (2013 Jul 12)
+ 
++Dialog is too big on Linux too. (David Fishburn, 2013 Sep 2)
++
+ Patch to allow setting w:quickfix_title via setqflist() and setloclist()
+ functions. (Christian Brabandt, 2013 May 8, update May 21)
+ Patch to add getlocstack() / setlocstack(). (Christian Brabandt, 2013 May 14)
+@@ -126,6 +211,10 @@
+ 
+ Patch to make fold updates much faster. (Christian Brabandt, 2012 Dec)
+ 
++TCL: With MSVC 2010 doesn't find Tcl_FindExecutable. (tux)
++Patch to define it. (Ken Takata, 2013 Aug 12)  Is this right?
++Probably not: http://code.google.com/p/vim/issues/detail?id=167
++
+ MS-Windows: Patch to make tests copy files to avoid changing the fileformat of
+ the files under version control. (Taro Muraoka, 2013 Jul 5)
+ 
+@@ -167,8 +256,17 @@
+ 
+ Patch to add functions for signs. (Christian Brabandt, 2013 Jan 27)
+ 
++Do we need some way (option) to show the sign column even when there are no
++signs?  Patch by Christian Brabandt, 2013 Aug 22.
++
++Patch to remove flicker from popup menu. (Yasuhiro Matsumoto, 2013 Aug 15)
++
+ Patch to use directX to draw text on Windows.  Adds the 'renderoptions'
+ option.  (Taro Muraoka, 2013 Jan 25, update 2013 Apr 3, May 14)
++Fixes this problem:
++8   Win32: Multi-byte characters are not displayed, even though the same font
++    in Notepad can display them. (Srinath Avadhanula)  Try with the
++    UTF-8-demo.txt page with Andale Mono.
+ 
+ Patch to add 'completeselect' option.  Specifies how to select a candidate in
+ insert completion. (Shougo, 2013 May 29)
+@@ -272,6 +370,9 @@
+ 
+ Patch to list user digraphs. (Christian Brabandt, 2012 Apr 14)
+ 
++Patch to add digraph() function. (Christian Brabandt, 2013 Aug 22, update Aug
++24)
++
+ Patch for input method status. (Hirohito Higashi, 2012 Apr 18)
+ 
+ Patch to use .png icons for the toolbar on MS-Windows. (Martin Gieseking, 2013
+@@ -396,7 +497,7 @@
+ Changes to manpage plugin. (Elias Toivanen, 2011 Jul 25)
+ 
+ Patch to make "z=" work when 'spell' is off.  Does this have nasty side
+-effects?  (Christian Brabandt, 2012 Aug 5)
++effects?  (Christian Brabandt, 2012 Aug 5, Update 2013 Aug 12)
+ Would also need to do this for spellbadword() and spellsuggest().
+ 
+ Patch for variable tabstops.
+@@ -456,6 +557,9 @@
+ number, but it is in the sign column.  Doesn't look right. (ZyX 2011 Jun 5)
+ Patch by Christian Brabandt, 2011 Jun 5.  Introduces new problems.
+ 
++Add jump() function. (Marcin Szamotulski, 2013 Aug 29)
++Is this needed?  CTRL-O and CTRL-I do the same, just more difficult to use.
++
+ 8   Add a command to jump to the next character highlighted with "Error".
+ Patch by Christian Brabandt, uses ]e [e ]t and [t. 2011 Aug 9.
+ 
+@@ -573,8 +677,7 @@
+ 
+ getpos()/setpos() don't include curswant.  getpos() could return a fifth
+ element.  setpos() could accept an optional fifth element.
+-Patch by Christian Brabandt, 2010 Sep 6.  Check that new argument is optional
+-and that it's documented.
++Patch by Christian Brabandt, 2010 Sep 6.  Again 2013 Aug 22.
+ 
+ With "tw=55 fo+=a" typing space before ) doesn't work well. (Scott Mcdermott,
+ 2010 Oct 24)
+@@ -759,6 +862,7 @@
+ 
+ Patch to add farsi handling to arabic.c (Ali Gholami Rudi, 2009 May 2)
+ Added test, updates, June 23.
++Updated for 7.4: http://litcave.rudi.ir/farsi_vim.diff
+ 
+ Patch to add "focusonly" to 'scrollopt', so that scrollbind also applies in
+ window that doesn't have focus. (Jonathon Mah, 2009 Jan 12)
+@@ -918,8 +1022,6 @@
+ Add v:motion_force. (Kana Natsuno, 2008 Dec 6)
+ Maybe call it v:motiontype.
+ 
+-Runtime files for Clojure. (Toralf Wittner, 2008 Jun 25)
+-
+ MS-Windows: editing the first, empty buffer, 'ffs' set to "unix,dos", ":enew"
+ doesn't set 'ff' to "unix".  (Ben Fritz, 2008 Dec 5) Reusing the old buffer
+ probably causes this.
+@@ -1685,7 +1787,7 @@
+ -   testdir/Make_dos_sh.mak for running tests with MingW. (Bill Mccarthy, 2008
+     Sep 13)
+ -   Patch for adding "space" item in 'listchars'. (JÃ©rÃ©mie Roquet, 2009 Oct 29,
+-    Docs patch Oct 30)
++    Docs patch Oct 30, update David Burgin (glts) 2013 Aug 24)
+ -   Replace ccomplete.vim by cppcomplete.vim from www.vim.org?  script 1520 by
+     Vissale Neang.  (Martin Stubenschrott) Asked Vissale to make the scripts
+     more friendly for the Vim distribution.
+@@ -1887,9 +1989,6 @@
+ 8   Use another default for 'termencoding': the active codepage.  Means that
+     when 'encoding' is changed typing characters still works properly.
+     Alternative: use the Unicode functions to obtain typed characters.
+-8   Win32: Multi-byte characters are not displayed, even though the same font
+-    in Notepad can display them. (Srinath Avadhanula)  Try with the
+-    UTF-8-demo.txt page with Andale Mono.
+ 7   The cursor color indicating IME mode doesn't work properly. (Shizhu Pan,
+     2004 May 9)
+ 8   Win32: When clicking on the gvim title bar, which gives it focus, produces
+@@ -2272,8 +2371,6 @@
+     character. (Yasuhiro Matsumoto)  It should return 1 when used on a tail
+     byte, like for utf-8.  Store second byte of double-byte in ScreenLines2[]
+     (like for DBCS_JPNU) and put a zero in the second byte (like for UTF-8).
+-8   'backupdir' and 'directory' should use $TMPDIR, $TMP and/or $TEMP when
+-    defined.
+ 7   Inside a function with "perl <<EOF" a line with "$i++" is recognized as an
+     ":insert" command, causing the following "endfunction" not to be found.
+     Add skipping this perl construction inside function definitions.
+diff -Naur vim74.orig/runtime/doc/undo.txt vim74/runtime/doc/undo.txt
+--- vim74.orig/runtime/doc/undo.txt	2013-08-10 11:25:02.000000000 +0000
++++ vim74/runtime/doc/undo.txt	2013-10-01 16:15:43.364538782 +0000
+@@ -1,4 +1,4 @@
+-*undo.txt*      For Vim version 7.4.  Last change: 2012 Mar 04
++*undo.txt*      For Vim version 7.4.  Last change: 2013 Sep 08
+ 
+ 
+ 		  VIM REFERENCE MANUAL    by Bram Moolenaar
+@@ -57,7 +57,7 @@
+ 2. Two ways of undo					*undo-two-ways*
+ 
+ How undo and redo commands work depends on the 'u' flag in 'cpoptions'.
+-There is the Vim way ('u' excluded) and the vi-compatible way ('u' included).
++There is the Vim way ('u' excluded) and the Vi-compatible way ('u' included).
+ In the Vim way, "uu" undoes two changes.  In the Vi-compatible way, "uu" does
+ nothing (undoes an undo).
+ 
+@@ -249,8 +249,9 @@
+ detect if an undo file is no longer synchronized with the file it was written
+ for (with a hash of the file contents) and ignore it when the file was changed
+ after the undo file was written, to prevent corruption.  An undo file is also
+-ignored if its owner differs from the owner of the edited file.  Set 'verbose'
+-to get a message about that when opening a file.
++ignored if its owner differs from the owner of the edited file, except when
++the owner of the undo file is the current user.  Set 'verbose' to get a
++message about that when opening a file.
+ 
+ Undo files are normally saved in the same directory as the file.  This can be
+ changed with the 'undodir' option.
+diff -Naur vim74.orig/runtime/doc/usr_45.txt vim74/runtime/doc/usr_45.txt
+--- vim74.orig/runtime/doc/usr_45.txt	2013-08-10 11:25:06.000000000 +0000
++++ vim74/runtime/doc/usr_45.txt	2013-10-01 16:15:43.384538781 +0000
+@@ -328,8 +328,8 @@
+ *45.5*	Entering language text
+ 
+ Computer keyboards don't have much more than a hundred keys.  Some languages
+-have thousands of characters, Unicode has ten thousands.  So how do you type
+-these characters?
++have thousands of characters, Unicode has over hundred thousand.  So how do
++you type these characters?
+    First of all, when you don't use too many of the special characters, you
+ can use digraphs.  This was already explained in |24.9|.
+    When you use a language that uses many more characters than keys on your
+diff -Naur vim74.orig/runtime/doc/various.txt vim74/runtime/doc/various.txt
+--- vim74.orig/runtime/doc/various.txt	2013-08-10 11:25:06.000000000 +0000
++++ vim74/runtime/doc/various.txt	2013-10-01 16:15:43.384538781 +0000
+@@ -291,6 +291,7 @@
+ 			in the normal, big and huge versions of Vim.
+ 
+ 							*+feature-list*
++   *+acl*		|ACL| support included
+    *+ARP*		Amiga only: ARP support included
+ B  *+arabic*		|Arabic| language support
+ N  *+autocmd*		|:autocmd|, automatic commands
+@@ -426,6 +427,7 @@
+ m  *+writebackup*	|'writebackup'| is default on
+ m  *+xim*		X input method |xim|
+    *+xfontset*		X fontset support |xfontset|
++   *+xpm*		pixmap support
+ m  *+xpm_w32*		Win32 GUI only: pixmap support |w32-xpm-support|
+    *+xsmp*		XSMP (X session management) support
+    *+xsmp_interact*	interactive XSMP (X session management) support
+diff -Naur vim74.orig/runtime/doc/version5.txt vim74/runtime/doc/version5.txt
+--- vim74.orig/runtime/doc/version5.txt	2013-08-10 11:25:07.000000000 +0000
++++ vim74/runtime/doc/version5.txt	2013-10-01 16:15:43.388538781 +0000
+@@ -2020,7 +2020,7 @@
+ 
+ The Win32, Athena and Motif GUI bring up a file requester if the user asks to
+ ":browse" for the ":e", ":w", ":r", ":so", ":redirect" and
+-":mkexrc/vimrc/vsess" commands.  ::browse e /foo/bar" opens the requester in
++":mkexrc/vimrc/vsess" commands.  ":browse e /foo/bar" opens the requester in
+ the /foo/bar directory, so you can have nice mapping rhs's like ":browse so
+ $vim/macros".  If no initial dir specified for ":browse e", can be compiled to
+ either begin in the current directory, or that of the current buffer. (Negri
+diff -Naur vim74.orig/runtime/doc/version7.txt vim74/runtime/doc/version7.txt
+--- vim74.orig/runtime/doc/version7.txt	2013-08-10 12:23:06.000000000 +0000
++++ vim74/runtime/doc/version7.txt	2013-10-01 16:15:43.400538781 +0000
+@@ -1,4 +1,4 @@
+-*version7.txt*  For Vim version 7.4.  Last change: 2013 Aug 10
++*version7.txt*  For Vim version 7.4.  Last change: 2013 Sep 03
+ 
+ 
+ 		  VIM REFERENCE MANUAL    by Bram Moolenaar
+@@ -2395,7 +2395,7 @@
+ actually are bold.  Speeds up displaying considerably.
+ 
+ When only highlighting changes and the text is scrolled at the same time
+-everything is redraw instead of using a scroll and updating the changed text.
++everything is redrawn instead of using a scroll and updating the changed text.
+ E.g., when using ":match" to highlight a paren that the cursor landed on.
+ Added SOME_VALID: Redraw the whole window but also try to scroll to minimize
+ redrawing.
+@@ -10293,7 +10293,7 @@
+ 	Added special |expand()| argument that expands to the current line 
+ 	number.
+ 
+-	Made it possible to force |char2nr()| always give unicode codepoints 
++	Made it possible to force |char2nr()| to always give unicode codepoints 
+ 	regardless of current encoding. (Yasuhiro Matsumoto)
+ 
+ 	Made it possible for functions generating file list generate |List| 
+diff -Naur vim74.orig/runtime/doc/vi_diff.txt vim74/runtime/doc/vi_diff.txt
+--- vim74.orig/runtime/doc/vi_diff.txt	2013-08-10 11:25:07.000000000 +0000
++++ vim74/runtime/doc/vi_diff.txt	2013-10-01 16:15:43.400538781 +0000
+@@ -1,4 +1,4 @@
+-*vi_diff.txt*   For Vim version 7.4.  Last change: 2012 Aug 08
++*vi_diff.txt*   For Vim version 7.4.  Last change: 2013 Aug 22
+ 
+ 
+ 		  VIM REFERENCE MANUAL    by Bram Moolenaar
+@@ -150,7 +150,7 @@
+ Multi level undo.					|undo|
+ 	'u' goes backward in time, 'CTRL-R' goes forward again.  Set option
+ 	'undolevels' to the number of changes to be remembered (default 1000).
+-	Set 'undolevels' to 0 for a vi-compatible one level undo.  Set it to
++	Set 'undolevels' to 0 for a Vi-compatible one level undo.  Set it to
+ 	-1 for no undo at all.
+ 	When all changes in a buffer have been undone, the buffer is not
+ 	considered changed anymore.  You can exit it with :q, without <!>.
+diff -Naur vim74.orig/runtime/filetype.vim vim74/runtime/filetype.vim
+--- vim74.orig/runtime/filetype.vim	2013-08-03 15:50:05.000000000 +0000
++++ vim74/runtime/filetype.vim	2013-10-01 16:15:43.424538780 +0000
+@@ -1,7 +1,7 @@
+ " Vim support file to detect file types
+ "
+ " Maintainer:	Bram Moolenaar <Bram@vim.org>
+-" Last Change:	2013 Aug 03
++" Last Change:	2013 Sep 22
+ 
+ " Listen very carefully, I will say this only once
+ if exists("did_load_filetypes")
+@@ -129,7 +129,7 @@
+ au BufNewFile,BufRead *.aml			setf aml
+ 
+ " APT config file
+-au BufNewFile,BufRead apt.conf                 setf aptconf
++au BufNewFile,BufRead apt.conf		       setf aptconf
+ au BufNewFile,BufRead */.aptitude/config       setf aptconf
+ au BufNewFile,BufRead */etc/apt/apt.conf.d/{[-_[:alnum:]]\+,[-_.[:alnum:]]\+.conf} setf aptconf
+ 
+@@ -952,6 +952,9 @@
+ " Inno Setup
+ au BufNewFile,BufRead *.iss			setf iss
+ 
++" J
++au BufNewFile,BufRead *.ijs			setf j
++
+ " JAL
+ au BufNewFile,BufRead *.jal,*.JAL		setf jal
+ 
+@@ -2092,7 +2095,7 @@
+ 
+ " Task
+ au BufRead,BufNewFile {pending,completed,undo}.data  setf taskdata
+-au BufRead,BufNewFile *.task                    setf taskedit
++au BufRead,BufNewFile *.task			setf taskedit
+ 
+ " Tcl (JACL too)
+ au BufNewFile,BufRead *.tcl,*.tk,*.itcl,*.itk,*.jacl	setf tcl
+@@ -2217,12 +2220,12 @@
+ au BufNewFile,BufRead */etc/updatedb.conf	setf updatedb
+ 
+ " Upstart (init(8)) config files
+-au BufNewFile,BufRead */usr/share/upstart/*.conf               setf upstart
+-au BufNewFile,BufRead */usr/share/upstart/*.override           setf upstart
++au BufNewFile,BufRead */usr/share/upstart/*.conf	       setf upstart
++au BufNewFile,BufRead */usr/share/upstart/*.override	       setf upstart
+ au BufNewFile,BufRead */etc/init/*.conf,*/etc/init/*.override  setf upstart
+ au BufNewFile,BufRead */.init/*.conf,*/.init/*.override        setf upstart
+-au BufNewFile,BufRead */.config/upstart/*.conf                 setf upstart
+-au BufNewFile,BufRead */.config/upstart/*.override             setf upstart
++au BufNewFile,BufRead */.config/upstart/*.conf		       setf upstart
++au BufNewFile,BufRead */.config/upstart/*.override	       setf upstart
+ 
+ " Vera
+ au BufNewFile,BufRead *.vr,*.vri,*.vrh		setf vera
+diff -Naur vim74.orig/runtime/ftplugin/clojure.vim vim74/runtime/ftplugin/clojure.vim
+--- vim74.orig/runtime/ftplugin/clojure.vim	2013-02-06 14:35:23.000000000 +0000
++++ vim74/runtime/ftplugin/clojure.vim	2013-10-01 16:15:43.432538780 +0000
+@@ -1,22 +1,23 @@
+ " Vim filetype plugin file
+-" Language:     Clojure
+-" Author:       Meikel Brandmeyer <mb@kotka.de>
++" Language:	Clojure
++" Author:	Meikel Brandmeyer <mb@kotka.de>
+ "
+-" Maintainer:   Sung Pae <self@sungpae.com>
+-" URL:          https://github.com/guns/vim-clojure-static
+-" License:      Same as Vim
+-" Last Change:  30 January 2013
++" Maintainer:	Sung Pae <self@sungpae.com>
++" URL:		https://github.com/guns/vim-clojure-static
++" License:	Same as Vim
++" Last Change:	08 September 2013
+ 
+-" Only do this when not done yet for this buffer
+ if exists("b:did_ftplugin")
+-    finish
++	finish
+ endif
+ let b:did_ftplugin = 1
+ 
+ let s:cpo_save = &cpo
+ set cpo&vim
+ 
+-let b:undo_ftplugin = 'setlocal define< formatoptions< comments< commentstring<'
++let b:undo_ftplugin = 'setlocal iskeyword< define< formatoptions< comments< commentstring<'
++
++setlocal iskeyword+=?,-,*,!,+,/,=,<,>,.,:,$
+ 
+ " There will be false positives, but this is better than missing the whole set
+ " of user-defined def* definitions.
+@@ -35,10 +36,10 @@
+ " 'completefunc' so that the user has some form of completion available when
+ " 'omnifunc' is set and no REPL connection exists.
+ for s:setting in ['omnifunc', 'completefunc']
+-    if exists('&' . s:setting) && empty(eval('&' . s:setting))
+-        execute 'setlocal ' . s:setting . '=clojurecomplete#Complete'
+-        let b:undo_ftplugin .= ' | setlocal ' . s:setting . '<'
+-    endif
++	if exists('&' . s:setting) && empty(eval('&' . s:setting))
++		execute 'setlocal ' . s:setting . '=clojurecomplete#Complete'
++		let b:undo_ftplugin .= ' | setlocal ' . s:setting . '<'
++	endif
+ endfor
+ 
+ " Take all directories of the CLOJURE_SOURCE_DIRS environment variable
+@@ -46,34 +47,34 @@
+ "
+ " This is a legacy option for VimClojure users.
+ if exists('$CLOJURE_SOURCE_DIRS')
+-    for s:dir in split($CLOJURE_SOURCE_DIRS, (has("win32") || has("win64")) ? ';' : ':')
+-        let s:dir = fnameescape(s:dir)
+-        " Whitespace escaping for Windows
+-        let s:dir = substitute(s:dir, '\', '\\\\', 'g')
+-        let s:dir = substitute(s:dir, '\ ', '\\ ', 'g')
+-        execute "setlocal path+=" . s:dir . "/**"
+-    endfor
+-    let b:undo_ftplugin .= ' | setlocal path<'
++	for s:dir in split($CLOJURE_SOURCE_DIRS, (has("win32") || has("win64")) ? ';' : ':')
++		let s:dir = fnameescape(s:dir)
++		" Whitespace escaping for Windows
++		let s:dir = substitute(s:dir, '\', '\\\\', 'g')
++		let s:dir = substitute(s:dir, '\ ', '\\ ', 'g')
++		execute "setlocal path+=" . s:dir . "/**"
++	endfor
++	let b:undo_ftplugin .= ' | setlocal path<'
+ endif
+ 
+ " Skip brackets in ignored syntax regions when using the % command
+ if exists('loaded_matchit')
+-    let b:match_words = &matchpairs
+-    let b:match_skip = 's:comment\|string\|regex\|character'
+-    let b:undo_ftplugin .= ' | unlet! b:match_words b:match_skip'
++	let b:match_words = &matchpairs
++	let b:match_skip = 's:comment\|string\|regex\|character'
++	let b:undo_ftplugin .= ' | unlet! b:match_words b:match_skip'
+ endif
+ 
+ " Win32 can filter files in the browse dialog
+ if has("gui_win32") && !exists("b:browsefilter")
+-    let b:browsefilter = "Clojure Source Files (*.clj)\t*.clj\n" .
+-                       \ "ClojureScript Source Files (*.cljs)\t*.cljs\n" .
+-                       \ "Java Source Files (*.java)\t*.java\n" .
+-                       \ "All Files (*.*)\t*.*\n"
+-    let b:undo_ftplugin .= ' | unlet! b:browsefilter'
++	let b:browsefilter = "Clojure Source Files (*.clj)\t*.clj\n" .
++			   \ "ClojureScript Source Files (*.cljs)\t*.cljs\n" .
++			   \ "Java Source Files (*.java)\t*.java\n" .
++			   \ "All Files (*.*)\t*.*\n"
++	let b:undo_ftplugin .= ' | unlet! b:browsefilter'
+ endif
+ 
+ let &cpo = s:cpo_save
+ 
+ unlet! s:cpo_save s:setting s:dir
+ 
+-" vim:sts=4 sw=4 et:
++" vim:sts=8:sw=8:ts=8:noet
+diff -Naur vim74.orig/runtime/ftplugin/j.vim vim74/runtime/ftplugin/j.vim
+--- vim74.orig/runtime/ftplugin/j.vim	1970-01-01 00:00:00.000000000 +0000
++++ vim74/runtime/ftplugin/j.vim	2013-10-01 16:15:43.448538779 +0000
+@@ -0,0 +1,17 @@
++" Vim filetype plugin
++" Language:	J
++" Maintainer:	David BÃŒrgin <676c7473@gmail.com>
++" Last Change:	2013-09-21
++
++if exists("b:did_ftplugin")
++  finish
++endif
++let b:did_ftplugin = 1
++
++setlocal iskeyword=48-57,65-90,_,97-122
++setlocal comments=:NB.
++setlocal commentstring=NB.\ %s
++setlocal formatoptions-=t formatoptions+=croql
++setlocal shiftwidth=2 softtabstop=2 expandtab
++
++let b:undo_ftplugin = "setl et< sts< sw< fo< cms< com< isk<"
+diff -Naur vim74.orig/runtime/indent/clojure.vim vim74/runtime/indent/clojure.vim
+--- vim74.orig/runtime/indent/clojure.vim	2013-02-06 14:35:23.000000000 +0000
++++ vim74/runtime/indent/clojure.vim	2013-10-01 16:15:43.492538778 +0000
+@@ -1,16 +1,20 @@
+ " Vim indent file
+-" Language:     Clojure
+-" Author:       Meikel Brandmeyer <mb@kotka.de>
+-" URL:          http://kotka.de/projects/clojure/vimclojure.html
++" Language:	Clojure
++" Author:	Meikel Brandmeyer <mb@kotka.de>
++" URL:		http://kotka.de/projects/clojure/vimclojure.html
+ "
+-" Maintainer:   Sung Pae <self@sungpae.com>
+-" URL:          https://github.com/guns/vim-clojure-static
+-" License:      Same as Vim
+-" Last Change:  30 January 2013
++" Maintainer:	Sung Pae <self@sungpae.com>
++" URL:		https://github.com/guns/vim-clojure-static
++" License:	Same as Vim
++" Last Change:	08 September 2013
++
++" TODO: Indenting after multibyte characters is broken:
++"       (let [Î (if foo
++"                bar    ; Indent error
++"                baz)])
+ 
+-" Only load this indent file when no other was loaded.
+ if exists("b:did_indent")
+-    finish
++	finish
+ endif
+ let b:did_indent = 1
+ 
+@@ -25,290 +29,277 @@
+ 
+ if exists("*searchpairpos")
+ 
+-    if !exists('g:clojure_maxlines')
+-        let g:clojure_maxlines = 100
+-    endif
+-
+-    if !exists('g:clojure_fuzzy_indent')
+-        let g:clojure_fuzzy_indent = 1
+-    endif
+-
+-    if !exists('g:clojure_fuzzy_indent_patterns')
+-        let g:clojure_fuzzy_indent_patterns = ['^with', '^def', '^let']
+-    endif
+-
+-    if !exists('g:clojure_fuzzy_indent_blacklist')
+-        let g:clojure_fuzzy_indent_blacklist = ['-fn$', '\v^with-%(meta|out-str|loading-context)$']
+-    endif
+-
+-    if !exists('g:clojure_special_indent_words')
+-        let g:clojure_special_indent_words = 'deftype,defrecord,reify,proxy,extend-type,extend-protocol,letfn'
+-    endif
+-
+-    if !exists('g:clojure_align_multiline_strings')
+-        let g:clojure_align_multiline_strings = 0
+-    endif
+-
+-    function! s:SynIdName()
+-        return synIDattr(synID(line("."), col("."), 0), "name")
+-    endfunction
+-
+-    function! s:CurrentChar()
+-        return getline('.')[col('.')-1]
+-    endfunction
+-
+-    function! s:CurrentWord()
+-        return getline('.')[col('.')-1 : searchpos('\v>', 'n', line('.'))[1]-2]
+-    endfunction
+-
+-    function! s:IsParen()
+-        return s:CurrentChar() =~ '\v[\(\)\[\]\{\}]' &&
+-             \ s:SynIdName() !~? '\vstring|comment'
+-    endfunction
+-
+-    " Returns 1 if string matches a pattern in 'patterns', which may be a
+-    " list of patterns, or a comma-delimited string of implicitly anchored
+-    " patterns.
+-    function! s:MatchesOne(patterns, string)
+-        let list = type(a:patterns) == type([])
+-                   \ ? a:patterns
+-                   \ : map(split(a:patterns, ','), '"^" . v:val . "$"')
+-        for pat in list
+-            if a:string =~ pat | return 1 | endif
+-        endfor
+-    endfunction
+-
+-    function! s:SavePosition()
+-        let [ _b, l, c, _o ] = getpos(".")
+-        let b = bufnr("%")
+-        return [b, l, c]
+-    endfunction
+-
+-    function! s:RestorePosition(value)
+-        let [b, l, c] = a:value
+-        if bufnr("%") != b
+-            execute b "buffer!"
+-        endif
+-        call setpos(".", [0, l, c, 0])
+-    endfunction
+-
+-    function! s:MatchPairs(open, close, stopat)
+-        " Stop only on vector and map [ resp. {. Ignore the ones in strings and
+-        " comments.
+-        if a:stopat == 0
+-            let stopat = max([line(".") - g:clojure_maxlines, 0])
+-        else
+-            let stopat = a:stopat
+-        endif
+-
+-        let pos = searchpairpos(a:open, '', a:close, 'bWn', "!s:IsParen()", stopat)
+-        return [pos[0], virtcol(pos)]
+-    endfunction
+-
+-    function! s:ClojureCheckForStringWorker()
+-        " Check whether there is the last character of the previous line is
+-        " highlighted as a string. If so, we check whether it's a ". In this
+-        " case we have to check also the previous character. The " might be the
+-        " closing one. In case the we are still in the string, we search for the
+-        " opening ". If this is not found we take the indent of the line.
+-        let nb = prevnonblank(v:lnum - 1)
+-
+-        if nb == 0
+-            return -1
+-        endif
+-
+-        call cursor(nb, 0)
+-        call cursor(0, col("$") - 1)
+-        if s:SynIdName() !~? "string"
+-            return -1
+-        endif
+-
+-        " This will not work for a " in the first column...
+-        if s:CurrentChar() == '"'
+-            call cursor(0, col("$") - 2)
+-            if s:SynIdName() !~? "string"
+-                return -1
+-            endif
+-            if s:CurrentChar() != '\\'
+-                return -1
+-            endif
+-            call cursor(0, col("$") - 1)
+-        endif
+-
+-        let p = searchpos('\(^\|[^\\]\)\zs"', 'bW')
+-
+-        if p != [0, 0]
+-            return p[1] - 1
+-        endif
+-
+-        return indent(".")
+-    endfunction
+-
+-    function! s:CheckForString()
+-        let pos = s:SavePosition()
+-        try
+-            let val = s:ClojureCheckForStringWorker()
+-        finally
+-            call s:RestorePosition(pos)
+-        endtry
+-        return val
+-    endfunction
+-
+-    function! s:ClojureIsMethodSpecialCaseWorker(position)
+-        " Find the next enclosing form.
+-        call search('\S', 'Wb')
+-
+-        " Special case: we are at a '(('.
+-        if s:CurrentChar() == '('
+-            return 0
+-        endif
+-        call cursor(a:position)
+-
+-        let nextParen = s:MatchPairs('(', ')', 0)
+-
+-        " Special case: we are now at toplevel.
+-        if nextParen == [0, 0]
+-            return 0
+-        endif
+-        call cursor(nextParen)
+-
+-        call search('\S', 'W')
+-        if g:clojure_special_indent_words =~ '\<' . s:CurrentWord() . '\>'
+-            return 1
+-        endif
+-
+-        return 0
+-    endfunction
+-
+-    function! s:IsMethodSpecialCase(position)
+-        let pos = s:SavePosition()
+-        try
+-            let val = s:ClojureIsMethodSpecialCaseWorker(a:position)
+-        finally
+-            call s:RestorePosition(pos)
+-        endtry
+-        return val
+-    endfunction
+-
+-    function! GetClojureIndent()
+-        " Get rid of special case.
+-        if line(".") == 1
+-            return 0
+-        endif
+-
+-        " We have to apply some heuristics here to figure out, whether to use
+-        " normal lisp indenting or not.
+-        let i = s:CheckForString()
+-        if i > -1
+-            return i + !!g:clojure_align_multiline_strings
+-        endif
+-
+-        call cursor(0, 1)
+-
+-        " Find the next enclosing [ or {. We can limit the second search
+-        " to the line, where the [ was found. If no [ was there this is
+-        " zero and we search for an enclosing {.
+-        let paren = s:MatchPairs('(', ')', 0)
+-        let bracket = s:MatchPairs('\[', '\]', paren[0])
+-        let curly = s:MatchPairs('{', '}', bracket[0])
+-
+-        " In case the curly brace is on a line later then the [ or - in
+-        " case they are on the same line - in a higher column, we take the
+-        " curly indent.
+-        if curly[0] > bracket[0] || curly[1] > bracket[1]
+-            if curly[0] > paren[0] || curly[1] > paren[1]
+-                return curly[1]
+-            endif
+-        endif
+-
+-        " If the curly was not chosen, we take the bracket indent - if
+-        " there was one.
+-        if bracket[0] > paren[0] || bracket[1] > paren[1]
+-            return bracket[1]
+-        endif
+-
+-        " There are neither { nor [ nor (, ie. we are at the toplevel.
+-        if paren == [0, 0]
+-            return 0
+-        endif
+-
+-        " Now we have to reimplement lispindent. This is surprisingly easy, as
+-        " soon as one has access to syntax items.
+-        "
+-        " - Check whether we are in a special position after a word in
+-        "   g:clojure_special_indent_words. These are special cases.
+-        " - Get the next keyword after the (.
+-        " - If its first character is also a (, we have another sexp and align
+-        "   one column to the right of the unmatched (.
+-        " - In case it is in lispwords, we indent the next line to the column of
+-        "   the ( + sw.
+-        " - If not, we check whether it is last word in the line. In that case
+-        "   we again use ( + sw for indent.
+-        " - In any other case we use the column of the end of the word + 2.
+-        call cursor(paren)
+-
+-        if s:IsMethodSpecialCase(paren)
+-            return paren[1] + &shiftwidth - 1
+-        endif
+-
+-        " In case we are at the last character, we use the paren position.
+-        if col("$") - 1 == paren[1]
+-            return paren[1]
+-        endif
+-
+-        " In case after the paren is a whitespace, we search for the next word.
+-        normal! l
+-        if s:CurrentChar() == ' '
+-            normal! w
+-        endif
+-
+-        " If we moved to another line, there is no word after the (. We
+-        " use the ( position for indent.
+-        if line(".") > paren[0]
+-            return paren[1]
+-        endif
+-
+-        " We still have to check, whether the keyword starts with a (, [ or {.
+-        " In that case we use the ( position for indent.
+-        let w = s:CurrentWord()
+-        if stridx('([{', w[0]) > -1
+-            return paren[1]
+-        endif
+-
+-        " Test words without namespace qualifiers and leading reader macro
+-        " metacharacters.
+-        "
+-        " e.g. clojure.core/defn and #'defn should both indent like defn.
+-        let ww = substitute(w, "\\v%(.*/|[#'`~@^,]*)(.*)", '\1', '')
+-
+-        if &lispwords =~ '\V\<' . ww . '\>'
+-            return paren[1] + &shiftwidth - 1
+-        endif
+-
+-        if g:clojure_fuzzy_indent
+-            \ && !s:MatchesOne(g:clojure_fuzzy_indent_blacklist, ww)
+-            \ && s:MatchesOne(g:clojure_fuzzy_indent_patterns, ww)
+-            return paren[1] + &shiftwidth - 1
+-        endif
+-
+-        normal! W
+-        if paren[0] < line(".")
+-            return paren[1] + &shiftwidth - 1
+-        endif
+-
+-        normal! ge
+-        return virtcol(".") + 1
+-    endfunction
++	if !exists('g:clojure_maxlines')
++		let g:clojure_maxlines = 100
++	endif
++
++	if !exists('g:clojure_fuzzy_indent')
++		let g:clojure_fuzzy_indent = 1
++	endif
++
++	if !exists('g:clojure_fuzzy_indent_patterns')
++		let g:clojure_fuzzy_indent_patterns = ['^with', '^def', '^let']
++	endif
++
++	if !exists('g:clojure_fuzzy_indent_blacklist')
++		let g:clojure_fuzzy_indent_blacklist = ['-fn$', '\v^with-%(meta|out-str|loading-context)$']
++	endif
++
++	if !exists('g:clojure_special_indent_words')
++		let g:clojure_special_indent_words = 'deftype,defrecord,reify,proxy,extend-type,extend-protocol,letfn'
++	endif
++
++	if !exists('g:clojure_align_multiline_strings')
++		let g:clojure_align_multiline_strings = 0
++	endif
++
++	function! s:SynIdName()
++		return synIDattr(synID(line("."), col("."), 0), "name")
++	endfunction
++
++	function! s:CurrentChar()
++		return getline('.')[col('.')-1]
++	endfunction
++
++	function! s:CurrentWord()
++		return getline('.')[col('.')-1 : searchpos('\v>', 'n', line('.'))[1]-2]
++	endfunction
++
++	function! s:IsParen()
++		return s:CurrentChar() =~ '\v[\(\)\[\]\{\}]' &&
++		     \ s:SynIdName() !~? '\vstring|regex|comment|character'
++	endfunction
++
++	" Returns 1 if string matches a pattern in 'patterns', which may be a
++	" list of patterns, or a comma-delimited string of implicitly anchored
++	" patterns.
++	function! s:MatchesOne(patterns, string)
++		let list = type(a:patterns) == type([])
++			   \ ? a:patterns
++			   \ : map(split(a:patterns, ','), '"^" . v:val . "$"')
++		for pat in list
++			if a:string =~ pat | return 1 | endif
++		endfor
++	endfunction
++
++	function! s:MatchPairs(open, close, stopat)
++		" Stop only on vector and map [ resp. {. Ignore the ones in strings and
++		" comments.
++		if a:stopat == 0
++			let stopat = max([line(".") - g:clojure_maxlines, 0])
++		else
++			let stopat = a:stopat
++		endif
++
++		let pos = searchpairpos(a:open, '', a:close, 'bWn', "!s:IsParen()", stopat)
++		return [pos[0], virtcol(pos)]
++	endfunction
++
++	function! s:ClojureCheckForStringWorker()
++		" Check whether there is the last character of the previous line is
++		" highlighted as a string. If so, we check whether it's a ". In this
++		" case we have to check also the previous character. The " might be the
++		" closing one. In case the we are still in the string, we search for the
++		" opening ". If this is not found we take the indent of the line.
++		let nb = prevnonblank(v:lnum - 1)
++
++		if nb == 0
++			return -1
++		endif
++
++		call cursor(nb, 0)
++		call cursor(0, col("$") - 1)
++		if s:SynIdName() !~? "string"
++			return -1
++		endif
++
++		" This will not work for a " in the first column...
++		if s:CurrentChar() == '"'
++			call cursor(0, col("$") - 2)
++			if s:SynIdName() !~? "string"
++				return -1
++			endif
++			if s:CurrentChar() != '\\'
++				return -1
++			endif
++			call cursor(0, col("$") - 1)
++		endif
++
++		let p = searchpos('\(^\|[^\\]\)\zs"', 'bW')
++
++		if p != [0, 0]
++			return p[1] - 1
++		endif
++
++		return indent(".")
++	endfunction
++
++	function! s:CheckForString()
++		let pos = getpos('.')
++		try
++			let val = s:ClojureCheckForStringWorker()
++		finally
++			call setpos('.', pos)
++		endtry
++		return val
++	endfunction
++
++	function! s:ClojureIsMethodSpecialCaseWorker(position)
++		" Find the next enclosing form.
++		call search('\S', 'Wb')
++
++		" Special case: we are at a '(('.
++		if s:CurrentChar() == '('
++			return 0
++		endif
++		call cursor(a:position)
++
++		let nextParen = s:MatchPairs('(', ')', 0)
++
++		" Special case: we are now at toplevel.
++		if nextParen == [0, 0]
++			return 0
++		endif
++		call cursor(nextParen)
++
++		call search('\S', 'W')
++		if g:clojure_special_indent_words =~ '\<' . s:CurrentWord() . '\>'
++			return 1
++		endif
++
++		return 0
++	endfunction
++
++	function! s:IsMethodSpecialCase(position)
++		let pos = getpos('.')
++		try
++			let val = s:ClojureIsMethodSpecialCaseWorker(a:position)
++		finally
++			call setpos('.', pos)
++		endtry
++		return val
++	endfunction
++
++	function! GetClojureIndent()
++		" Get rid of special case.
++		if line(".") == 1
++			return 0
++		endif
++
++		" We have to apply some heuristics here to figure out, whether to use
++		" normal lisp indenting or not.
++		let i = s:CheckForString()
++		if i > -1
++			return i + !!g:clojure_align_multiline_strings
++		endif
++
++		call cursor(0, 1)
++
++		" Find the next enclosing [ or {. We can limit the second search
++		" to the line, where the [ was found. If no [ was there this is
++		" zero and we search for an enclosing {.
++		let paren = s:MatchPairs('(', ')', 0)
++		let bracket = s:MatchPairs('\[', '\]', paren[0])
++		let curly = s:MatchPairs('{', '}', bracket[0])
++
++		" In case the curly brace is on a line later then the [ or - in
++		" case they are on the same line - in a higher column, we take the
++		" curly indent.
++		if curly[0] > bracket[0] || curly[1] > bracket[1]
++			if curly[0] > paren[0] || curly[1] > paren[1]
++				return curly[1]
++			endif
++		endif
++
++		" If the curly was not chosen, we take the bracket indent - if
++		" there was one.
++		if bracket[0] > paren[0] || bracket[1] > paren[1]
++			return bracket[1]
++		endif
++
++		" There are neither { nor [ nor (, ie. we are at the toplevel.
++		if paren == [0, 0]
++			return 0
++		endif
++
++		" Now we have to reimplement lispindent. This is surprisingly easy, as
++		" soon as one has access to syntax items.
++		"
++		" - Check whether we are in a special position after a word in
++		"   g:clojure_special_indent_words. These are special cases.
++		" - Get the next keyword after the (.
++		" - If its first character is also a (, we have another sexp and align
++		"   one column to the right of the unmatched (.
++		" - In case it is in lispwords, we indent the next line to the column of
++		"   the ( + sw.
++		" - If not, we check whether it is last word in the line. In that case
++		"   we again use ( + sw for indent.
++		" - In any other case we use the column of the end of the word + 2.
++		call cursor(paren)
++
++		if s:IsMethodSpecialCase(paren)
++			return paren[1] + &shiftwidth - 1
++		endif
++
++		" In case we are at the last character, we use the paren position.
++		if col("$") - 1 == paren[1]
++			return paren[1]
++		endif
++
++		" In case after the paren is a whitespace, we search for the next word.
++		call cursor(0, col('.') + 1)
++		if s:CurrentChar() == ' '
++			call search('\v\S', 'W')
++		endif
++
++		" If we moved to another line, there is no word after the (. We
++		" use the ( position for indent.
++		if line(".") > paren[0]
++			return paren[1]
++		endif
++
++		" We still have to check, whether the keyword starts with a (, [ or {.
++		" In that case we use the ( position for indent.
++		let w = s:CurrentWord()
++		if stridx('([{', w[0]) > -1
++			return paren[1]
++		endif
++
++		" Test words without namespace qualifiers and leading reader macro
++		" metacharacters.
++		"
++		" e.g. clojure.core/defn and #'defn should both indent like defn.
++		let ww = substitute(w, "\\v%(.*/|[#'`~@^,]*)(.*)", '\1', '')
++
++		if &lispwords =~ '\V\<' . ww . '\>'
++			return paren[1] + &shiftwidth - 1
++		endif
++
++		if g:clojure_fuzzy_indent
++			\ && !s:MatchesOne(g:clojure_fuzzy_indent_blacklist, ww)
++			\ && s:MatchesOne(g:clojure_fuzzy_indent_patterns, ww)
++			return paren[1] + &shiftwidth - 1
++		endif
++
++		call search('\v\_s', 'cW')
++		call search('\v\S', 'W')
++		if paren[0] < line(".")
++			return paren[1] + &shiftwidth - 1
++		endif
++
++		call search('\v\S', 'bW')
++		return virtcol(".") + 1
++	endfunction
+ 
+-    setlocal indentexpr=GetClojureIndent()
++	setlocal indentexpr=GetClojureIndent()
+ 
+ else
+ 
+-    " In case we have searchpairpos not available we fall back to
+-    " normal lisp indenting.
+-    setlocal indentexpr=
+-    setlocal lisp
+-    let b:undo_indent .= '| setlocal lisp<'
++	" In case we have searchpairpos not available we fall back to
++	" normal lisp indenting.
++	setlocal indentexpr=
++	setlocal lisp
++	let b:undo_indent .= '| setlocal lisp<'
+ 
+ endif
+ 
+@@ -390,9 +381,8 @@
+ 
+ " Exception handling
+ setlocal lispwords+=catch
+-setlocal lispwords+=try " For aesthetics when enclosing single line
+ 
+ let &cpo = s:save_cpo
+ unlet! s:save_cpo
+ 
+-" vim:sts=4 sw=4 et:
++" vim:sts=8:sw=8:ts=8:noet
+diff -Naur vim74.orig/runtime/indent/j.vim vim74/runtime/indent/j.vim
+--- vim74.orig/runtime/indent/j.vim	1970-01-01 00:00:00.000000000 +0000
++++ vim74/runtime/indent/j.vim	2013-10-01 16:15:43.504538778 +0000
+@@ -0,0 +1,37 @@
++" Vim indent file
++" Language:	J
++" Maintainer:	David BÃŒrgin <676c7473@gmail.com>
++" Last Change:	2013-09-21
++
++if exists("b:did_indent")
++  finish
++endif
++let b:did_indent = 1
++
++setlocal indentexpr=GetJIndent()
++setlocal indentkeys-=0{,0},\:,0#
++setlocal indentkeys+=0),=case.,=catch.,=catchd.,=catcht.,=do.,=else.,=elseif.,=end.,=fcase.
++
++let b:undo_indent = "setl indk< inde<"
++
++if exists("*GetJIndent")
++  finish
++endif
++
++function GetJIndent()
++  let prevlnum = prevnonblank(v:lnum-1)
++  if prevlnum == 0
++    return 0
++  endif
++
++  let indent = indent(prevlnum)
++  if getline(prevlnum) =~# '^\s*\%(case\|catch[dt]\=\|do\|else\%(if\)\=\|fcase\|for\%(_\a\k*\)\=\|if\|select\|try\|whil\%(e\|st\)\)\.'
++    if getline(prevlnum) !~# '\<end\.'
++      let indent += &shiftwidth
++    endif
++  endif
++  if getline(v:lnum) =~# '^\s*\%(case\|catch[dt]\=\|do\|else\%(if\)\=\|end\|fcase\)\.'
++    let indent -= &shiftwidth
++  endif
++  return indent
++endfunction
+diff -Naur vim74.orig/runtime/syntax/apache.vim vim74/runtime/syntax/apache.vim
+--- vim74.orig/runtime/syntax/apache.vim	2010-05-15 11:03:57.000000000 +0000
++++ vim74/runtime/syntax/apache.vim	2013-10-01 16:15:43.740538771 +0000
+@@ -1,11 +1,9 @@
+ " Vim syntax file
+-" This is a GENERATED FILE. Please always refer to source file at the URI below.
+ " Language: Apache configuration (httpd.conf, srm.conf, access.conf, .htaccess)
+-" Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>
++" Maintainer: David Necas (Yeti) <yeti@physics.muni.cz>
+ " License: This file can be redistribued and/or modified under the same terms
+ "		as Vim itself.
+-" Last Change: 2006-12-13
+-" URL: http://trific.ath.cx/Ftp/vim/syntax/apache.vim
++" Last Change: 2013-09-16
+ " Notes: Last synced with apache-2.2.3, version 1.x is no longer supported
+ " TODO: see particular FIXME's scattered through the file
+ "		make it really linewise?
+@@ -30,7 +28,10 @@
+ syn case ignore
+ syn match apacheAnything "\s[^>]*" contained
+ syn match apacheError "\w\+" contained
+-syn region apacheString start=+"+ end=+"+ skip=+\\\\\|\\\"+
++syn region apacheString start=+"+ end=+"+ skip=+\\\\\|\\\"+ oneline
++
++" Following is to prevent escaped quotes from being parsed as strings.
++syn match apacheSkipQuote +\\"+
+ 
+ " Core and mpm
+ syn keyword apacheDeclaration AccessFileName AddDefaultCharset AllowOverride AuthName AuthType ContentDigest DefaultType DocumentRoot ErrorDocument ErrorLog HostNameLookups IdentityCheck Include KeepAlive KeepAliveTimeout LimitRequestBody LimitRequestFields LimitRequestFieldsize LimitRequestLine LogLevel MaxKeepAliveRequests NameVirtualHost Options Require RLimitCPU RLimitMEM RLimitNPROC Satisfy ScriptInterpreterSource ServerAdmin ServerAlias ServerName ServerPath ServerRoot ServerSignature ServerTokens TimeOut UseCanonicalName
+diff -Naur vim74.orig/runtime/syntax/clojure.vim vim74/runtime/syntax/clojure.vim
+--- vim74.orig/runtime/syntax/clojure.vim	2013-02-06 14:35:23.000000000 +0000
++++ vim74/runtime/syntax/clojure.vim	2013-10-01 16:15:43.756538771 +0000
+@@ -1,24 +1,22 @@
+ " Vim syntax file
+-" Language:     Clojure
+-" Authors:      Toralf Wittner <toralf.wittner@gmail.com>
+-"               modified by Meikel Brandmeyer <mb@kotka.de>
+-" URL:          http://kotka.de/projects/clojure/vimclojure.html
++" Language:	Clojure
++" Authors:	Toralf Wittner <toralf.wittner@gmail.com>
++"		modified by Meikel Brandmeyer <mb@kotka.de>
++" URL:		http://kotka.de/projects/clojure/vimclojure.html
+ "
+-" Maintainer:   Sung Pae <self@sungpae.com>
+-" URL:          https://github.com/guns/vim-clojure-static
+-" License:      Same as Vim
+-" Last Change:  05 February 2013
+-
+-if version < 600
+-    syntax clear
+-elseif exists("b:current_syntax")
+-    finish
+-endif
++" Contributors:	Joel Holdbrooks <cjholdbrooks@gmail.com> (Regexp support, bug fixes)
++"
++" Maintainer:	Sung Pae <self@sungpae.com>
++" URL:		https://github.com/guns/vim-clojure-static
++" License:	Same as Vim
++" Last Change:	08 September 2013
+ 
+-setlocal iskeyword+=?,-,*,!,+,/,=,<,>,.,:,$
++if exists("b:current_syntax")
++	finish
++endif
+ 
+-" Generated from https://github.com/guns/vim-clojure-static/blob/vim-release-002/vim_clojure_static.clj
+-" Clojure 1.5.0-RC6
++" Generated from https://github.com/guns/vim-clojure-static/blob/vim-release-005/clj/src/vim_clojure_static/generate.clj
++" Clojure version 1.5.1
+ syntax keyword clojureConstant nil
+ syntax keyword clojureBoolean false true
+ syntax keyword clojureSpecial . catch clojure.core/fn clojure.core/let clojure.core/loop def do finally fn if let loop monitor-enter monitor-exit new quote recur set! throw try var
+@@ -28,7 +26,7 @@
+ syntax keyword clojureDefine clojure.core/definline clojure.core/definterface clojure.core/defmacro clojure.core/defmethod clojure.core/defmulti clojure.core/defn clojure.core/defn- clojure.core/defonce clojure.core/defprotocol clojure.core/defrecord clojure.core/defstruct clojure.core/deftype definline definterface defmacro defmethod defmulti defn defn- defonce defprotocol defrecord defstruct deftype
+ syntax keyword clojureMacro -> ->> .. amap and areduce as-> assert binding bound-fn clojure.core/-> clojure.core/->> clojure.core/.. clojure.core/amap clojure.core/and clojure.core/areduce clojure.core/as-> clojure.core/assert clojure.core/binding clojure.core/bound-fn clojure.core/comment clojure.core/declare clojure.core/delay clojure.core/dosync clojure.core/doto clojure.core/extend-protocol clojure.core/extend-type clojure.core/for clojure.core/future clojure.core/gen-class clojure.core/gen-interface clojure.core/import clojure.core/io! clojure.core/lazy-cat clojure.core/lazy-seq clojure.core/letfn clojure.core/locking clojure.core/memfn clojure.core/ns clojure.core/or clojure.core/proxy clojure.core/proxy-super clojure.core/pvalues clojure.core/refer-clojure clojure.core/reify clojure.core/some-> clojure.core/some->> clojure.core/sync clojure.core/time clojure.core/with-bindings clojure.core/with-in-str clojure.core/with-loading-context clojure.core/with-local-vars clojure.core/with-open clojure.core/with-out-str clojure.core/with-precision clojure.core/with-redefs comment declare delay dosync doto extend-protocol extend-type for future gen-class gen-interface import io! lazy-cat lazy-seq letfn locking memfn ns or proxy proxy-super pvalues refer-clojure reify some-> some->> sync time with-bindings with-in-str with-loading-context with-local-vars with-open with-out-str with-precision with-redefs
+ syntax keyword clojureFunc * *' + +' - -' ->ArrayChunk ->Vec ->VecNode ->VecSeq -cache-protocol-fn -reset-methods / < <= = == > >= accessor aclone add-classpath add-watch agent agent-error agent-errors aget alength alias all-ns alter alter-meta! alter-var-root ancestors apply array-map aset aset-boolean aset-byte aset-char aset-double aset-float aset-int aset-long aset-short assoc assoc! assoc-in associative? atom await await-for await1 bases bean bigdec bigint biginteger bit-and bit-and-not bit-clear bit-flip bit-not bit-or bit-set bit-shift-left bit-shift-right bit-test bit-xor boolean boolean-array booleans bound-fn* bound? butlast byte byte-array bytes cast char char-array char? chars chunk chunk-append chunk-buffer chunk-cons chunk-first chunk-next chunk-rest chunked-seq? class class? clear-agent-errors clojure-version clojure.core/* clojure.core/*' clojure.core/+ clojure.core/+' clojure.core/- clojure.core/-' clojure.core/->ArrayChunk clojure.core/->Vec clojure.core/->VecNode clojure.core/->VecSeq clojure.core/-cache-protocol-fn clojure.core/-reset-methods clojure.core// clojure.core/< clojure.core/<= clojure.core/= clojure.core/== clojure.core/> clojure.core/>= clojure.core/accessor clojure.core/aclone clojure.core/add-classpath clojure.core/add-watch clojure.core/agent clojure.core/agent-error clojure.core/agent-errors clojure.core/aget clojure.core/alength clojure.core/alias clojure.core/all-ns clojure.core/alter clojure.core/alter-meta! clojure.core/alter-var-root clojure.core/ancestors clojure.core/apply clojure.core/array-map clojure.core/aset clojure.core/aset-boolean clojure.core/aset-byte clojure.core/aset-char clojure.core/aset-double clojure.core/aset-float clojure.core/aset-int clojure.core/aset-long clojure.core/aset-short clojure.core/assoc clojure.core/assoc! clojure.core/assoc-in clojure.core/associative? clojure.core/atom clojure.core/await clojure.core/await-for clojure.core/await1 clojure.core/bases clojure.core/bean clojure.core/bigdec clojure.core/bigint clojure.core/biginteger clojure.core/bit-and clojure.core/bit-and-not clojure.core/bit-clear clojure.core/bit-flip clojure.core/bit-not clojure.core/bit-or clojure.core/bit-set clojure.core/bit-shift-left clojure.core/bit-shift-right clojure.core/bit-test clojure.core/bit-xor clojure.core/boolean clojure.core/boolean-array clojure.core/booleans clojure.core/bound-fn* clojure.core/bound? clojure.core/butlast clojure.core/byte clojure.core/byte-array clojure.core/bytes clojure.core/cast clojure.core/char clojure.core/char-array clojure.core/char? clojure.core/chars clojure.core/chunk clojure.core/chunk-append clojure.core/chunk-buffer clojure.core/chunk-cons clojure.core/chunk-first clojure.core/chunk-next clojure.core/chunk-rest clojure.core/chunked-seq? clojure.core/class clojure.core/class? clojure.core/clear-agent-errors clojure.core/clojure-version clojure.core/coll? clojure.core/commute clojure.core/comp clojure.core/comparator clojure.core/compare clojure.core/compare-and-set! clojure.core/compile clojure.core/complement clojure.core/concat clojure.core/conj clojure.core/conj! clojure.core/cons clojure.core/constantly clojure.core/construct-proxy clojure.core/contains? clojure.core/count clojure.core/counted? clojure.core/create-ns clojure.core/create-struct clojure.core/cycle clojure.core/dec clojure.core/dec' clojure.core/decimal? clojure.core/delay? clojure.core/deliver clojure.core/denominator clojure.core/deref clojure.core/derive clojure.core/descendants clojure.core/destructure clojure.core/disj clojure.core/disj! clojure.core/dissoc clojure.core/dissoc! clojure.core/distinct clojure.core/distinct? clojure.core/double clojure.core/double-array clojure.core/doubles clojure.core/drop clojure.core/drop-last clojure.core/drop-while clojure.core/empty clojure.core/empty? clojure.core/ensure clojure.core/enumeration-seq clojure.core/error-handler clojure.core/error-mode clojure.core/eval clojure.core/even? clojure.core/every-pred clojure.core/every? clojure.core/ex-data clojure.core/ex-info clojure.core/extend clojure.core/extenders clojure.core/extends? clojure.core/false? clojure.core/ffirst clojure.core/file-seq clojure.core/filter clojure.core/filterv clojure.core/find clojure.core/find-keyword clojure.core/find-ns clojure.core/find-protocol-impl clojure.core/find-protocol-method clojure.core/find-var clojure.core/first clojure.core/flatten clojure.core/float clojure.core/float-array clojure.core/float? clojure.core/floats clojure.core/flush clojure.core/fn? clojure.core/fnext clojure.core/fnil clojure.core/force clojure.core/format clojure.core/frequencies clojure.core/future-call clojure.core/future-cancel clojure.core/future-cancelled? clojure.core/future-done? clojure.core/future? clojure.core/gensym clojure.core/get clojure.core/get-in clojure.core/get-method clojure.core/get-proxy-class clojure.core/get-thread-bindings clojure.core/get-validator clojure.core/group-by clojure.core/hash clojure.core/hash-combine clojure.core/hash-map clojure.core/hash-set clojure.core/identical? clojure.core/identity clojure.core/ifn? clojure.core/in-ns clojure.core/inc clojure.core/inc' clojure.core/init-proxy clojure.core/instance? clojure.core/int clojure.core/int-array clojure.core/integer? clojure.core/interleave clojure.core/intern clojure.core/interpose clojure.core/into clojure.core/into-array clojure.core/ints clojure.core/isa? clojure.core/iterate clojure.core/iterator-seq clojure.core/juxt clojure.core/keep clojure.core/keep-indexed clojure.core/key clojure.core/keys clojure.core/keyword clojure.core/keyword? clojure.core/last clojure.core/line-seq clojure.core/list clojure.core/list* clojure.core/list? clojure.core/load clojure.core/load-file clojure.core/load-reader clojure.core/load-string clojure.core/loaded-libs clojure.core/long clojure.core/long-array clojure.core/longs clojure.core/macroexpand clojure.core/macroexpand-1 clojure.core/make-array clojure.core/make-hierarchy clojure.core/map clojure.core/map-indexed clojure.core/map? clojure.core/mapcat clojure.core/mapv clojure.core/max clojure.core/max-key clojure.core/memoize clojure.core/merge clojure.core/merge-with clojure.core/meta clojure.core/method-sig clojure.core/methods clojure.core/min clojure.core/min-key clojure.core/mod clojure.core/munge clojure.core/name clojure.core/namespace clojure.core/namespace-munge clojure.core/neg? clojure.core/newline clojure.core/next clojure.core/nfirst clojure.core/nil? clojure.core/nnext clojure.core/not clojure.core/not-any? clojure.core/not-empty clojure.core/not-every? clojure.core/not= clojure.core/ns-aliases clojure.core/ns-imports clojure.core/ns-interns clojure.core/ns-map clojure.core/ns-name clojure.core/ns-publics clojure.core/ns-refers clojure.core/ns-resolve clojure.core/ns-unalias clojure.core/ns-unmap clojure.core/nth clojure.core/nthnext clojure.core/nthrest clojure.core/num clojure.core/number? clojure.core/numerator clojure.core/object-array clojure.core/odd? clojure.core/parents clojure.core/partial clojure.core/partition clojure.core/partition-all clojure.core/partition-by clojure.core/pcalls clojure.core/peek clojure.core/persistent! clojure.core/pmap clojure.core/pop clojure.core/pop! clojure.core/pop-thread-bindings clojure.core/pos? clojure.core/pr clojure.core/pr-str clojure.core/prefer-method clojure.core/prefers clojure.core/print clojure.core/print-ctor clojure.core/print-simple clojure.core/print-str clojure.core/printf clojure.core/println clojure.core/println-str clojure.core/prn clojure.core/prn-str clojure.core/promise clojure.core/proxy-call-with-super clojure.core/proxy-mappings clojure.core/proxy-name clojure.core/push-thread-bindings clojure.core/quot clojure.core/rand clojure.core/rand-int clojure.core/rand-nth clojure.core/range clojure.core/ratio? clojure.core/rational? clojure.core/rationalize clojure.core/re-find clojure.core/re-groups clojure.core/re-matcher clojure.core/re-matches clojure.core/re-pattern clojure.core/re-seq clojure.core/read clojure.core/read-line clojure.core/read-string clojure.core/realized? clojure.core/reduce clojure.core/reduce-kv clojure.core/reduced clojure.core/reduced? clojure.core/reductions clojure.core/ref clojure.core/ref-history-count clojure.core/ref-max-history clojure.core/ref-min-history clojure.core/ref-set clojure.core/refer clojure.core/release-pending-sends clojure.core/rem clojure.core/remove clojure.core/remove-all-methods clojure.core/remove-method clojure.core/remove-ns clojure.core/remove-watch clojure.core/repeat clojure.core/repeatedly clojure.core/replace clojure.core/replicate clojure.core/require clojure.core/reset! clojure.core/reset-meta! clojure.core/resolve clojure.core/rest clojure.core/restart-agent clojure.core/resultset-seq clojure.core/reverse clojure.core/reversible? clojure.core/rseq clojure.core/rsubseq clojure.core/satisfies? clojure.core/second clojure.core/select-keys clojure.core/send clojure.core/send-off clojure.core/send-via clojure.core/seq clojure.core/seq? clojure.core/seque clojure.core/sequence clojure.core/sequential? clojure.core/set clojure.core/set-agent-send-executor! clojure.core/set-agent-send-off-executor! clojure.core/set-error-handler! clojure.core/set-error-mode! clojure.core/set-validator! clojure.core/set? clojure.core/short clojure.core/short-array clojure.core/shorts clojure.core/shuffle clojure.core/shutdown-agents clojure.core/slurp clojure.core/some clojure.core/some-fn clojure.core/sort clojure.core/sort-by clojure.core/sorted-map clojure.core/sorted-map-by clojure.core/sorted-set clojure.core/sorted-set-by clojure.core/sorted? clojure.core/special-symbol? clojure.core/spit clojure.core/split-at clojure.core/split-with clojure.core/str clojure.core/string? clojure.core/struct clojure.core/struct-map clojure.core/subs clojure.core/subseq clojure.core/subvec clojure.core/supers clojure.core/swap! clojure.core/symbol clojure.core/symbol? clojure.core/take clojure.core/take-last clojure.core/take-nth clojure.core/take-while clojure.core/test clojure.core/the-ns clojure.core/thread-bound? clojure.core/to-array clojure.core/to-array-2d clojure.core/trampoline clojure.core/transient clojure.core/tree-seq clojure.core/true? clojure.core/type clojure.core/unchecked-add clojure.core/unchecked-add-int clojure.core/unchecked-byte clojure.core/unchecked-char clojure.core/unchecked-dec clojure.core/unchecked-dec-int clojure.core/unchecked-divide-int clojure.core/unchecked-double clojure.core/unchecked-float clojure.core/unchecked-inc clojure.core/unchecked-inc-int clojure.core/unchecked-int clojure.core/unchecked-long clojure.core/unchecked-multiply clojure.core/unchecked-multiply-int clojure.core/unchecked-negate clojure.core/unchecked-negate-int clojure.core/unchecked-remainder-int clojure.core/unchecked-short clojure.core/unchecked-subtract clojure.core/unchecked-subtract-int clojure.core/underive clojure.core/update-in clojure.core/update-proxy clojure.core/use clojure.core/val clojure.core/vals clojure.core/var-get clojure.core/var-set clojure.core/var? clojure.core/vary-meta clojure.core/vec clojure.core/vector clojure.core/vector-of clojure.core/vector? clojure.core/with-bindings* clojure.core/with-meta clojure.core/with-redefs-fn clojure.core/xml-seq clojure.core/zero? clojure.core/zipmap coll? commute comp comparator compare compare-and-set! compile complement concat conj conj! cons constantly construct-proxy contains? count counted? create-ns create-struct cycle dec dec' decimal? delay? deliver denominator deref derive descendants destructure disj disj! dissoc dissoc! distinct distinct? double double-array doubles drop drop-last drop-while empty empty? ensure enumeration-seq error-handler error-mode eval even? every-pred every? ex-data ex-info extend extenders extends? false? ffirst file-seq filter filterv find find-keyword find-ns find-protocol-impl find-protocol-method find-var first flatten float float-array float? floats flush fn? fnext fnil force format frequencies future-call future-cancel future-cancelled? future-done? future? gensym get get-in get-method get-proxy-class get-thread-bindings get-validator group-by hash hash-combine hash-map hash-set identical? identity ifn? in-ns inc inc' init-proxy instance? int int-array integer? interleave intern interpose into into-array ints isa? iterate iterator-seq juxt keep keep-indexed key keys keyword keyword? last line-seq list list* list? load load-file load-reader load-string loaded-libs long long-array longs macroexpand macroexpand-1 make-array make-hierarchy map map-indexed map? mapcat mapv max max-key memoize merge merge-with meta method-sig methods min min-key mod munge name namespace namespace-munge neg? newline next nfirst nil? nnext not not-any? not-empty not-every? not= ns-aliases ns-imports ns-interns ns-map ns-name ns-publics ns-refers ns-resolve ns-unalias ns-unmap nth nthnext nthrest num number? numerator object-array odd? parents partial partition partition-all partition-by pcalls peek persistent! pmap pop pop! pop-thread-bindings pos? pr pr-str prefer-method prefers print print-ctor print-simple print-str printf println println-str prn prn-str promise proxy-call-with-super proxy-mappings proxy-name push-thread-bindings quot rand rand-int rand-nth range ratio? rational? rationalize re-find re-groups re-matcher re-matches re-pattern re-seq read read-line read-string realized? reduce reduce-kv reduced reduced? reductions ref ref-history-count ref-max-history ref-min-history ref-set refer release-pending-sends rem remove remove-all-methods remove-method remove-ns remove-watch repeat repeatedly replace replicate require reset! reset-meta! resolve rest restart-agent resultset-seq reverse reversible? rseq rsubseq satisfies? second select-keys send send-off send-via seq seq? seque sequence sequential? set set-agent-send-executor! set-agent-send-off-executor! set-error-handler! set-error-mode! set-validator! set? short short-array shorts shuffle shutdown-agents slurp some some-fn sort sort-by sorted-map sorted-map-by sorted-set sorted-set-by sorted? special-symbol? spit split-at split-with str string? struct struct-map subs subseq subvec supers swap! symbol symbol? take take-last take-nth take-while test the-ns thread-bound? to-array to-array-2d trampoline transient tree-seq true? type unchecked-add unchecked-add-int unchecked-byte unchecked-char unchecked-dec unchecked-dec-int unchecked-divide-int unchecked-double unchecked-float unchecked-inc unchecked-inc-int unchecked-int unchecked-long unchecked-multiply unchecked-multiply-int unchecked-negate unchecked-negate-int unchecked-remainder-int unchecked-short unchecked-subtract unchecked-subtract-int underive update-in update-proxy use val vals var-get var-set var? vary-meta vec vector vector-of vector? with-bindings* with-meta with-redefs-fn xml-seq zero? zipmap
+-syntax keyword clojureVariable *1 *2 *3 *agent* *allow-unresolved-vars* *assert* *clojure-version* *command-line-args* *compile-files* *compile-path* *compiler-options* *data-readers* *default-data-reader-fn* *e *err* *file* *flush-on-newline* *fn-loader* *in* *math-context* *ns* *out* *print-dup* *print-length* *print-level* *print-meta* *print-readably* *read-eval* *read-whitelist* *source-path* *unchecked-math* *use-context-classloader* *verbose-defrecords* *warn-on-reflection* EMPTY-NODE char-escape-string char-name-string clojure.core/*1 clojure.core/*2 clojure.core/*3 clojure.core/*agent* clojure.core/*allow-unresolved-vars* clojure.core/*assert* clojure.core/*clojure-version* clojure.core/*command-line-args* clojure.core/*compile-files* clojure.core/*compile-path* clojure.core/*compiler-options* clojure.core/*data-readers* clojure.core/*default-data-reader-fn* clojure.core/*e clojure.core/*err* clojure.core/*file* clojure.core/*flush-on-newline* clojure.core/*fn-loader* clojure.core/*in* clojure.core/*math-context* clojure.core/*ns* clojure.core/*out* clojure.core/*print-dup* clojure.core/*print-length* clojure.core/*print-level* clojure.core/*print-meta* clojure.core/*print-readably* clojure.core/*read-eval* clojure.core/*read-whitelist* clojure.core/*source-path* clojure.core/*unchecked-math* clojure.core/*use-context-classloader* clojure.core/*verbose-defrecords* clojure.core/*warn-on-reflection* clojure.core/EMPTY-NODE clojure.core/char-escape-string clojure.core/char-name-string clojure.core/default-data-readers clojure.core/primitives-classnames clojure.core/print-dup clojure.core/print-method clojure.core/unquote clojure.core/unquote-splicing default-data-readers primitives-classnames print-dup print-method unquote unquote-splicing
++syntax keyword clojureVariable *1 *2 *3 *agent* *allow-unresolved-vars* *assert* *clojure-version* *command-line-args* *compile-files* *compile-path* *compiler-options* *data-readers* *default-data-reader-fn* *e *err* *file* *flush-on-newline* *fn-loader* *in* *math-context* *ns* *out* *print-dup* *print-length* *print-level* *print-meta* *print-readably* *read-eval* *source-path* *unchecked-math* *use-context-classloader* *verbose-defrecords* *warn-on-reflection* EMPTY-NODE char-escape-string char-name-string clojure.core/*1 clojure.core/*2 clojure.core/*3 clojure.core/*agent* clojure.core/*allow-unresolved-vars* clojure.core/*assert* clojure.core/*clojure-version* clojure.core/*command-line-args* clojure.core/*compile-files* clojure.core/*compile-path* clojure.core/*compiler-options* clojure.core/*data-readers* clojure.core/*default-data-reader-fn* clojure.core/*e clojure.core/*err* clojure.core/*file* clojure.core/*flush-on-newline* clojure.core/*fn-loader* clojure.core/*in* clojure.core/*math-context* clojure.core/*ns* clojure.core/*out* clojure.core/*print-dup* clojure.core/*print-length* clojure.core/*print-level* clojure.core/*print-meta* clojure.core/*print-readably* clojure.core/*read-eval* clojure.core/*source-path* clojure.core/*unchecked-math* clojure.core/*use-context-classloader* clojure.core/*verbose-defrecords* clojure.core/*warn-on-reflection* clojure.core/EMPTY-NODE clojure.core/char-escape-string clojure.core/char-name-string clojure.core/default-data-readers clojure.core/primitives-classnames clojure.core/print-dup clojure.core/print-method clojure.core/unquote clojure.core/unquote-splicing default-data-readers primitives-classnames print-dup print-method unquote unquote-splicing
+ 
+ " Keywords are symbols:
+ "   static Pattern symbolPat = Pattern.compile("[:]?([\\D&&[^/]].*/)?([\\D&&[^/]][^/]*)");
+@@ -36,13 +34,15 @@
+ "   * Must not end in a : or /
+ "   * Must not have two adjacent colons except at the beginning
+ "   * Must not contain any reader metacharacters except for ' and #
+-syntax match clojureKeyword "\v:{1,2}%([^ \n\r\t()\[\]{}";@^`~\\%/]+/)*[^ \n\r\t()\[\]{}";@^`~\\%/]+:@<!"
++syntax match clojureKeyword "\v<:{1,2}%([^ \n\r\t()\[\]{}";@^`~\\%/]+/)*[^ \n\r\t()\[\]{}";@^`~\\%/]+:@<!>"
+ 
+-syntax region clojureString start=/L\="/ skip=/\\\\\|\\"/ end=/"/
++syntax match clojureStringEscape "\v\\%([\\btnfr"]|u\x{4}|[0-3]\o{2}|\o{1,2})" contained
++
++syntax region clojureString start=/"/ skip=/\\\\\|\\"/ end=/"/ contains=clojureStringEscape
+ 
+ syntax match clojureCharacter "\\."
+-syntax match clojureCharacter "\\o[0-7]\{3\}"
+-syntax match clojureCharacter "\\u[0-9]\{4\}"
++syntax match clojureCharacter "\\o\%([0-3]\o\{2\}\|\o\{1,2\}\)"
++syntax match clojureCharacter "\\u\x\{4\}"
+ syntax match clojureCharacter "\\space"
+ syntax match clojureCharacter "\\tab"
+ syntax match clojureCharacter "\\newline"
+@@ -50,16 +50,17 @@
+ syntax match clojureCharacter "\\backspace"
+ syntax match clojureCharacter "\\formfeed"
+ 
+-let s:radixChars = "0123456789abcdefghijklmnopqrstuvwxyz"
++syntax match clojureSymbol "\v%([a-zA-Z!$&*_+=|<.>?-]|[^\x00-\x7F])+%(:?%([a-zA-Z0-9!#$%&*_+=|'<.>/?-]|[^\x00-\x7F]))*[#:]@<!"
++
++let s:radix_chars = "0123456789abcdefghijklmnopqrstuvwxyz"
+ for s:radix in range(2, 36)
+-    execute 'syntax match clojureNumber "\c\<-\?' . s:radix . 'r[' . strpart(s:radixChars, 0, s:radix) . ']\+\>"'
++	execute 'syntax match clojureNumber "\v\c<[-+]?' . s:radix . 'r[' . strpart(s:radix_chars, 0, s:radix) . ']+>"'
+ endfor
+-unlet! s:radixChars s:radix
++unlet! s:radix_chars s:radix
+ 
+-syntax match clojureNumber "\<-\=[0-9]\+\(\.[0-9]*\)\=\(M\|\([eE][-+]\?[0-9]\+\)\)\?\>"
+-syntax match clojureNumber "\<-\=[0-9]\+N\?\>"
+-syntax match clojureNumber "\<-\=0x[0-9a-fA-F]\+\>"
+-syntax match clojureNumber "\<-\=[0-9]\+/[0-9]\+\>"
++syntax match clojureNumber "\v<[-+]?%(0\o*|0x\x+|[1-9]\d*)N?>"
++syntax match clojureNumber "\v<[-+]?%(0|[1-9]\d*|%(0|[1-9]\d*)\.\d*)%(M|[eE][-+]?\d+)?>"
++syntax match clojureNumber "\v<[-+]?%(0|[1-9]\d*)/%(0|[1-9]\d*)>"
+ 
+ syntax match clojureVarArg "&"
+ 
+@@ -69,66 +70,110 @@
+ syntax match clojureUnquote "\~@"
+ syntax match clojureMeta "\^"
+ syntax match clojureDeref "@"
+-syntax match clojureAnonArg "%\(\d\|&\)\?"
+-syntax match clojureDispatch "\v#[\^\'\=\<]?"
++syntax match clojureDispatch "\v#[\^'=<_]?"
+ 
+-syntax region clojureRegexp start=/L\=\#"/ skip=/\\\\\|\\"/ end=/"/
++" Clojure permits no more than 20 params.
++syntax match clojureAnonArg "%\(20\|1\d\|[1-9]\|&\)\?"
+ 
+-syntax match clojureComment ";.*$" contains=clojureTodo,@Spell
+-syntax match clojureComment "#!.*$"
+-syntax match clojureComment "#_"
++syntax match  clojureRegexpEscape "\v\\%([\\tnrfae()\[\]{}^$*?+]|c\u|0[0-3]?\o{1,2}|x%(\x{2}|\{\x{1,6}\})|u\x{4})" contained display
++syntax region clojureRegexpQuoted start=/\\Q/ms=e+1 skip=/\\\\\|\\"/ end=/\\E/me=s-1 end=/"/me=s-1 contained
++syntax region clojureRegexpQuote  start=/\\Q/       skip=/\\\\\|\\"/ end=/\\E/       end=/"/me=s-1 contains=clojureRegexpQuoted keepend contained
++
++" Character property classes
++" Generated from https://github.com/guns/vim-clojure-static/blob/vim-release-005/clj/src/vim_clojure_static/generate.clj
++" Java version 1.7.0_40
++syntax match clojureRegexpPosixCharClass "\v\\[pP]\{%(Blank|P%(unct|rint)|Digit|Graph|A%(l%(pha|num)|SCII)|XDigit|Space|Upper|Lower|Cntrl)\}" contained display
++syntax match clojureRegexpJavaCharClass "\v\\[pP]\{java%(U%(pperCase|nicodeIdentifier%(Start|Part))|Mirrored|Alphabetic|SpaceChar|D%(efined|igit)|Whitespace|L%(etter%(OrDigit)?|owerCase)|TitleCase|I%(de%(ographic|ntifierIgnorable)|SOControl)|JavaIdentifier%(Start|Part))\}" contained display
++syntax match clojureRegexpUnicodeCharClass "\v\\[pP]\{\cIs%(blank|hex%(digit|_digit)|uppercase|digit|control|a%(ssigned|l%(phabetic|num))|graph|ideographic|p%(rint|unctuation)|titlecase|w%(hite%(_space|space)|ord)|l%(owercase|etter)|noncharacter%(codepoint|_code_point))\}" contained display
++syntax match clojureRegexpUnicodeCharClass "\v\\[pP][MLNPSZC]" contained display
++syntax match clojureRegexpUnicodeCharClass "\v\\[pP]\{%(C[fonsc]?|L[DmloutC]?|S[kmoc]?|P[edfiosc]?|M[enc]?|Z[lps]?|N[dlo]?)\}" contained display
++syntax match clojureRegexpUnicodeCharClass "\v\\[pP]\{%(Is|gc\=|general_category\=)?%(C[fonsc]?|L[DmloutC]?|S[kmoc]?|P[edfiosc]?|M[enc]?|Z[lps]?|N[dlo]?)\}" contained display
++syntax match clojureRegexpUnicodeCharClass "\v\\[pP]\{\c%(Is|sc\=|script\=)%(h%(ira%(gana)?|an%([io]|g%(ul)?|unoo)?|ebr%(ew)?)|yi%(ii)?|java%(nese)?|c%(prt|y%(r%(illic|l)|priot)|h%(er%(okee)?|am)|uneiform|o%(mmon|pt%(ic)?)|a%(n%(adian_aboriginal|s)|ri%(an)?))|i%(mperial_aramaic|tal|n%(herited|scriptional_pa%(rthian|hlavi)))|a%(r%(ab%(ic)?|m%([in]|enian))|v%(st|estan))|g%(oth%(ic)?|u%(j%(arati|r)|r%(mukhi|u))|lag%(olitic)?|eor%(gian)?|re%(k|ek))|b%(u%(gi%(nese)?|h%(d|id))|ra%(i%(lle)?|h%(mi)?)|a%(mum?|t%(k|ak)|li%(nese)?)|opo%(mofo)?|eng%(ali)?)|s%(ha%(w|vian)|und%(anese)?|y%(r%(iac|c)|lo%(ti_nagri)?)|inh%(ala)?|a%(ur%(ashtra)?|rb|m%(r|aritan)))|d%(srt|e%(va%(nagari)?|seret))|l%(a%(na|oo?|t%(n|in))|epc%(ha)?|i%(n%(ear_b|b)|mbu?|su)|y%([dc]i%(an)?))|p%(h%(oenician|nx|li|ag%(s_pa)?)|rti)|e%(gyp%(tian_hieroglyphs)?|thi%(opic)?)|r%(jng|un%(ic|r)|ejang)|u%(nknown|gar%(itic)?)|vaii?|n%(koo?|ew_tai_lue)|m%(y%(mr|anmar)|tei|a%(nd%(aic)?|layalam)|ong%(olian)?|eetei_mayek|lym)|z%(inh|yyy|zzz)|t%(glg|fng|i%(finagh|b%(t|etan))|ha%(i|a%(na)?)|elu%(gu)?|a%(i_%(viet|le|tham)|l[eu]|g%(alog|b%(anwa)?)|vt|m%(l|il)))|x%(sux|peo)|o%(r%(iya|kh|ya)|sma%(nya)?|g%(am|ham)|l%(ck|d_%(south_arabian|turkic|italic|persian)|_chiki))|k%(a%(takana|yah_li|n%(nada|a)|li|ithi)|h%(m%(r|er)|ar%(oshthi)?)|thi|nda))\}" contained display
++syntax match clojureRegexpUnicodeCharClass "\v\\[pP]\{\c%(In|blk\=|block\=)%(s%(a%(maritan|urashtra)|mall%(_form_variants| form variants|formvariants)|inhala|y%(loti%(nagri|[_ ]nagri)|riac)|havian|p%(ecials|acing%(modifierletters|_modifier_letters| modifier letters))|u%(p%(erscripts%(andsubscripts|_and_subscripts| and subscripts)|plementa%(ry%( private use area-[ab]|_private_use_area_[ab]|privateusearea-[ab])|l%( %(arrows-[ab]|punctuation|mathematical operators)|arrows-[ab]|_%(punctuation|mathematical_operators|arrows_[ab])|punctuation|mathematicaloperators)))|ndanese|rrogates_area))|l%(a%(o|tin%(_%(extended_%(a%(dditional)?|[dcb])|1_supplement)| extended%(-[dacb]| additional)|-1%( supplement|supplement)|extended%(additional|-[dacb])))|e%(pcha|tterlike%(symbols|[_ ]symbols))|y[cd]ian|i%(su|mbu|near%(b%(ideograms|syllabary)|_b_%(ideograms|syllabary)| b %(ideograms|syllabary)))|ow%([_ ]surrogates|surrogates))|b%(a%(sic%(latin|[_ ]latin)|tak|linese|mum%([_ ]supplement|supplement)?)|yzantine%(_musical_symbols| musical symbols|musicalsymbols)|engali|u%(ginese|hid)|lock%(elements|[_ ]elements)|ra%(hmi|ille%([ _]patterns|patterns))|o%(x%(drawing|[_ ]drawing)|pomofo%([ _]extended|extended)?))|t%(a%(g%(s|alog|banwa)|mil|i%( %(viet|xuan jing symbols|le|tham)|viet|le|_%(xuan_jing_symbols|viet|le|tham)|tham|xuanjingsymbols))|ha%(i|ana)|elugu|i%(finagh|betan)|ransport%(_and_map_symbols| and map symbols|andmapsymbols))|n%(ew%(_tai_lue| tai lue|tailue)|umber%([ _]forms|forms)|ko)|m%(iscellaneous%(_%(mathematical_symbols_[ab]|symbols%(_and_%(arrows|pictographs))?|technical)|mathematicalsymbols-[ab]|technical| %(symbols%( and %(arrows|pictographs))?|mathematical symbols-[ab]|technical)|symbols%(and%(arrows|pictographs))?)|eetei%(mayek|[_ ]mayek)|a%(ndaic|thematical%(alphanumericsymbols|operators|_%(alphanumeric_symbols|operators)| %(operators|alphanumeric symbols))|hjong%(tiles|[_ ]tiles)|layalam)|yanmar%(_extended_a|extended-a| extended-a)?|o%(difier%( tone letters|toneletters|_tone_letters)|ngolian)|usical%(symbols|[_ ]symbols))|p%(h%(a%(gs[-_]pa|istos%(disc|[_ ]disc))|o%(netic%(_extensions%(_supplement)?| extensions%( supplement)?|extensions%(supplement)?)|enician))|rivate%(usearea|_use_area| use area)|laying%(cards|[_ ]cards))|javanese|u%(garitic|nified%(_canadian_aboriginal_syllabics%(_extended)?| canadian aboriginal syllabics%( extended)?|canadianaboriginalsyllabics%(extended)?))|o%(riya|gham|l%([ _]chiki|d%(turkic|_%(south_arabian|turkic|italic|persian)|italic|persian| %(south arabian|turkic|italic|persian)|southarabian)|chiki)|smanya|ptical%(_character_recognition| character recognition|characterrecognition))|v%(e%(dic%(extensions|[_ ]extensions)|rtical%([ _]forms|forms))|a%(i|riation%(_selectors%(_supplement)?| selectors%( supplement)?|selectors%(supplement)?)))|a%(vestan|l%(phabetic%(_presentation_forms| presentation forms|presentationforms)|chemical%(symbols|[_ ]symbols))|ncient%( %(symbols|greek %(musical notation|numbers))|symbols|greek%(musicalnotation|numbers)|_%(symbols|greek_%(musical_notation|numbers)))|egean%([ _]numbers|numbers)|r%(menian|rows|abic%( %(presentation forms-[ab]|supplement)|_%(presentation_forms_[ab]|supplement)|presentationforms-[ab]|supplement)?))|i%(nscriptional%(pa%(rthian|hlavi)|%([_ ]pa%(rthian|hlavi)))|deographic%( description characters|descriptioncharacters|_description_characters)|pa%(extensions|[_ ]extensions)|mperial%(aramaic|[_ ]aramaic))|yi%(%([_ ]%(radicals|syllables))|radicals|syllables|jing%(hexagramsymbols|_hexagram_symbols| hexagram symbols))|k%(a%(yah%(li|[_ ]li)|n%(nada|bun|a%([_ ]supplement|supplement)|gxi%(radicals|[_ ]radicals))|ithi|takana%(phoneticextensions|_phonetic_extensions| phonetic extensions)?)|h%(aroshthi|mer%(symbols|[_ ]symbols)?))|d%(e%(vanagari%([ _]extended|extended)?|seret)|omino%(tiles|[_ ]tiles)|ingbats)|g%(lagolitic|othic|reek%(andcoptic| %(and coptic|extended)|extended|_extended)?|u%(rmukhi|jarati)|e%(o%(metric%([_ ]shapes|shapes)|rgian%([_ ]supplement|supplement)?)|neral%(punctuation|[_ ]punctuation)))|e%(nclosed%( %(ideographic supplement|cjk letters and months|alphanumeric%( supplement|s))|cjklettersandmonths|_%(ideographic_supplement|alphanumeric%(_supplement|s)|cjk_letters_and_months)|alphanumerics%(upplement)?|ideographicsupplement)|moticons|thiopic%(extended%(-a)?| %(extended%(-a)?|supplement)|_%(extended%(_a)?|supplement)|supplement)?|gyptian%(hieroglyphs|[_ ]hieroglyphs))|r%(ejang|u%(nic|mi%(numeralsymbols|_numeral_symbols| numeral symbols)))|c%(jk%(_%(compatibility%(_%(ideographs%(_supplement)?|forms))?|radicals_supplement|unified_ideographs%(_extension_[dacb])?|s%(trokes|ymbols_and_punctuation))|compatibility%(ideographs%(supplement)?|forms)?|unifiedideographs%(extension[dacb])?|radicalssupplement|s%(ymbolsandpunctuation|trokes)| %(unified ideographs%( extension [dacb])?|s%(trokes|ymbols and punctuation)|radicals supplement|compatibility%( %(forms|ideographs%( supplement)?))?))|h%(am|erokee)|u%(neiform%(_numbers_and_punctuation| numbers and punctuation|numbersandpunctuation)?|rrency%(symbols|[_ ]symbols))|y%(rillic%(_%(extended_[ab]|supplementary)| %(extended-[ab]|supplement%(ary)?)|extended-[ab]|supplement%(ary)?)?|priot%([_ ]syllabary|syllabary))|o%(ntrol%(pictures|[_ ]pictures)|unting%(rodnumerals|_rod_numerals| rod numerals)|m%(bining%(halfmarks|diacriticalmarks%(forsymbols|supplement)?| %(marks for symbols|half marks|diacritical marks%( %(for symbols|supplement))?)|marksforsymbols|_%(marks_for_symbols|half_marks|diacritical_marks%(_supplement)?))|mon%( indic number forms|indicnumberforms|_indic_number_forms))|ptic)|arian)|h%(i%(ragana|gh%(_%(private_use_surrogates|surrogates)| %(private use surrogates|surrogates)|surrogates|privateusesurrogates))|ebrew|a%(n%(unoo|gul%(jamo%(extended-[ab])?| %(jamo%( extended-[ab])?|syllables|compatibility jamo)|_%(syllables|jamo%(_extended_[ab])?|compatibility_jamo)|syllables|compatibilityjamo))|lfwidth%( and fullwidth forms|andfullwidthforms|_and_fullwidth_forms))))\}" contained display
++
++syntax match   clojureRegexpPredefinedCharClass "\v%(\\[dDsSwW]|\.)" contained display
++syntax cluster clojureRegexpCharPropertyClasses contains=clojureRegexpPosixCharClass,clojureRegexpJavaCharClass,clojureRegexpUnicodeCharClass
++syntax cluster clojureRegexpCharClasses         contains=clojureRegexpPredefinedCharClass,clojureRegexpCharClass,@clojureRegexpCharPropertyClasses
++syntax region  clojureRegexpCharClass           start="\[" skip=/\\\\\|\\]/ end="]" contained contains=clojureRegexpPredefinedCharClass,@clojureRegexpCharPropertyClasses
++syntax match   clojureRegexpBoundary            "\\[bBAGZz]"                     contained display
++syntax match   clojureRegexpBoundary            "[$^]"                           contained display
++syntax match   clojureRegexpQuantifier          "[?*+][?+]\="                    contained display
++syntax match   clojureRegexpQuantifier          "\v\{\d+%(,|,\d+)?}\??"          contained display
++syntax match   clojureRegexpOr                  "|"                              contained display
++syntax match   clojureRegexpBackRef             "\v\\%([1-9]\d*|k\<[a-zA-z]+\>)" contained display
++
++" Mode modifiers, mode-modified spans, lookaround, regular and atomic
++" grouping, and named-capturing.
++syntax match clojureRegexpMod "\v\(@<=\?:"                        contained display
++syntax match clojureRegexpMod "\v\(@<=\?[xdsmiuU]*-?[xdsmiuU]+:?" contained display
++syntax match clojureRegexpMod "\v\(@<=\?%(\<?[=!]|\>)"            contained display
++syntax match clojureRegexpMod "\v\(@<=\?\<[a-zA-Z]+\>"            contained display
+ 
+-syntax keyword clojureTodo contained FIXME XXX TODO FIXME: XXX: TODO:
++syntax region clojureRegexpGroup start="(" skip=/\\\\\|\\)/ end=")" matchgroup=clojureRegexpGroup contained contains=clojureRegexpMod,clojureRegexpQuantifier,clojureRegexpBoundary,clojureRegexpEscape,@clojureRegexpCharClasses
++syntax region clojureRegexp start=/\#"/ skip=/\\\\\|\\"/ end=/"/ contains=@clojureRegexpCharClasses,clojureRegexpEscape,clojureRegexpQuote,clojureRegexpBoundary,clojureRegexpQuantifier,clojureRegexpOr,clojureRegexpBackRef,clojureRegexpGroup keepend
+ 
+-syntax region clojureSexp   matchgroup=clojureParen start="("  matchgroup=clojureParen end=")"  contains=TOP,@Spell
+-syntax region clojureVector matchgroup=clojureParen start="\[" matchgroup=clojureParen end="\]" contains=TOP,@Spell
+-syntax region clojureMap    matchgroup=clojureParen start="{"  matchgroup=clojureParen end="}"  contains=TOP,@Spell
++syntax keyword clojureCommentTodo contained FIXME XXX TODO FIXME: XXX: TODO:
++
++syntax match clojureComment ";.*$" contains=clojureCommentTodo,@Spell
++syntax match clojureComment "#!.*$"
++
++syntax region clojureSexp   matchgroup=clojureParen start="("  matchgroup=clojureParen end=")" contains=TOP,@Spell
++syntax region clojureVector matchgroup=clojureParen start="\[" matchgroup=clojureParen end="]" contains=TOP,@Spell
++syntax region clojureMap    matchgroup=clojureParen start="{"  matchgroup=clojureParen end="}" contains=TOP,@Spell
+ 
+ " Highlight superfluous closing parens, brackets and braces.
+ syntax match clojureError "]\|}\|)"
+ 
+ syntax sync fromstart
+ 
+-if version >= 600
+-    command -nargs=+ HiLink highlight default link <args>
+-else
+-    command -nargs=+ HiLink highlight link <args>
+-endif
+-
+-HiLink clojureConstant  Constant
+-HiLink clojureBoolean   Boolean
+-HiLink clojureCharacter Character
+-HiLink clojureKeyword   Keyword
+-HiLink clojureNumber    Number
+-HiLink clojureString    String
+-HiLink clojureRegexp    Constant
+-
+-HiLink clojureVariable  Identifier
+-HiLink clojureCond      Conditional
+-HiLink clojureDefine    Define
+-HiLink clojureException Exception
+-HiLink clojureFunc      Function
+-HiLink clojureMacro     Macro
+-HiLink clojureRepeat    Repeat
+-
+-HiLink clojureSpecial   Special
+-HiLink clojureVarArg    Special
+-HiLink clojureQuote     SpecialChar
+-HiLink clojureUnquote   SpecialChar
+-HiLink clojureMeta      SpecialChar
+-HiLink clojureDeref     SpecialChar
+-HiLink clojureAnonArg   SpecialChar
+-HiLink clojureDispatch  SpecialChar
+-
+-HiLink clojureComment   Comment
+-HiLink clojureTodo      Todo
++highlight default link clojureConstant		Constant
++highlight default link clojureBoolean		Boolean
++highlight default link clojureCharacter		Character
++highlight default link clojureKeyword		Keyword
++highlight default link clojureNumber		Number
++highlight default link clojureString		String
++highlight default link clojureStringEscape	Character
++
++highlight default link clojureRegexp			Constant
++highlight default link clojureRegexpEscape		Character
++highlight default link clojureRegexpCharClass		SpecialChar
++highlight default link clojureRegexpPosixCharClass	clojureRegexpCharClass
++highlight default link clojureRegexpJavaCharClass	clojureRegexpCharClass
++highlight default link clojureRegexpUnicodeCharClass	clojureRegexpCharClass
++highlight default link clojureRegexpPredefinedCharClass	clojureRegexpCharClass
++highlight default link clojureRegexpBoundary		SpecialChar
++highlight default link clojureRegexpQuantifier		SpecialChar
++highlight default link clojureRegexpMod			SpecialChar
++highlight default link clojureRegexpOr			SpecialChar
++highlight default link clojureRegexpBackRef		SpecialChar
++highlight default link clojureRegexpGroup		clojureRegexp
++highlight default link clojureRegexpQuoted		clojureString
++highlight default link clojureRegexpQuote		clojureRegexpBoundary
++
++highlight default link clojureVariable	Identifier
++highlight default link clojureCond	Conditional
++highlight default link clojureDefine	Define
++highlight default link clojureException	Exception
++highlight default link clojureFunc	Function
++highlight default link clojureMacro	Macro
++highlight default link clojureRepeat	Repeat
++
++highlight default link clojureSpecial	Special
++highlight default link clojureVarArg	Special
++highlight default link clojureQuote	SpecialChar
++highlight default link clojureUnquote	SpecialChar
++highlight default link clojureMeta	SpecialChar
++highlight default link clojureDeref	SpecialChar
++highlight default link clojureAnonArg	SpecialChar
++highlight default link clojureDispatch	SpecialChar
+ 
+-HiLink clojureError     Error
++highlight default link clojureComment		Comment
++highlight default link clojureCommentTodo	Todo
+ 
+-HiLink clojureParen     Delimiter
++highlight default link clojureError	Error
+ 
+-delcommand HiLink
++highlight default link clojureParen	Delimiter
+ 
+ let b:current_syntax = "clojure"
+ 
+-" vim:sts=4 sw=4 et:
++" vim:sts=8:sw=8:ts=8:noet:smc=0
+diff -Naur vim74.orig/runtime/syntax/css.vim vim74/runtime/syntax/css.vim
+--- vim74.orig/runtime/syntax/css.vim	2013-07-23 19:08:29.000000000 +0000
++++ vim74/runtime/syntax/css.vim	2013-10-01 16:15:43.760538770 +0000
+@@ -6,7 +6,7 @@
+ "               Nikolai Weibull (Add CSS2 support)
+ " Maintainer:   Jules Wang      <w.jq0722@gmail.com>
+ " URL:          https://github.com/JulesWang/css.vim
+-" Last Change:  2013 Jul 23
++" Last Change:  2013 Sep 24
+ 
+ " For version 5.x: Clear all syntax items
+ " For version 6.x: Quit when a syntax file was already loaded
+@@ -37,12 +37,12 @@
+ syn keyword cssTagName option p param pre q s samp script select small
+ syn keyword cssTagName span strike strong style sub sup table tbody td
+ syn keyword cssTagName textarea tfoot th thead title tr tt ul u var
+-syn keyword cssTagName object
++syn keyword cssTagName object svg
+ 
+-" HTML5 new tags 5*6=30
+-syn keyword cssTagName article aside audio bdi canvas command
+-syn keyword cssTagName datalist details embed figcaption figure footer
+-syn keyword cssTagName header hgroup keygen mark meter nav
++" 34 HTML5 tags
++syn keyword cssTagName article aside audio bdi canvas command data
++syn keyword cssTagName datalist details dialog embed figcaption figure footer
++syn keyword cssTagName header hgroup keygen main mark menuitem meter nav
+ syn keyword cssTagName output progress rt rp ruby section
+ syn keyword cssTagName source summary time track video wbr
+ 
+@@ -50,14 +50,12 @@
+ syn keyword cssDeprecated acronym applet basefont big center dir
+ syn keyword cssDeprecated font frame frameset noframes strike tt
+ 
+-"syn match cssTagName "\<table\>"
+ syn match cssTagName "\*"
+ 
+ " selectors
+-syn match cssSelectorOp "[,>+]"
++syn match cssSelectorOp "[,>+~]"
+ syn match cssSelectorOp2 "[~|^$*]\?=" contained
+-" FIXME: add HTML5 attribute
+-syn region cssAttributeSelector matchgroup=cssSelectorOp start="\[" end="]" transparent contains=cssUnicodeEscape,cssSelectorOp2,cssStringQ,cssStringQQ
++syn region cssAttributeSelector matchgroup=cssSelectorOp start="\[" end="]" contains=cssUnicodeEscape,cssSelectorOp2,cssStringQ,cssStringQQ
+ 
+ " .class and #id
+ syn match cssClassName "\.[A-Za-z][A-Za-z0-9_-]\+"
+@@ -68,26 +66,55 @@
+ syn match cssIdentifier "#[A-Za-z_@][A-Za-z0-9_@-]*"
+ endtry
+ 
+-syn match cssTagName "@page\>" nextgroup=cssDefinition
+-" FIXME: use cssVendor here
+-syn match cssTagName "@\(-\(webkit\|moz\|o\|ms\)-\)\=keyframes\>" nextgroup=cssDefinition
+-
+-syn match cssMedia "@media\>" nextgroup=cssMediaType skipwhite skipnl
+-syn keyword cssMediaType contained screen print aural braile embosed handheld projection ty tv all nextgroup=cssMediaComma,cssMediaBlock skipwhite skipnl
+-"syn match cssMediaComma "," nextgroup=cssMediaType skipwhite skipnl
+-syn region cssMediaBlock transparent matchgroup=cssBraces start='{' end='}' contains=cssTagName,cssError,cssComment,cssDefinition,cssURL,cssUnicodeEscape,cssIdentifier
+-
+-syn match cssValueInteger contained "[-+]\=\d\+"
+-syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\="
+-syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\)"
+-syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)"
+-syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)"
+-syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)"
++" digits
++syn match cssValueInteger contained "[-+]\=\d\+" contains=cssUnitDecorators
++syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\=" contains=cssUnitDecorators
++syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\)" contains=cssUnitDecorators
++syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)" contains=cssUnitDecorators
++syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)" contains=cssUnitDecorators
++syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)" contains=cssUnitDecorators
++
++" @media
++syn match cssMedia "@media\>"  nextgroup=cssMediaQuery,cssMediaBlock skipwhite skipnl
++syn match cssMediaQuery /\(only\|not\)\=\s*[a-z]*\(\s\|,\)\@=\(\(\s\+and\)\=\s\+(.\{-})\)*/ contained skipwhite skipnl contains=cssMediaProp,cssValueLength,cssMediaKeyword,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType nextgroup=cssMediaBlock,cssMediaComma
++syn keyword cssMediaType contained screen print aural braille embossed handheld projection tty tv speech all contained skipwhite skipnl
++syn keyword cssMediaKeyword only not and contained
++syn region cssMediaBlock transparent matchgroup=cssBraces start='{' end='}' contains=css.*Attr,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssTagName,cssClassName,cssIdentifier,cssPseudoClass,cssSelectorOp,cssSelectorOp2,cssAttributeSelector fold
++syn match cssMediaComma "," nextgroup=cssMediaQuery skipwhite skipnl contained
++
++" Reference: http://www.w3.org/TR/css3-mediaqueries/
++syn keyword cssMediaProp contained width height orientation scan grid
++syn match cssMediaProp contained /\(\(device\)-\)\=aspect-ratio/
++syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-pixel-ratio/
++syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-\(height\|width\)/
++syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(height\|width\|resolution\|monochrome\|color\(-index\)\=\)/
++syn keyword cssMediaAttr contained portrait landscape progressive interlace
++
++" @page
++syn match cssPage "@page\>"  nextgroup=cssPagePseudo,cssDefinition  skipwhite skipnl
++syn match cssPagePseudo /:\(left\|right\|first\|\)/ nextgroup=cssDefinition contained skipwhite skipnl
++syn match cssPageHeaderProp /@\(\(top\|left\|right\|bottom\)-\(left\|center\|right\|middle\|bottom\)\)\(-corner\)\=/ contained
++syn keyword cssPageProp content size contained
++
++" @keyframe
++syn match cssKeyFrame "@\(-[a-z]*-\)\=keyframes\>\(\s*\<\S*\>\)\="  nextgroup=cssKeyFrameBlock contains=cssVendor skipwhite skipnl
++syn region cssKeyFrameBlock contained transparent matchgroup=cssBraces start="{" end="}" contains=cssKeyFrameSelector,cssDefinition
++syn match cssKeyFrameSelector /\(\d*%\|from\|to\)\=/  contained skipwhite skipnl
++
++" @import
++syn region cssInclude start=/@import\>/ end=/\ze;/ contains=cssComment,cssURL,cssUnicodeEscape,cssMediaQuery,cssStringQ,cssStringQQ,cssIncludeKeyword
++syn region cssInclude start=/@charset\>/ end=/\ze;/ contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssIncludeKeyword
++syn region cssInclude start=/@namespace\>/ end=/\ze;/ contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssIncludeKeyword
++syn match cssIncludeKeyword /\(@import\|@charset\|@namespace\)/ contained
+ 
++" @font-face
++" http://www.w3.org/TR/css3-fonts/#at-font-face-rule
+ syn match cssFontDescriptor "@font-face\>" nextgroup=cssFontDescriptorBlock skipwhite skipnl
+ syn region cssFontDescriptorBlock contained transparent matchgroup=cssBraces start="{" end="}" contains=cssComment,cssError,cssUnicodeEscape,cssFontProp,cssFontAttr,cssCommonAttr,cssStringQ,cssStringQQ,cssFontDescriptorProp,cssValue.*,cssFontDescriptorFunction,cssUnicodeRange,cssFontDescriptorAttr
+-syn match cssFontDescriptorProp contained "\<\(unicode-range\|unit-per-em\|panose-1\|cap-height\|x-height\|definition-src\)\>"
+-syn keyword cssFontDescriptorProp contained src stemv stemh slope ascent descent widths bbox baseline centerline mathline topline
++"syn match cssFontDescriptorProp contained "\<\(unicode-range\|unit-per-em\|panose-1\|cap-height\|x-height\|definition-src\)\>"
++"syn keyword cssFontDescriptorProp contained src stemv stemh slope ascent descent widths bbox baseline centerline mathline topline
++syn keyword cssFontDescriptorProp contained src
++syn match cssFontDescriptorProp contained "\<unicode-range\>"
+ syn keyword cssFontDescriptorAttr contained all
+ syn region cssFontDescriptorFunction contained matchgroup=cssFunctionName start="\<\(uri\|url\|local\|format\)\s*(" end=")" contains=cssStringQ,cssStringQQ oneline keepend
+ syn match cssUnicodeRange contained "U+[0-9A-Fa-f?]\+"
+@@ -124,7 +151,7 @@
+ syn keyword cssColor contained thistle tomato turquoise violet wheat
+ syn keyword cssColor contained whitesmoke yellowgreen
+ 
+-" FIXME: These are actually case-insentivie too, but (a) specs recommend using
++" FIXME: These are actually case-insensitive too, but (a) specs recommend using
+ " mixed-case (b) it's hard to highlight the word `Background' correctly in
+ " all situations
+ syn case match
+@@ -135,48 +162,73 @@
+ 
+ syn match cssColor contained "\<transparent\>"
+ syn match cssColor contained "\<white\>"
+-syn match cssColor contained "#[0-9A-Fa-f]\{3\}\>"
+-syn match cssColor contained "#[0-9A-Fa-f]\{6\}\>"
++syn match cssColor contained "#[0-9A-Fa-f]\{3\}\>" contains=cssUnitDecorators
++syn match cssColor contained "#[0-9A-Fa-f]\{6\}\>" contains=cssUnitDecorators
+ 
+-syn region cssURL contained matchgroup=cssFunctionName start="\<url\s*(" end=")" oneline keepend
+-syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\)\s*(" end=")" oneline keepend
+-syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\)\s*(" end=")" oneline keepend
+-syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear\|radial\)-gradient\s*(" end=")" oneline keepend
+-syn region cssFunction contained matchgroup=cssFunctionName start="\<\(matrix\(3d\)\=\|scale\(3d\|X\|Y|\Z\)\=\|translate\(3d\|X\|Y|\Z\)\=\|skew\(X\|Y\)\=\|rotate\(3d\|X\|Y|\Z\)\=\|perspective\)\s*(" end=")" oneline keepend
++syn region cssURL contained matchgroup=cssFunctionName start="\<url\s*(" end=")" oneline extend
++syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\|steps\)\s*(" end=")" oneline  contains=cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma
++syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\|color-stop\|from\|to\)\s*(" end=")" oneline  contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma,cssFunction
++syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\)\=\gradient\s*(" end=")" oneline  contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunction,cssGradientAttr,cssFunctionComma
++syn region cssFunction contained matchgroup=cssFunctionName start="\<\(matrix\(3d\)\=\|scale\(3d\|X\|Y\|Z\)\=\|translate\(3d\|X\|Y\|Z\)\=\|skew\(X\|Y\)\=\|rotate\(3d\|X\|Y\|Z\)\=\|perspective\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssValueAngle,cssFunctionComma
++syn keyword cssGradientAttr contained top bottom left right cover center middle ellipse at
++syn match cssFunctionComma contained ","
++
++" Common Prop and Attr
++syn keyword cssCommonAttr contained auto none inherit all default normal
++syn keyword cssCommonAttr contained top bottom center stretch hidden visible
++"------------------------------------------------
++" CSS Animations
++" http://www.w3.org/TR/css3-animations/
++syn match cssAnimationProp contained "\<animation\(-\(delay\|direction\|duration\|fill-mode\|name\|play-state\|timing-function\)\)\=\>"
++
++" animation-direction attributes
++syn keyword cssAnimationAttr contained alternate reverse
++syn match cssAnimationAttr contained "\<alternate-reverse\>"
++
++" animation-fill-mode attributes
++syn keyword cssAnimationAttr contained forwards backwards both
++
++" animation-play-state attributes
++syn keyword cssAnimationAttr contained running paused
++"------------------------------------------------
++"  CSS Backgrounds and Borders Module Level 3
++"  http://www.w3.org/TR/css3-background/
++syn match cssBackgroundProp contained "\<background\(-\(attachment\|clip\|color\|image\|origin\|position\|repeat\|size\)\)\=\>"
++" background-attachment attributes
++syn keyword cssBackgroundAttr contained scroll fixed local
+ 
+-" Prop and Attr
+-" Reference: http://www.w3schools.com/cssref/default.asp
+-syn keyword cssCommonAttr contained auto none inherit all
+-syn keyword cssCommonAttr contained top bottom
+-syn keyword cssCommonAttr contained medium normal
++" background-position attributes
++syn keyword cssBackgroundAttr contained left center right top bottom
+ 
++" background-repeat attributes
++syn match cssBackgroundAttr contained "\<no-repeat\>"
++syn match cssBackgroundAttr contained "\<repeat\(-[xy]\)\=\>"
++syn keyword cssBackgroundAttr contained space round
+ 
+-syn match cssAnimationProp contained "\<animation\(-\(name\|duration\|timing-function\|delay\|iteration-cout\|play-state\)\)\=\>"
+-
++" background-size attributes
++syn keyword cssBackgroundAttr contained cover contain
+ 
+-syn keyword cssAnimationAttr contained infinite alternate paused running
+-" bugfix: escape linear-gradient
+-syn match cssAnimationAttr contained "\<linear\(-gradient\)\@!\>"
+-syn match cssAnimationAttr contained "\<ease\(-\(in-out\|out\|in\)\)\=\>"
++syn match cssBorderProp contained "\<border\(-\(top\|right\|bottom\|left\)\)\=\(-\(width\|color\|style\)\)\=\>"
++syn match cssBorderProp contained "\<border\(-\(top\|bottom\)-\(left\|right\)\)\=-radius\>"
++syn match cssBorderProp contained "\<border-image\(-\(outset\|repeat\|slice\|source\|width\)\)\=\>"
++syn match cssBorderProp contained "\<box-decoration-break\>"
++syn match cssBorderProp contained "\<box-shadow\>"
+ 
+-syn match cssBackgroundProp contained "\<background\(-\(color\|image\|attachment\|position\|clip\|origin\|size\)\)\=\>"
+-syn keyword cssBackgroundAttr contained center fixed over contain
+-syn match cssBackgroundAttr contained "\<no-repeat\>"
+-syn match cssBackgroundAttr contained "\<repeat\(-[xy]\)\=\>"
+-syn match cssBackgroundAttr contained "\<\(border\|content\|padding\)-box\>"
++" border-image attributes
++syn keyword cssBorderAttr contained stretch repeat round space fill
+ 
++" border-style attributes
++syn keyword cssBorderAttr contained dotted dashed solid double groove ridge inset outset
+ 
+-syn match cssBorderOutlineProp contained "\<border\(-\(top\|right\|bottom\|left\)\)\=\(-\(width\|color\|style\)\)\=\>"
+-syn match cssBorderOutlineProp contained "\<outline\(-\(width\|style\|color\)\)\=\>"
+-syn match cssBorderOutlineProp contained "\<border-\(top\|bottom\)-\(left\|right\)\(-radius\)\=\>"
+-syn match cssBorderOutlineProp contained "\<border-image\(-\(outset\|repeat\|slice\|source\|width\)\)\=\>"
+-syn match cssBorderOutlineProp contained "\<border-radius\>"
+-syn keyword cssBorderOutlineAttr contained thin thick medium
+-syn keyword cssBorderOutlineAttr contained dotted dashed solid double groove ridge inset outset
+-syn keyword cssBorderOutlineAttr contained hidden visible scroll collapse
+-syn keyword cssBorderOutlineAttr contained stretch round
++" border-width attributes
++syn keyword cssBorderAttr contained thin thick medium
+ 
++" box-decoration-break attributes
++syn keyword cssBorderAttr contained clone slice
++"------------------------------------------------
+ 
++syn match cssBoxProp contained "\<padding\(-\(top\|right\|bottom\|left\)\)\=\>"
++syn match cssBoxProp contained "\<margin\(-\(top\|right\|bottom\|left\)\)\=\>"
+ syn match cssBoxProp contained "\<overflow\(-\(x\|y\|style\)\)\=\>"
+ syn match cssBoxProp contained "\<rotation\(-point\)=\>"
+ syn keyword cssBoxAttr contained visible hidden scroll auto
+@@ -193,30 +245,51 @@
+ 
+ " shadow and sizing are in other property groups
+ syn match cssFlexibleBoxProp contained "\<box-\(align\|direction\|flex\|ordinal-group\|orient\|pack\|shadow\|sizing\)\>"
+-syn keyword cssFlexibleBoxAttr contained start end center baseline stretch
+-syn keyword cssFlexibleBoxAttr contained normal reverse
++syn keyword cssFlexibleBoxAttr contained start end baseline
++syn keyword cssFlexibleBoxAttr contained reverse
+ syn keyword cssFlexibleBoxAttr contained single mulitple
+ syn keyword cssFlexibleBoxAttr contained horizontal
+-" bugfix: escape vertial-align
+-syn match cssFlexibleBoxAttr contained "\<vertical\(-align\)\@!\>"
++syn match cssFlexibleBoxAttr contained "\<vertical\(-align\)\@!\>" "escape vertical-align
+ syn match cssFlexibleBoxAttr contained "\<\(inline\|block\)-axis\>"
+ 
+-
+-syn match cssFontProp contained "\<font\(-\(family\|style\|variant\|weight\|size\(-adjust\)\=\|stretch\)\)\=\>"
+-syn match cssFontAttr contained "\<\(sans-\)\=\<serif\>"
+-syn match cssFontAttr contained "\<small\(-\(caps\|caption\)\)\=\>"
+-syn match cssFontAttr contained "\<x\{1,2\}-\(large\|small\)\>"
++" CSS Fonts Module Level 3
++" http://www.w3.org/TR/css-fonts-3/
++syn match cssFontProp contained "\<font\(-\(family\|\|feature-settings\|kerning\|language-override\|size\(-adjust\)\=\|stretch\|style\|synthesis\|variant\(-\(alternates\|caps\|east-asian\|ligatures\|numeric\|position\)\)\=\|weight\)\)\=\>"
++" font attributes
++syn keyword cssFontAttr contained icon menu caption
++syn match cssFontAttr contained "\<small-\(caps\|caption\)\>"
+ syn match cssFontAttr contained "\<message-box\>"
+ syn match cssFontAttr contained "\<status-bar\>"
+-syn match cssFontAttr contained "\<\(\(ultra\|extra\|semi\|status-bar\)-\)\=\(condensed\|expanded\)\>"
+-syn keyword cssFontAttr contained cursive fantasy monospace italic oblique
+-syn keyword cssFontAttr contained bold bolder light lighter larger smaller
+-syn keyword cssFontAttr contained icon menu caption
+-syn keyword cssFontAttr contained large smaller larger narrower wider
+-syn keyword cssFontAttr contained Courier Arial Georgia Times
++syn keyword cssFontAttr contained larger smaller
++syn match cssFontAttr contained "\<\(x\{1,2\}-\)\=\(large\|small\)\>"
++
++" font-family attributes
++syn match cssFontAttr contained "\<\(sans-\)\=serif\>"
++syn keyword cssFontAttr contained Antiqua Arial Black Book Charcoal Comic Courier Dingbats Gadget Geneva Georgia Grande Helvetica Impact Linotype Lucida MS Monaco Neue New Palatino Roboto Roman Symbol Tahoma Times Trebuchet Unicode Verdana Webdings Wingdings York Zapf
++syn keyword cssFontAttr contained cursive fantasy monospace
+ 
++" font-feature-settings attributes
++syn keyword cssFontAttr contained on off
+ 
+-syn keyword cssGeneratedContentProp contained content quotes crop
++" font-stretch attributes
++syn match cssFontAttr contained "\<\(\(ultra\|extra\|semi\)-\)\=\(condensed\|expanded\)\>"
++
++" font-style attributes
++syn keyword cssFontAttr contained italic oblique
++
++" font-variant-caps attributes
++syn match cssFontAttr contained "\<\(all-\)\=\(small-\|petite-\|titling-\)caps\>"
++syn keyword cssFontAttr contained unicase
++
++" font-weight attributes
++syn keyword cssFontAttr contained bold bolder lighter
++"------------------------------------------------
++
++" Webkit specific property/attributes
++syn match cssFontProp contained "\<font-smooth\>"
++syn match cssFontAttr contained "\<\(subpixel-\)\=\antialiased\>"
++
++syn keyword cssGeneratedContentProp contained quotes crop
+ syn match cssGeneratedContentProp contained "\<counter-\(reset\|increment\)\>"
+ syn match cssGeneratedContentProp contained "\<move-to\>"
+ syn match cssGeneratedContentProp contained "\<page-policy\>"
+@@ -234,22 +307,16 @@
+ syn keyword cssListAttr contained disc circle square hebrew armenian georgian
+ syn keyword cssListAttr contained inside outside
+ 
+-
+-syn match cssMarginProp contained "\<margin\(-\(top\|right\|bottom\|left\)\)\=\>"
+-
+ syn match cssMultiColumnProp contained "\<column\(-\(\break-\(after\|before\)\|count\|gap\|rule\(-\(color\|style\|width\)\)\=\)\|span\|width\)\=\>"
+ 
+-
+-syn match cssPaddingProp contained "\<padding\(-\(top\|right\|bottom\|left\)\)\=\>"
+-
+ syn keyword cssPositioningProp contained bottom clear clip display float left
+ syn keyword cssPositioningProp contained position right top visibility
+ syn match cssPositioningProp contained "\<z-index\>"
+-syn keyword cssPositioningAttr contained block inline compact
+-syn match cssPositioningAttr contained "\<table\(-\(row-gorup\|\(header\|footer\)-group\|row\|column\(-group\)\=\|cell\|caption\)\)\=\>"
++syn keyword cssPositioningAttr contained block compact
++syn match cssPositioningAttr contained "\<table\(-\(row-group\|\(header\|footer\)-group\|row\|column\(-group\)\=\|cell\|caption\)\)\=\>"
+ syn keyword cssPositioningAttr contained left right both
+ syn match cssPositioningAttr contained "\<list-item\>"
+-syn match cssPositioningAttr contained "\<inline-\(block\|table\)\>"
++syn match cssPositioningAttr contained "\<inline\(-\(block\|box\|table\)\)\=\>"
+ syn keyword cssPositioningAttr contained static relative absolute fixed
+ 
+ syn match cssPrintProp contained "\<page\(-break-\(before\|after\|inside\)\)\=\>"
+@@ -262,18 +329,18 @@
+ 
+ syn keyword cssTextProp contained color direction
+ syn match cssTextProp "\<\(\(word\|letter\)-spacing\|text\(-\(decoration\|transform\|align\|index\|shadow\)\)\=\|vertical-align\|unicode-bidi\|line-height\)\>"
+-syn match cssTextProp contained "\<text-\(justify\|\outline\|overflow\|warp\|align-last\)\>"
++syn match cssTextProp contained "\<text-\(justify\|outline\|warp\|align-last\|size-adjust\|rendering\|stroke\|indent\)\>"
+ syn match cssTextProp contained "\<word-\(break\|\wrap\)\>"
+ syn match cssTextProp contained "\<white-space\>"
+ syn match cssTextProp contained "\<hanging-punctuation\>"
+ syn match cssTextProp contained "\<punctuation-trim\>"
+ syn match cssTextAttr contained "\<line-through\>"
+-syn match cssTextAttr contained "\<text-indent\>"
+ syn match cssTextAttr contained "\<\(text-\)\=\(top\|bottom\)\>"
+ syn keyword cssTextAttr contained ltr rtl embed nowrap
+ syn keyword cssTextAttr contained underline overline blink sub super middle
+ syn keyword cssTextAttr contained capitalize uppercase lowercase
+-syn keyword cssTextAttr contained center justify baseline sub super
++syn keyword cssTextAttr contained justify baseline sub super
++syn keyword cssTextAttr contained optimizeLegibility optimizeSpeed
+ syn match cssTextAttr contained "\<pre\(-\(line\|wrap\)\)\=\>"
+ syn match cssTextAttr contained "\<\(allow\|force\)-end\>"
+ syn keyword cssTextAttr contained start end adjacent
+@@ -283,22 +350,69 @@
+ syn match cssTextAttr contained "\<break-all\>"
+ syn match cssTextAttr contained "\<break-word\>"
+ syn keyword cssTextAttr contained hyphenate
+-
++syn match cssTextAttr contained "\<bidi-override\>"
+ 
+ syn match cssTransformProp contained "\<transform\(-\(origin\|style\)\)\=\>"
+ syn match cssTransformProp contained "\<perspective\(-origin\)\=\>"
+ syn match cssTransformProp contained "\<backface-visibility\>"
+ 
++" CSS Transitions
++" http://www.w3.org/TR/css3-transitions/
+ syn match cssTransitionProp contained "\<transition\(-\(delay\|duration\|property\|timing-function\)\)\=\>"
+ 
+-syn match cssUIProp contained "\<nav-\(down\|index\|left\|right\|up\)\=\>"
+-syn match cssUIProp contained "\<outline-offset\>"
++" transition-time-function attributes
++syn match cssTransitionAttr contained "\<linear\(-gradient\)\@!\>"
++syn match cssTransitionAttr contained "\<ease\(-\(in-out\|out\|in\)\)\=\>"
++syn match cssTransitionAttr contained "\<step\(-start\|-end\)\=\>"
++"------------------------------------------------
++" CSS Basic User Interface Module Level 3 (CSS3 UI)
++" http://www.w3.org/TR/css3-ui/
+ syn match cssUIProp contained "\<box-sizing\>"
+-syn keyword cssUIProp contained appearance icon resize
+-syn keyword cssUIAttr contained window button menu field
++syn match cssUIAttr contained "\<\(content\|padding\|border\)\(-box\)\=\>"
++
++syn keyword cssUIProp contained cursor
++syn match cssUIAttr contained "\<\(\([ns]\=[ew]\=\)\|col\|row\|nesw\|nwse\)-resize\>"
++syn keyword cssUIAttr contained crosshair help move pointer alias copy
++syn keyword cssUIAttr contained progress wait text cell move
++syn match cssUIAttr contained "\<context-menu\>"
++syn match cssUIAttr contained "\<no-drop\>"
++syn match cssUIAttr contained "\<not-allowed\>"
++syn match cssUIAttr contained "\<all-scroll\>"
++syn match cssUIAttr contained "\<\(vertical-\)\=text\>"
++syn match cssUIAttr contained "\<zoom\(-in\|-out\)\=\>"
++
++syn match cssUIProp contained "\<ime-mode\>"
++syn keyword cssUIAttr contained active inactive disabled
++
++syn match cssUIProp contained "\<nav-\(down\|index\|left\|right\|up\)\=\>"
++syn match cssUIProp contained "\<outline\(-\(width\|style\|color\|offset\)\)\=\>"
++syn keyword cssUIAttr contained invert
++
++syn keyword cssUIProp contained icon resize
++syn keyword cssUIAttr contained both horizontal vertical
++
++syn match cssUIProp contained "\<text-overflow\>"
++syn keyword cssUIAttr contained clip ellipsis
++
++" Already highlighted Props:  font content
++"------------------------------------------------
++" Webkit/iOS specific attributes
++syn match cssUIAttr contained '\(preserve-3d\)'
++" IE specific attributes
++syn match cssIEUIAttr contained '\(bicubic\)'
++
++" Webkit/iOS specific properties
++syn match cssUIProp contained '\(tap-highlight-color\|user-select\|touch-callout\)'
++" IE specific properties
++syn match cssIEUIProp contained '\(interpolation-mode\|zoom\|filter\)'
++
++" Webkit/Firebox specific properties/attributes
++syn keyword cssUIProp contained appearance
++syn keyword cssUIAttr contained window button field icon document menu
++
+ 
+ syn match cssAuralProp contained "\<\(pause\|cue\)\(-\(before\|after\)\)\=\>"
+-syn match cssAuralProp contained "\<\(play-during\|speech-rate\|voice-family\|pitch\(-range\)\=\|speak\(-\(punctuation\|numerals\)\)\=\)\>"
++syn match cssAuralProp contained "\<\(play-during\|speech-rate\|voice-family\|pitch\(-range\)\=\|speak\(-\(punctuation\|numeral\|header\)\)\=\)\>"
+ syn keyword cssAuralProp contained volume during azimuth elevation stress richness
+ syn match cssAuralAttr contained "\<\(x-\)\=\(soft\|loud\)\>"
+ syn keyword cssAuralAttr contained silent
+@@ -307,48 +421,39 @@
+ syn match cssAuralAttr contained "\<\(left\|right\)-side\>"
+ syn match cssAuralAttr contained "\<\(far\|center\)-\(left\|center\|right\)\>"
+ syn keyword cssAuralAttr contained leftwards rightwards behind
+-syn keyword cssAuralAttr contained below level above higher
+-syn match cssAuralAttr contained "\<\(x-\)\=\(slow\|fast\)\>"
++syn keyword cssAuralAttr contained below level above lower higher
++syn match cssAuralAttr contained "\<\(x-\)\=\(slow\|fast\|low\|high\)\>"
+ syn keyword cssAuralAttr contained faster slower
+ syn keyword cssAuralAttr contained male female child code digits continuous
+-syn match cssAuralAttr contained "\<lower\>"
+ 
+-" cursor
+-syn keyword cssUIProp contained cursor
+-syn match cssUIAttr contained "\<[ns]\=[ew]\=-resize\>"
+-syn keyword cssUIAttr contained crosshair default help move pointer
+-syn keyword cssUIAttr contained progress wait
+-
+-" FIXME: I could not find them in reference
+-syn keyword cssUIAttr contained invert maker size zoom
+-syn match cssRenderAttr contained "\<run-in\>"
+-syn match cssRenderAttr contained "\<text-rendering\>"
+-syn match cssRenderAttr contained "\<font-smoothing\>"
+-syn match cssRenderProp contained "\<marker-offset\>"
+-syn match cssRenderAttr contained "\<bidi-override\>"
++" mobile text
++syn match cssMobileTextProp contained "\<text-size-adjust\>"
++
+ 
+ 
+-" FIXME: This allows cssMediaBlock before the semicolon, which is wrong.
+-syn region cssInclude start="@import" end=";" contains=cssComment,cssURL,cssUnicodeEscape,cssMediaType
+ syn match cssBraces contained "[{}]"
+ syn match cssError contained "{@<>"
+-syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=css.*Attr,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition
++syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=cssAttrRegion,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks keepend fold
+ syn match cssBraceError "}"
++syn match cssAttrComma ","
+ 
+ " Pseudo class
+-syn match cssPseudoClass ":[A-Za-z0-9_-]*" contains=cssPseudoClassId,cssUnicodeEscape
+-syn keyword cssPseudoClassId link visited active hover focus before after left right lang
+-syn match cssPseudoClassId contained "\<first\(-\(line\|letter\|child\)\)\=\>"
+-" FIXME: handle functions.
+-"syn region cssPseudoClassLang matchgroup=cssPseudoClassId start="lang(" end=")"
+-syn match cssPseudoClassId contained "\<\(last\|only\|nth\|nth-last\)-child\>"
+-syn match cssPseudoClassId contained "\<\(first\|last\|only\|nth\|nth-last\)-of-type\>"
+-syn keyword cssPseudoClassId root empty target enable disabled checked not invalid
+-syn match cssPseudoClassId contained  "::\(-moz-\)\=selection"
++" http://www.w3.org/TR/css3-selectors/
++syn match cssPseudoClass ":[A-Za-z0-9_-]*" contains=cssNoise,cssPseudoClassId,cssUnicodeEscape,cssVendor,cssPseudoClassFn
++syn keyword cssPseudoClassId contained link visited active hover before after left right
++syn keyword cssPseudoClassId contained root empty target enable disabled checked invalid
++syn match cssPseudoClassId contained "\<first-\(line\|letter\)\>"
++syn match cssPseudoClassId contained "\<\(first\|last\|only\)-\(of-type\|child\)\>"
++syn region cssPseudoClassFn contained matchgroup=cssFunctionName start="\<\(not\|lang\|\(nth\|nth-last\)-\(of-type\|child\)\)(" end=")"
++" ------------------------------------
++" Vendor specific properties
++syn match cssPseudoClassId contained  "\<selection\>"
++syn match cssPseudoClassId contained  "\<focus\(-inner\)\=\>"
++syn match cssPseudoClassId contained  "\<\(input-\)\=placeholder\>"
++
+ 
+ " Comment
+-syn region cssComment start="/\*" end="\*/" contains=@Spell
+-syn region cssComment start="//" skip="\\$" end="$" keepend contains=@Spell
++syn region cssComment start="/\*" end="\*/" contains=@Spell fold
+ 
+ syn match cssUnicodeEscape "\\\x\{1,6}\s\?"
+ syn match cssSpecialCharQQ +\\"+ contained
+@@ -359,6 +464,26 @@
+ " Vendor Prefix
+ syn match cssVendor contained "\(-\(webkit\|moz\|o\|ms\)-\)"
+ 
++" Various CSS Hack characters
++" In earlier versions of IE (6 and 7), one can prefix property names
++" with a _ or * to isolate those definitions to particular versions of IE
++" This is purely decorative and therefore we assign to the same highlight
++" group to cssVendor, for more information:
++" http://www.paulirish.com/2009/browser-specific-css-hacks/
++syn match cssHacks contained /\(_\|*\)/
++
++" Misc highlight groups
++syntax match cssUnitDecorators /\(#\|-\|%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\|Hz\|kHz\|s\|ms\|deg\|grad\|rad\)/ contained
++syntax match cssNoise contained /\(:\|;\|\/\)/
++
++" Attr Enhance
++" Some keywords are both Prop and Attr, so we have to handle them
++syn region cssAttrRegion start=/:/ end=/;/ contained keepend contains=css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssTransitionHackProp,cssAttrComma,cssNoise
++
++" Hack for transition
++" The 'transition' Prop has Props after ':'.
++syn region cssAttrRegion start=/transition\s*:/ end=/;/ contained keepend contains=css.*Prop,css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssTransitionHackProp,cssAttrComma,cssNoise
++
+ 
+ if main_syntax == "css"
+   syn sync minlines=10
+@@ -377,73 +502,76 @@
+ 
+   HiLink cssComment Comment
+   HiLink cssVendor Comment
++  HiLink cssHacks Comment
+   HiLink cssTagName Statement
+   HiLink cssDeprecated Error
+   HiLink cssSelectorOp Special
+   HiLink cssSelectorOp2 Special
++  HiLink cssAttrComma Special
+ 
+-  HiLink cssAnimationProp StorageClass
+-  HiLink cssBackgroundProp StorageClass
+-  HiLink cssBorderOutlineProp StorageClass
+-  HiLink cssBoxProp StorageClass
+-  HiLink cssColorProp StorageClass
+-  HiLink cssContentForPagedMediaProp StorageClass
+-  HiLink cssDimensionProp StorageClass
+-  HiLink cssFlexibleBoxProp StorageClass
+-  HiLink cssFontProp StorageClass
+-  HiLink cssGeneratedContentProp StorageClass
+-  HiLink cssGridProp StorageClass
+-  HiLink cssHyerlinkProp StorageClass
+-  HiLink cssLineboxProp StorageClass
+-  HiLink cssListProp StorageClass
+-  HiLink cssMarginProp StorageClass
+-  HiLink cssMarqueeProp StorageClass
+-  HiLink cssMultiColumnProp StorageClass
+-  HiLink cssPaddingProp StorageClass
+-  HiLink cssPagedMediaProp StorageClass
+-  HiLink cssPositioningProp StorageClass
+-  HiLink cssPrintProp StorageClass
+-  HiLink cssRubyProp StorageClass
+-  HiLink cssSpeechProp StorageClass
+-  HiLink cssTableProp StorageClass
+-  HiLink cssTextProp StorageClass
+-  HiLink cssTransformProp StorageClass
+-  HiLink cssTransitionProp StorageClass
+-  HiLink cssUIProp StorageClass
+-  HiLink cssAuralProp StorageClass
+-  HiLink cssRenderProp StorageClass
+-
+-  HiLink cssAnimationAttr Type
+-  HiLink cssBackgroundAttr Type
+-  HiLink cssBorderOutlineAttr Type
+-  HiLink cssBoxAttr Type
+-  HiLink cssColorAttr Type
+-  HiLink cssContentForPagedMediaAttr Type
+-  HiLink cssDimensionAttr Type
+-  HiLink cssFlexibleBoxAttr Type
+-  HiLink cssFontAttr Type
+-  HiLink cssGeneratedContentAttr Type
+-  HiLink cssGridAttr Type
+-  HiLink cssHyerlinkAttr Type
+-  HiLink cssLineboxAttr Type
+-  HiLink cssListAttr Type
+-  HiLink cssMarginAttr Type
+-  HiLink cssMarqueeAttr Type
+-  HiLink cssMultiColumnAttr Type
+-  HiLink cssPaddingAttr Type
+-  HiLink cssPagedMediaAttr Type
+-  HiLink cssPositioningAttr Type
+-  HiLink cssPrintAttr Type
+-  HiLink cssRubyAttr Type
+-  HiLink cssSpeechAttr Type
+-  HiLink cssTableAttr Type
+-  HiLink cssTextAttr Type
+-  HiLink cssTransformAttr Type
+-  HiLink cssTransitionAttr Type
+-  HiLink cssUIAttr Type
+-  HiLink cssAuralAttr Type
+-  HiLink cssRenderAttr Type
+-  HiLink cssCommonAttr Type
++  HiLink cssAnimationProp cssProp
++  HiLink cssBackgroundProp cssProp
++  HiLink cssBorderProp cssProp
++  HiLink cssBoxProp cssProp
++  HiLink cssColorProp cssProp
++  HiLink cssContentForPagedMediaProp cssProp
++  HiLink cssDimensionProp cssProp
++  HiLink cssFlexibleBoxProp cssProp
++  HiLink cssFontProp cssProp
++  HiLink cssGeneratedContentProp cssProp
++  HiLink cssGridProp cssProp
++  HiLink cssHyerlinkProp cssProp
++  HiLink cssLineboxProp cssProp
++  HiLink cssListProp cssProp
++  HiLink cssMarqueeProp cssProp
++  HiLink cssMultiColumnProp cssProp
++  HiLink cssPagedMediaProp cssProp
++  HiLink cssPositioningProp cssProp
++  HiLink cssPrintProp cssProp
++  HiLink cssRubyProp cssProp
++  HiLink cssSpeechProp cssProp
++  HiLink cssTableProp cssProp
++  HiLink cssTextProp cssProp
++  HiLink cssTransformProp cssProp
++  HiLink cssTransitionProp cssProp
++  HiLink cssUIProp cssProp
++  HiLink cssIEUIProp cssProp
++  HiLink cssAuralProp cssProp
++  HiLink cssRenderProp cssProp
++  HiLink cssMobileTextProp cssProp
++
++  HiLink cssAnimationAttr cssAttr
++  HiLink cssBackgroundAttr cssAttr
++  HiLink cssBorderAttr cssAttr
++  HiLink cssBoxAttr cssAttr
++  HiLink cssContentForPagedMediaAttr cssAttr
++  HiLink cssDimensionAttr cssAttr
++  HiLink cssFlexibleBoxAttr cssAttr
++  HiLink cssFontAttr cssAttr
++  HiLink cssGeneratedContentAttr cssAttr
++  HiLink cssGridAttr cssAttr
++  HiLink cssHyerlinkAttr cssAttr
++  HiLink cssLineboxAttr cssAttr
++  HiLink cssListAttr cssAttr
++  HiLink cssMarginAttr cssAttr
++  HiLink cssMarqueeAttr cssAttr
++  HiLink cssMultiColumnAttr cssAttr
++  HiLink cssPaddingAttr cssAttr
++  HiLink cssPagedMediaAttr cssAttr
++  HiLink cssPositioningAttr cssAttr
++  HiLink cssGradientAttr cssAttr
++  HiLink cssPrintAttr cssAttr
++  HiLink cssRubyAttr cssAttr
++  HiLink cssSpeechAttr cssAttr
++  HiLink cssTableAttr cssAttr
++  HiLink cssTextAttr cssAttr
++  HiLink cssTransformAttr cssAttr
++  HiLink cssTransitionAttr cssAttr
++  HiLink cssUIAttr cssAttr
++  HiLink cssIEUIAttr cssAttr
++  HiLink cssAuralAttr cssAttr
++  HiLink cssRenderAttr cssAttr
++  HiLink cssCommonAttr cssAttr
+ 
+   HiLink cssPseudoClassId PreProc
+   HiLink cssPseudoClassLang Constant
+@@ -456,9 +584,11 @@
+   HiLink cssFunction Constant
+   HiLink cssURL String
+   HiLink cssFunctionName Function
++  HiLink cssFunctionComma Function
+   HiLink cssColor Constant
+   HiLink cssIdentifier Function
+   HiLink cssInclude Include
++  HiLink cssIncludeKeyword atKeyword
+   HiLink cssImportant Special
+   HiLink cssBraces Function
+   HiLink cssBraceError Error
+@@ -467,15 +597,30 @@
+   HiLink cssUnicodeEscape Special
+   HiLink cssStringQQ String
+   HiLink cssStringQ String
+-  HiLink cssMedia Special
++  HiLink cssAttributeSelector String
++  HiLink cssMedia atKeyword
+   HiLink cssMediaType Special
+   HiLink cssMediaComma Normal
++  HiLink cssMediaKeyword Statement
++  HiLink cssMediaProp cssProp
++  HiLink cssMediaAttr cssAttr
++  HiLink cssPage atKeyword
++  HiLink cssPagePseudo PreProc
++  HiLink cssPageHeaderProp PreProc
++  HiLink cssPageProp cssProp
++  HiLink cssKeyFrame atKeyword
++  HiLink cssKeyFrameSelector Constant
+   HiLink cssFontDescriptor Special
+   HiLink cssFontDescriptorFunction Constant
+-  HiLink cssFontDescriptorProp StorageClass
+-  HiLink cssFontDescriptorAttr Type
++  HiLink cssFontDescriptorProp cssProp
++  HiLink cssFontDescriptorAttr cssAttr
+   HiLink cssUnicodeRange Constant
+   HiLink cssClassName Function
++  HiLink cssProp StorageClass
++  HiLink cssAttr Constant
++  HiLink cssUnitDecorators Number
++  HiLink cssNoise Noise
++  HiLink atKeyword Comment
+   delcommand HiLink
+ endif
+ 
+diff -Naur vim74.orig/runtime/syntax/dircolors.vim vim74/runtime/syntax/dircolors.vim
+--- vim74.orig/runtime/syntax/dircolors.vim	2012-04-25 09:42:39.000000000 +0000
++++ vim74/runtime/syntax/dircolors.vim	2013-10-01 16:15:43.772538770 +0000
+@@ -1,751 +1,213 @@
+ " Vim syntax file
+-" Language:         dircolors(1) input file
+-" Maintainer:       Nikolai Weibull <now@bitwi.se>
+-" Latest Revision:  2012-04-25
++" Language:        dircolors(1) input file
++" Maintainer:      Jan Larres <jan@majutsushi.net>
++" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
++" Latest Revision: 2013-08-17
+ 
+ if exists("b:current_syntax")
+-  finish
++    finish
+ endif
+ 
+ let s:cpo_save = &cpo
+ set cpo&vim
+ 
+-syn keyword dircolorsTodo       contained FIXME TODO XXX NOTE
++syntax keyword dircolorsTodo    FIXME TODO XXX NOTE contained
+ 
+-syn region  dircolorsComment    start='#' end='$' contains=dircolorsTodo,@Spell
++syntax region  dircolorsComment start='#' end='$' contains=dircolorsTodo,@Spell
+ 
+-syn keyword dircolorsKeyword    TERM LEFT LEFTCODE RIGHT RIGHTCODE END ENDCODE
++syntax keyword dircolorsKeyword TERM LEFT LEFTCODE RIGHT RIGHTCODE END ENDCODE
+ 
+-syn keyword dircolorsKeyword    NORMAL NORM FILE DIR LNK LINK SYMLINK ORPHAN
+-                                \ RESET MULTIHARDLINK CAPABILITY SETUID SETGID
+-                                \ STICKY STICKY_OTHER_WRITABLE OTHER_WRITABLE 
+-                                \ MISSING FIFO PIPE SOCK BLK BLOCK CHR CHAR
+-                                \ DOOR EXEC
+-                                \ nextgroup=@dircolorsColors skipwhite
++syntax keyword dircolorsKeyword NORMAL NORM FILE RESET DIR LNK LINK SYMLINK
++                              \ MULTIHARDLINK FIFO SOCK DOOR BLK CHR ORPHAN
++                              \ MISSING PIPE BLOCK CHR EXEC SETUID SETGID
++                              \ CAPABILITY STICKY_OTHER_WRITABLE
++                              \ OTHER_WRITABLE STICKY
+ 
+-if exists("dircolors_is_slackware")
+-  syn keyword dircolorsKeyword  COLOR OPTIONS EIGHTBIT
++" Slackware only, ignored by GNU dircolors.
++syntax keyword dircolorsKeyword COLOR OPTIONS EIGHTBIT
++
++syntax match dircolorsExtension '^\s*\zs[.*]\S\+'
++
++syntax match dircolorsEscape '\\[abefnrtv?_\\^#]'
++syntax match dircolorsEscape '\\[0-9]\{3}'
++syntax match dircolorsEscape '\\x[0-9a-f]\{3}'
++
++if !has('gui_running') && &t_Co == ''
++    syntax match dircolorsNumber '\<\d\+\>'
++    highlight default link dircolorsNumber Number
+ endif
+ 
+-syn match   dircolorsExtension  '^\s*\zs[.*]\S\+'
+-                                \ nextgroup=dircolorsColorPair skipwhite
++highlight default link dircolorsTodo      Todo
++highlight default link dircolorsComment   Comment
++highlight default link dircolorsKeyword   Keyword
++highlight default link dircolorsExtension Identifier
++highlight default link dircolorsEscape    Special
++
++function! s:set_guicolors() abort
++    let s:guicolors = {}
++
++    let s:guicolors[0]  = "Black"
++    let s:guicolors[1]  = "DarkRed"
++    let s:guicolors[2]  = "DarkGreen"
++    let s:guicolors[3]  = "DarkYellow"
++    let s:guicolors[4]  = "DarkBlue"
++    let s:guicolors[5]  = "DarkMagenta"
++    let s:guicolors[6]  = "DarkCyan"
++    let s:guicolors[7]  = "Gray"
++    let s:guicolors[8]  = "DarkGray"
++    let s:guicolors[9]  = "Red"
++    let s:guicolors[10] = "Green"
++    let s:guicolors[11] = "Yellow"
++    let s:guicolors[12] = "Blue"
++    let s:guicolors[13] = "Magenta"
++    let s:guicolors[14] = "Cyan"
++    let s:guicolors[15] = "White"
++
++    let xterm_palette = ["00", "5f", "87", "af", "d7", "ff"]
++
++    let cur_col = 16
++
++    for r in xterm_palette
++        for g in xterm_palette
++            for b in xterm_palette
++                let s:guicolors[cur_col] = '#' . r . g . b
++                let cur_col += 1
++            endfor
++        endfor
++    endfor
++
++    for i in range(24)
++        let g = i * 0xa + 8
++        let s:guicolors[i + 232] = '#' . g . g . g
++    endfor
++endfunction
++
++function! s:get_hi_str(color, place) abort
++    if a:color >= 0 && a:color <= 255
++        if has('gui_running')
++            return ' gui' . a:place . '=' . s:guicolors[a:color]
++        elseif a:color <= 7 || &t_Co == 256 || &t_Co == 88
++            return ' cterm' . a:place . '=' . a:color
++        endif
++    endif
++    return ''
++endfunction
++
++function! s:get_256color(colors) abort
++    if len(a:colors) >= 2 " May be fewer while editing
++        let [_five, color] = remove(a:colors, 0, 1)
++        if _five != '5' || color == ''
++            return -1
++        else
++            return str2nr(color)
++        endif
++    else
++        return -1
++    endif
++endfunction
++
++function! s:preview_color(linenr) abort
++    let line = getline(a:linenr)
++    let defline = matchlist(line, '^\v([A-Z_]+|[*.]\S+)\s+([0-9;]+)')
++    if empty(defline)
++        return
++    endif
++
++    let colordef = defline[2]
++
++    let colors = split(colordef, ';')
++
++    let hi_str = ''
++    let hi_attrs = []
++    while len(colors) > 0
++        let item = str2nr(remove(colors, 0))
++        if item == 1
++            call add(hi_attrs, 'bold')
++        elseif item == 3
++            call add(hi_attrs, 'italic')
++        elseif item == 4
++            call add(hi_attrs, 'underline')
++        elseif item == 7
++            call add(hi_attrs, 'inverse')
++        elseif item >= 30 && item <= 37
++            " ANSI SGR foreground color
++            let hi_str .= s:get_hi_str(item - 30, 'fg')
++        elseif item >= 40 && item <= 47
++            " ANSI SGR background color
++            let hi_str .= s:get_hi_str(item - 40, 'bg')
++        elseif item == 38
++            " Foreground for terminals with 88/256 color support
++            let color = s:get_256color(colors)
++            if color == -1
++                break
++            endif
++            let hi_str .= s:get_hi_str(color, 'fg')
++        elseif item == 48
++            " Background for terminals with 88/256 color support
++            let color = s:get_256color(colors)
++            if color == -1
++                break
++            endif
++            let hi_str .= s:get_hi_str(color, 'bg')
++        endif
++    endwhile
++
++    if hi_str == '' && empty(hi_attrs)
++        return
++    endif
++
++    " Check whether we have already defined this color
++    redir => s:currentmatch
++    silent! execute 'syntax list'
++    redir END
++
++    if s:currentmatch !~# '\/\\_s\\zs' . colordef . '\\ze\\_s\/'
++        " Append the buffer number to avoid problems with other dircolors
++        " buffers interfering
++        let bufnr = bufnr('%')
++        execute 'syntax match dircolorsColor' . b:dc_next_index . '_' . bufnr .
++              \ ' "\_s\zs' . colordef . '\ze\_s"'
++        let hi_attrs_str = ''
++        if !empty(hi_attrs)
++            if has('gui_running')
++                let hi_attrs_str = ' gui=' . join(hi_attrs, ',')
++            else
++                let hi_attrs_str = ' cterm=' . join(hi_attrs, ',')
++            endif
++        endif
++        execute 'highlight default dircolorsColor' . b:dc_next_index . '_' .
++              \ bufnr . hi_str . hi_attrs_str
++        let b:dc_next_index += 1
++    endif
++endfunction
++
++" Avoid accumulating too many definitions while editing
++function! s:reset_colors() abort
++    if b:dc_next_index > 0
++        let bufnr = bufnr('%')
++        for i in range(b:dc_next_index)
++            execute 'syntax clear dircolorsColor' . i . '_' . bufnr
++            execute 'highlight clear dircolorsColor' . i . '_' . bufnr
++        endfor
++        let b:dc_next_index = 0
++    endif
++
++    for linenr in range(1, line('$'))
++        call s:preview_color(linenr)
++    endfor
++endfunction
+ 
+-syn match   dircolorsColorPair  contained '.*$'
+-                                \ transparent contains=@dircolorsColors
++let b:dc_next_index = 0
+ 
+-if &t_Co == 8 || &t_Co == 16
+-  syn cluster dircolorsColors   contains=dircolorsBold,dircolorsUnderline,
+-                                \ dircolorsBlink,dircolorsReverse,
+-                                \ dircolorsInvisible,dircolorsBlack,
+-                                \ dircolorsRed,dircolorsGreen,dircolorsYellow,
+-                                \ dircolorsBlue,dircolorsMagenta,dircolorsCyan,
+-                                \ dircolorsWhite,dircolorsBGBlack,
+-                                \ dircolorsBGRed,dircolorsBGGreen,
+-                                \ dircolorsBGYellow,dircolorsBGBlue,
+-                                \ dircolorsBGMagenta,dircolorsBGCyan,
+-                                \ dircolorsBGWhite
+-
+-  syn match dircolorsBold       contained '\<0\=1\>'
+-  syn match dircolorsUnderline  contained '\<0\=4\>'
+-  syn match dircolorsBlink      contained '\<0\=5\>'
+-  syn match dircolorsReverse    contained '\<0\=7\>'
+-  syn match dircolorsInvisible  contained '\<0\=8\>'
+-  syn match dircolorsBlack      contained '\<30\>'
+-  syn match dircolorsRed        contained '\<31\>'
+-  syn match dircolorsGreen      contained '\<32\>'
+-  syn match dircolorsYellow     contained '\<33\>'
+-  syn match dircolorsBlue       contained '\<34\>'
+-  syn match dircolorsMagenta    contained '\<35\>'
+-  syn match dircolorsCyan       contained '\<36\>'
+-  syn match dircolorsWhite      contained '\<37\>'
+-  syn match dircolorsBGBlack    contained '\<40\>'
+-  syn match dircolorsBGRed      contained '\<41\>'
+-  syn match dircolorsBGGreen    contained '\<42\>'
+-  syn match dircolorsBGYellow   contained '\<43\>'
+-  syn match dircolorsBGBlue     contained '\<44\>'
+-  syn match dircolorsBGMagenta  contained '\<45\>'
+-  syn match dircolorsBGCyan     contained '\<46\>'
+-  syn match dircolorsBGWhite    contained '\<47\>'
+-elseif &t_Co == 256 || has("gui_running")
+-  syn cluster dircolorsColors   contains=dircolorsColor0,
+-                                \ dircolorsColor1,dircolorsColor2,
+-                                \ dircolorsColor3,dircolorsColor4,
+-                                \ dircolorsColor5,dircolorsColor6,
+-                                \ dircolorsColor7,dircolorsColor8,
+-                                \ dircolorsColor9,dircolorsColor10,
+-                                \ dircolorsColor11,dircolorsColor12,
+-                                \ dircolorsColor13,dircolorsColor14,
+-                                \ dircolorsColor15,dircolorsColor16,
+-                                \ dircolorsColor17,dircolorsColor18,
+-                                \ dircolorsColor19,dircolorsColor20,
+-                                \ dircolorsColor21,dircolorsColor22,
+-                                \ dircolorsColor23,dircolorsColor24,
+-                                \ dircolorsColor25,dircolorsColor26,
+-                                \ dircolorsColor27,dircolorsColor28,
+-                                \ dircolorsColor29,dircolorsColor30,
+-                                \ dircolorsColor31,dircolorsColor32,
+-                                \ dircolorsColor33,dircolorsColor34,
+-                                \ dircolorsColor35,dircolorsColor36,
+-                                \ dircolorsColor37,dircolorsColor38,
+-                                \ dircolorsColor39,dircolorsColor40,
+-                                \ dircolorsColor41,dircolorsColor42,
+-                                \ dircolorsColor43,dircolorsColor44,
+-                                \ dircolorsColor45,dircolorsColor46,
+-                                \ dircolorsColor47,dircolorsColor48,
+-                                \ dircolorsColor49,dircolorsColor50,
+-                                \ dircolorsColor51,dircolorsColor52,
+-                                \ dircolorsColor53,dircolorsColor54,
+-                                \ dircolorsColor55,dircolorsColor56,
+-                                \ dircolorsColor57,dircolorsColor58,
+-                                \ dircolorsColor59,dircolorsColor60,
+-                                \ dircolorsColor61,dircolorsColor62,
+-                                \ dircolorsColor63,dircolorsColor64,
+-                                \ dircolorsColor65,dircolorsColor66,
+-                                \ dircolorsColor67,dircolorsColor68,
+-                                \ dircolorsColor69,dircolorsColor70,
+-                                \ dircolorsColor71,dircolorsColor72,
+-                                \ dircolorsColor73,dircolorsColor74,
+-                                \ dircolorsColor75,dircolorsColor76,
+-                                \ dircolorsColor77,dircolorsColor78,
+-                                \ dircolorsColor79,dircolorsColor80,
+-                                \ dircolorsColor81,dircolorsColor82,
+-                                \ dircolorsColor83,dircolorsColor84,
+-                                \ dircolorsColor85,dircolorsColor86,
+-                                \ dircolorsColor87,dircolorsColor88,
+-                                \ dircolorsColor89,dircolorsColor90,
+-                                \ dircolorsColor91,dircolorsColor92,
+-                                \ dircolorsColor93,dircolorsColor94,
+-                                \ dircolorsColor95,dircolorsColor96,
+-                                \ dircolorsColor97,dircolorsColor98,
+-                                \ dircolorsColor99,dircolorsColor100,
+-                                \ dircolorsColor101,dircolorsColor102,
+-                                \ dircolorsColor103,dircolorsColor104,
+-                                \ dircolorsColor105,dircolorsColor106,
+-                                \ dircolorsColor107,dircolorsColor108,
+-                                \ dircolorsColor109,dircolorsColor110,
+-                                \ dircolorsColor111,dircolorsColor112,
+-                                \ dircolorsColor113,dircolorsColor114,
+-                                \ dircolorsColor115,dircolorsColor116,
+-                                \ dircolorsColor117,dircolorsColor118,
+-                                \ dircolorsColor119,dircolorsColor120,
+-                                \ dircolorsColor121,dircolorsColor122,
+-                                \ dircolorsColor123,dircolorsColor124,
+-                                \ dircolorsColor125,dircolorsColor126,
+-                                \ dircolorsColor127,dircolorsColor128,
+-                                \ dircolorsColor129,dircolorsColor130,
+-                                \ dircolorsColor131,dircolorsColor132,
+-                                \ dircolorsColor133,dircolorsColor134,
+-                                \ dircolorsColor135,dircolorsColor136,
+-                                \ dircolorsColor137,dircolorsColor138,
+-                                \ dircolorsColor139,dircolorsColor140,
+-                                \ dircolorsColor141,dircolorsColor142,
+-                                \ dircolorsColor143,dircolorsColor144,
+-                                \ dircolorsColor145,dircolorsColor146,
+-                                \ dircolorsColor147,dircolorsColor148,
+-                                \ dircolorsColor149,dircolorsColor150,
+-                                \ dircolorsColor151,dircolorsColor152,
+-                                \ dircolorsColor153,dircolorsColor154,
+-                                \ dircolorsColor155,dircolorsColor156,
+-                                \ dircolorsColor157,dircolorsColor158,
+-                                \ dircolorsColor159,dircolorsColor160,
+-                                \ dircolorsColor161,dircolorsColor162,
+-                                \ dircolorsColor163,dircolorsColor164,
+-                                \ dircolorsColor165,dircolorsColor166,
+-                                \ dircolorsColor167,dircolorsColor168,
+-                                \ dircolorsColor169,dircolorsColor170,
+-                                \ dircolorsColor171,dircolorsColor172,
+-                                \ dircolorsColor173,dircolorsColor174,
+-                                \ dircolorsColor175,dircolorsColor176,
+-                                \ dircolorsColor177,dircolorsColor178,
+-                                \ dircolorsColor179,dircolorsColor180,
+-                                \ dircolorsColor181,dircolorsColor182,
+-                                \ dircolorsColor183,dircolorsColor184,
+-                                \ dircolorsColor185,dircolorsColor186,
+-                                \ dircolorsColor187,dircolorsColor188,
+-                                \ dircolorsColor189,dircolorsColor190,
+-                                \ dircolorsColor191,dircolorsColor192,
+-                                \ dircolorsColor193,dircolorsColor194,
+-                                \ dircolorsColor195,dircolorsColor196,
+-                                \ dircolorsColor197,dircolorsColor198,
+-                                \ dircolorsColor199,dircolorsColor200,
+-                                \ dircolorsColor201,dircolorsColor202,
+-                                \ dircolorsColor203,dircolorsColor204,
+-                                \ dircolorsColor205,dircolorsColor206,
+-                                \ dircolorsColor207,dircolorsColor208,
+-                                \ dircolorsColor209,dircolorsColor210,
+-                                \ dircolorsColor211,dircolorsColor212,
+-                                \ dircolorsColor213,dircolorsColor214,
+-                                \ dircolorsColor215,dircolorsColor216,
+-                                \ dircolorsColor217,dircolorsColor218,
+-                                \ dircolorsColor219,dircolorsColor220,
+-                                \ dircolorsColor221,dircolorsColor222,
+-                                \ dircolorsColor223,dircolorsColor224,
+-                                \ dircolorsColor225,dircolorsColor226,
+-                                \ dircolorsColor227,dircolorsColor228,
+-                                \ dircolorsColor229,dircolorsColor230,
+-                                \ dircolorsColor231,dircolorsColor232,
+-                                \ dircolorsColor233,dircolorsColor234,
+-                                \ dircolorsColor235,dircolorsColor236,
+-                                \ dircolorsColor237,dircolorsColor238,
+-                                \ dircolorsColor239,dircolorsColor240,
+-                                \ dircolorsColor241,dircolorsColor242,
+-                                \ dircolorsColor243,dircolorsColor244,
+-                                \ dircolorsColor245,dircolorsColor246,
+-                                \ dircolorsColor247,dircolorsColor248,
+-                                \ dircolorsColor249,dircolorsColor250,
+-                                \ dircolorsColor251,dircolorsColor252,
+-                                \ dircolorsColor253,dircolorsColor254,
+-                                \ dircolorsColor255
+-
+-  syn match dircolorsColor0     contained '\<0\=0\>'
+-  syn match dircolorsColor1     contained '\<0\=1\>'
+-  syn match dircolorsColor2     contained '\<0\=2\>'
+-  syn match dircolorsColor3     contained '\<0\=3\>'
+-  syn match dircolorsColor4     contained '\<0\=4\>'
+-  syn match dircolorsColor5     contained '\<0\=5\>'
+-  syn match dircolorsColor6     contained '\<0\=6\>'
+-  syn match dircolorsColor7     contained '\<0\=7\>'
+-  syn match dircolorsColor8     contained '\<0\=8\>'
+-  syn match dircolorsColor9     contained '\<0\=9\>'
+-  syn match dircolorsColor10    contained '\<10\>'
+-  syn match dircolorsColor11    contained '\<11\>'
+-  syn match dircolorsColor12    contained '\<12\>'
+-  syn match dircolorsColor13    contained '\<13\>'
+-  syn match dircolorsColor14    contained '\<14\>'
+-  syn match dircolorsColor15    contained '\<15\>'
+-  syn match dircolorsColor16    contained '\<16\>'
+-  syn match dircolorsColor17    contained '\<17\>'
+-  syn match dircolorsColor18    contained '\<18\>'
+-  syn match dircolorsColor19    contained '\<19\>'
+-  syn match dircolorsColor20    contained '\<20\>'
+-  syn match dircolorsColor21    contained '\<21\>'
+-  syn match dircolorsColor22    contained '\<22\>'
+-  syn match dircolorsColor23    contained '\<23\>'
+-  syn match dircolorsColor24    contained '\<24\>'
+-  syn match dircolorsColor25    contained '\<25\>'
+-  syn match dircolorsColor26    contained '\<26\>'
+-  syn match dircolorsColor27    contained '\<27\>'
+-  syn match dircolorsColor28    contained '\<28\>'
+-  syn match dircolorsColor29    contained '\<29\>'
+-  syn match dircolorsColor30    contained '\<30\>'
+-  syn match dircolorsColor31    contained '\<31\>'
+-  syn match dircolorsColor32    contained '\<32\>'
+-  syn match dircolorsColor33    contained '\<33\>'
+-  syn match dircolorsColor34    contained '\<34\>'
+-  syn match dircolorsColor35    contained '\<35\>'
+-  syn match dircolorsColor36    contained '\<36\>'
+-  syn match dircolorsColor37    contained '\<37\>'
+-  syn match dircolorsColor38    contained '\<38\>'
+-  syn match dircolorsColor39    contained '\<39\>'
+-  syn match dircolorsColor40    contained '\<40\>'
+-  syn match dircolorsColor41    contained '\<41\>'
+-  syn match dircolorsColor42    contained '\<42\>'
+-  syn match dircolorsColor43    contained '\<43\>'
+-  syn match dircolorsColor44    contained '\<44\>'
+-  syn match dircolorsColor45    contained '\<45\>'
+-  syn match dircolorsColor46    contained '\<46\>'
+-  syn match dircolorsColor47    contained '\<47\>'
+-  syn match dircolorsColor48    contained '\<48\>'
+-  syn match dircolorsColor49    contained '\<49\>'
+-  syn match dircolorsColor50    contained '\<50\>'
+-  syn match dircolorsColor51    contained '\<51\>'
+-  syn match dircolorsColor52    contained '\<52\>'
+-  syn match dircolorsColor53    contained '\<53\>'
+-  syn match dircolorsColor54    contained '\<54\>'
+-  syn match dircolorsColor55    contained '\<55\>'
+-  syn match dircolorsColor56    contained '\<56\>'
+-  syn match dircolorsColor57    contained '\<57\>'
+-  syn match dircolorsColor58    contained '\<58\>'
+-  syn match dircolorsColor59    contained '\<59\>'
+-  syn match dircolorsColor60    contained '\<60\>'
+-  syn match dircolorsColor61    contained '\<61\>'
+-  syn match dircolorsColor62    contained '\<62\>'
+-  syn match dircolorsColor63    contained '\<63\>'
+-  syn match dircolorsColor64    contained '\<64\>'
+-  syn match dircolorsColor65    contained '\<65\>'
+-  syn match dircolorsColor66    contained '\<66\>'
+-  syn match dircolorsColor67    contained '\<67\>'
+-  syn match dircolorsColor68    contained '\<68\>'
+-  syn match dircolorsColor69    contained '\<69\>'
+-  syn match dircolorsColor70    contained '\<70\>'
+-  syn match dircolorsColor71    contained '\<71\>'
+-  syn match dircolorsColor72    contained '\<72\>'
+-  syn match dircolorsColor73    contained '\<73\>'
+-  syn match dircolorsColor74    contained '\<74\>'
+-  syn match dircolorsColor75    contained '\<75\>'
+-  syn match dircolorsColor76    contained '\<76\>'
+-  syn match dircolorsColor77    contained '\<77\>'
+-  syn match dircolorsColor78    contained '\<78\>'
+-  syn match dircolorsColor79    contained '\<79\>'
+-  syn match dircolorsColor80    contained '\<80\>'
+-  syn match dircolorsColor81    contained '\<81\>'
+-  syn match dircolorsColor82    contained '\<82\>'
+-  syn match dircolorsColor83    contained '\<83\>'
+-  syn match dircolorsColor84    contained '\<84\>'
+-  syn match dircolorsColor85    contained '\<85\>'
+-  syn match dircolorsColor86    contained '\<86\>'
+-  syn match dircolorsColor87    contained '\<87\>'
+-  syn match dircolorsColor88    contained '\<88\>'
+-  syn match dircolorsColor89    contained '\<89\>'
+-  syn match dircolorsColor90    contained '\<90\>'
+-  syn match dircolorsColor91    contained '\<91\>'
+-  syn match dircolorsColor92    contained '\<92\>'
+-  syn match dircolorsColor93    contained '\<93\>'
+-  syn match dircolorsColor94    contained '\<94\>'
+-  syn match dircolorsColor95    contained '\<95\>'
+-  syn match dircolorsColor96    contained '\<96\>'
+-  syn match dircolorsColor97    contained '\<97\>'
+-  syn match dircolorsColor98    contained '\<98\>'
+-  syn match dircolorsColor99    contained '\<99\>'
+-  syn match dircolorsColor100   contained '\<100\>'
+-  syn match dircolorsColor101   contained '\<101\>'
+-  syn match dircolorsColor102   contained '\<102\>'
+-  syn match dircolorsColor103   contained '\<103\>'
+-  syn match dircolorsColor104   contained '\<104\>'
+-  syn match dircolorsColor105   contained '\<105\>'
+-  syn match dircolorsColor106   contained '\<106\>'
+-  syn match dircolorsColor107   contained '\<107\>'
+-  syn match dircolorsColor108   contained '\<108\>'
+-  syn match dircolorsColor109   contained '\<109\>'
+-  syn match dircolorsColor110   contained '\<110\>'
+-  syn match dircolorsColor111   contained '\<111\>'
+-  syn match dircolorsColor112   contained '\<112\>'
+-  syn match dircolorsColor113   contained '\<113\>'
+-  syn match dircolorsColor114   contained '\<114\>'
+-  syn match dircolorsColor115   contained '\<115\>'
+-  syn match dircolorsColor116   contained '\<116\>'
+-  syn match dircolorsColor117   contained '\<117\>'
+-  syn match dircolorsColor118   contained '\<118\>'
+-  syn match dircolorsColor119   contained '\<119\>'
+-  syn match dircolorsColor120   contained '\<120\>'
+-  syn match dircolorsColor121   contained '\<121\>'
+-  syn match dircolorsColor122   contained '\<122\>'
+-  syn match dircolorsColor123   contained '\<123\>'
+-  syn match dircolorsColor124   contained '\<124\>'
+-  syn match dircolorsColor125   contained '\<125\>'
+-  syn match dircolorsColor126   contained '\<126\>'
+-  syn match dircolorsColor127   contained '\<127\>'
+-  syn match dircolorsColor128   contained '\<128\>'
+-  syn match dircolorsColor129   contained '\<129\>'
+-  syn match dircolorsColor130   contained '\<130\>'
+-  syn match dircolorsColor131   contained '\<131\>'
+-  syn match dircolorsColor132   contained '\<132\>'
+-  syn match dircolorsColor133   contained '\<133\>'
+-  syn match dircolorsColor134   contained '\<134\>'
+-  syn match dircolorsColor135   contained '\<135\>'
+-  syn match dircolorsColor136   contained '\<136\>'
+-  syn match dircolorsColor137   contained '\<137\>'
+-  syn match dircolorsColor138   contained '\<138\>'
+-  syn match dircolorsColor139   contained '\<139\>'
+-  syn match dircolorsColor140   contained '\<140\>'
+-  syn match dircolorsColor141   contained '\<141\>'
+-  syn match dircolorsColor142   contained '\<142\>'
+-  syn match dircolorsColor143   contained '\<143\>'
+-  syn match dircolorsColor144   contained '\<144\>'
+-  syn match dircolorsColor145   contained '\<145\>'
+-  syn match dircolorsColor146   contained '\<146\>'
+-  syn match dircolorsColor147   contained '\<147\>'
+-  syn match dircolorsColor148   contained '\<148\>'
+-  syn match dircolorsColor149   contained '\<149\>'
+-  syn match dircolorsColor150   contained '\<150\>'
+-  syn match dircolorsColor151   contained '\<151\>'
+-  syn match dircolorsColor152   contained '\<152\>'
+-  syn match dircolorsColor153   contained '\<153\>'
+-  syn match dircolorsColor154   contained '\<154\>'
+-  syn match dircolorsColor155   contained '\<155\>'
+-  syn match dircolorsColor156   contained '\<156\>'
+-  syn match dircolorsColor157   contained '\<157\>'
+-  syn match dircolorsColor158   contained '\<158\>'
+-  syn match dircolorsColor159   contained '\<159\>'
+-  syn match dircolorsColor160   contained '\<160\>'
+-  syn match dircolorsColor161   contained '\<161\>'
+-  syn match dircolorsColor162   contained '\<162\>'
+-  syn match dircolorsColor163   contained '\<163\>'
+-  syn match dircolorsColor164   contained '\<164\>'
+-  syn match dircolorsColor165   contained '\<165\>'
+-  syn match dircolorsColor166   contained '\<166\>'
+-  syn match dircolorsColor167   contained '\<167\>'
+-  syn match dircolorsColor168   contained '\<168\>'
+-  syn match dircolorsColor169   contained '\<169\>'
+-  syn match dircolorsColor170   contained '\<170\>'
+-  syn match dircolorsColor171   contained '\<171\>'
+-  syn match dircolorsColor172   contained '\<172\>'
+-  syn match dircolorsColor173   contained '\<173\>'
+-  syn match dircolorsColor174   contained '\<174\>'
+-  syn match dircolorsColor175   contained '\<175\>'
+-  syn match dircolorsColor176   contained '\<176\>'
+-  syn match dircolorsColor177   contained '\<177\>'
+-  syn match dircolorsColor178   contained '\<178\>'
+-  syn match dircolorsColor179   contained '\<179\>'
+-  syn match dircolorsColor180   contained '\<180\>'
+-  syn match dircolorsColor181   contained '\<181\>'
+-  syn match dircolorsColor182   contained '\<182\>'
+-  syn match dircolorsColor183   contained '\<183\>'
+-  syn match dircolorsColor184   contained '\<184\>'
+-  syn match dircolorsColor185   contained '\<185\>'
+-  syn match dircolorsColor186   contained '\<186\>'
+-  syn match dircolorsColor187   contained '\<187\>'
+-  syn match dircolorsColor188   contained '\<188\>'
+-  syn match dircolorsColor189   contained '\<189\>'
+-  syn match dircolorsColor190   contained '\<190\>'
+-  syn match dircolorsColor191   contained '\<191\>'
+-  syn match dircolorsColor192   contained '\<192\>'
+-  syn match dircolorsColor193   contained '\<193\>'
+-  syn match dircolorsColor194   contained '\<194\>'
+-  syn match dircolorsColor195   contained '\<195\>'
+-  syn match dircolorsColor196   contained '\<196\>'
+-  syn match dircolorsColor197   contained '\<197\>'
+-  syn match dircolorsColor198   contained '\<198\>'
+-  syn match dircolorsColor199   contained '\<199\>'
+-  syn match dircolorsColor200   contained '\<200\>'
+-  syn match dircolorsColor201   contained '\<201\>'
+-  syn match dircolorsColor202   contained '\<202\>'
+-  syn match dircolorsColor203   contained '\<203\>'
+-  syn match dircolorsColor204   contained '\<204\>'
+-  syn match dircolorsColor205   contained '\<205\>'
+-  syn match dircolorsColor206   contained '\<206\>'
+-  syn match dircolorsColor207   contained '\<207\>'
+-  syn match dircolorsColor208   contained '\<208\>'
+-  syn match dircolorsColor209   contained '\<209\>'
+-  syn match dircolorsColor210   contained '\<210\>'
+-  syn match dircolorsColor211   contained '\<211\>'
+-  syn match dircolorsColor212   contained '\<212\>'
+-  syn match dircolorsColor213   contained '\<213\>'
+-  syn match dircolorsColor214   contained '\<214\>'
+-  syn match dircolorsColor215   contained '\<215\>'
+-  syn match dircolorsColor216   contained '\<216\>'
+-  syn match dircolorsColor217   contained '\<217\>'
+-  syn match dircolorsColor218   contained '\<218\>'
+-  syn match dircolorsColor219   contained '\<219\>'
+-  syn match dircolorsColor220   contained '\<220\>'
+-  syn match dircolorsColor221   contained '\<221\>'
+-  syn match dircolorsColor222   contained '\<222\>'
+-  syn match dircolorsColor223   contained '\<223\>'
+-  syn match dircolorsColor224   contained '\<224\>'
+-  syn match dircolorsColor225   contained '\<225\>'
+-  syn match dircolorsColor226   contained '\<226\>'
+-  syn match dircolorsColor227   contained '\<227\>'
+-  syn match dircolorsColor228   contained '\<228\>'
+-  syn match dircolorsColor229   contained '\<229\>'
+-  syn match dircolorsColor230   contained '\<230\>'
+-  syn match dircolorsColor231   contained '\<231\>'
+-  syn match dircolorsColor232   contained '\<232\>'
+-  syn match dircolorsColor233   contained '\<233\>'
+-  syn match dircolorsColor234   contained '\<234\>'
+-  syn match dircolorsColor235   contained '\<235\>'
+-  syn match dircolorsColor236   contained '\<236\>'
+-  syn match dircolorsColor237   contained '\<237\>'
+-  syn match dircolorsColor238   contained '\<238\>'
+-  syn match dircolorsColor239   contained '\<239\>'
+-  syn match dircolorsColor240   contained '\<240\>'
+-  syn match dircolorsColor241   contained '\<241\>'
+-  syn match dircolorsColor242   contained '\<242\>'
+-  syn match dircolorsColor243   contained '\<243\>'
+-  syn match dircolorsColor244   contained '\<244\>'
+-  syn match dircolorsColor245   contained '\<245\>'
+-  syn match dircolorsColor246   contained '\<246\>'
+-  syn match dircolorsColor247   contained '\<247\>'
+-  syn match dircolorsColor248   contained '\<248\>'
+-  syn match dircolorsColor249   contained '\<249\>'
+-  syn match dircolorsColor250   contained '\<250\>'
+-  syn match dircolorsColor251   contained '\<251\>'
+-  syn match dircolorsColor252   contained '\<252\>'
+-  syn match dircolorsColor253   contained '\<253\>'
+-  syn match dircolorsColor254   contained '\<254\>'
+-  syn match dircolorsColor255   contained '\<255\>'
+-else
+-  syn cluster dircolorsColors   contains=dircolorsNumber
+-  syn match   dircolorsNumber   '\<\d\+\>'
++if has('gui_running')
++    call s:set_guicolors()
+ endif
+ 
+-hi def link dircolorsTodo       Todo
+-hi def link dircolorsComment    Comment
+-hi def link dircolorsKeyword    Keyword
+-hi def link dircolorsExtension  Keyword
+-
+-if &t_Co == 8 || &t_Co == 16
+-  hi def      dircolorsBold       term=bold cterm=bold gui=bold
+-  hi def      dircolorsUnderline  term=underline cterm=underline gui=underline
+-  hi def link dircolorsBlink      Normal
+-  hi def      dircolorsReverse    term=reverse cterm=reverse gui=reverse
+-  hi def link dircolorsInvisible  Ignore
+-  hi def      dircolorsBlack      ctermfg=Black guifg=Black
+-  hi def      dircolorsRed        ctermfg=Red guifg=Red
+-  hi def      dircolorsGreen      ctermfg=Green guifg=Green
+-  hi def      dircolorsYellow     ctermfg=Yellow guifg=Yellow
+-  hi def      dircolorsBlue       ctermfg=Blue guifg=Blue
+-  hi def      dircolorsMagenta    ctermfg=Magenta guifg=Magenta
+-  hi def      dircolorsCyan       ctermfg=Cyan guifg=Cyan
+-  hi def      dircolorsWhite      ctermfg=White guifg=White
+-  hi def      dircolorsBGBlack    ctermbg=Black ctermfg=White
+-                                  \ guibg=Black guifg=White
+-  hi def      dircolorsBGRed      ctermbg=DarkRed guibg=DarkRed
+-  hi def      dircolorsBGGreen    ctermbg=DarkGreen guibg=DarkGreen
+-  hi def      dircolorsBGYellow   ctermbg=DarkYellow guibg=DarkYellow
+-  hi def      dircolorsBGBlue     ctermbg=DarkBlue guibg=DarkBlue
+-  hi def      dircolorsBGMagenta  ctermbg=DarkMagenta guibg=DarkMagenta
+-  hi def      dircolorsBGCyan     ctermbg=DarkCyan guibg=DarkCyan
+-  hi def      dircolorsBGWhite    ctermbg=White ctermfg=Black
+-                                  \ guibg=White guifg=Black
+-elseif &t_Co == 256 || has("gui_running")
+-  hi def    dircolorsColor0     ctermfg=0   guifg=Black
+-  hi def    dircolorsColor1     ctermfg=1   guifg=DarkRed
+-  hi def    dircolorsColor2     ctermfg=2   guifg=DarkGreen
+-  hi def    dircolorsColor3     ctermfg=3   guifg=DarkYellow
+-  hi def    dircolorsColor4     ctermfg=4   guifg=DarkBlue
+-  hi def    dircolorsColor5     ctermfg=5   guifg=DarkMagenta
+-  hi def    dircolorsColor6     ctermfg=6   guifg=DarkCyan
+-  hi def    dircolorsColor7     ctermfg=7   guifg=Gray
+-  hi def    dircolorsColor8     ctermfg=8   guifg=DarkGray
+-  hi def    dircolorsColor9     ctermfg=9   guifg=Red
+-  hi def    dircolorsColor10    ctermfg=10  guifg=Green
+-  hi def    dircolorsColor11    ctermfg=11  guifg=Yellow
+-  hi def    dircolorsColor12    ctermfg=12  guifg=Blue
+-  hi def    dircolorsColor13    ctermfg=13  guifg=Magenta
+-  hi def    dircolorsColor14    ctermfg=14  guifg=Cyan
+-  hi def    dircolorsColor15    ctermfg=15  guifg=White
+-  hi def    dircolorsColor16    ctermfg=16  guifg=#000000
+-  hi def    dircolorsColor17    ctermfg=17  guifg=#00005f
+-  hi def    dircolorsColor18    ctermfg=18  guifg=#000087
+-  hi def    dircolorsColor19    ctermfg=19  guifg=#0000af
+-  hi def    dircolorsColor20    ctermfg=20  guifg=#0000d7
+-  hi def    dircolorsColor21    ctermfg=21  guifg=#0000ff
+-  hi def    dircolorsColor22    ctermfg=22  guifg=#005f00
+-  hi def    dircolorsColor23    ctermfg=23  guifg=#005f5f
+-  hi def    dircolorsColor24    ctermfg=24  guifg=#005f87
+-  hi def    dircolorsColor25    ctermfg=25  guifg=#005faf
+-  hi def    dircolorsColor26    ctermfg=26  guifg=#005fd7
+-  hi def    dircolorsColor27    ctermfg=27  guifg=#005fff
+-  hi def    dircolorsColor28    ctermfg=28  guifg=#008700
+-  hi def    dircolorsColor29    ctermfg=29  guifg=#00875f
+-  hi def    dircolorsColor30    ctermfg=30  guifg=#008787
+-  hi def    dircolorsColor31    ctermfg=31  guifg=#0087af
+-  hi def    dircolorsColor32    ctermfg=32  guifg=#0087d7
+-  hi def    dircolorsColor33    ctermfg=33  guifg=#0087ff
+-  hi def    dircolorsColor34    ctermfg=34  guifg=#00af00
+-  hi def    dircolorsColor35    ctermfg=35  guifg=#00af5f
+-  hi def    dircolorsColor36    ctermfg=36  guifg=#00af87
+-  hi def    dircolorsColor37    ctermfg=37  guifg=#00afaf
+-  hi def    dircolorsColor38    ctermfg=38  guifg=#00afd7
+-  hi def    dircolorsColor39    ctermfg=39  guifg=#00afff
+-  hi def    dircolorsColor40    ctermfg=40  guifg=#00d700
+-  hi def    dircolorsColor41    ctermfg=41  guifg=#00d75f
+-  hi def    dircolorsColor42    ctermfg=42  guifg=#00d787
+-  hi def    dircolorsColor43    ctermfg=43  guifg=#00d7af
+-  hi def    dircolorsColor44    ctermfg=44  guifg=#00d7d7
+-  hi def    dircolorsColor45    ctermfg=45  guifg=#00d7ff
+-  hi def    dircolorsColor46    ctermfg=46  guifg=#00ff00
+-  hi def    dircolorsColor47    ctermfg=47  guifg=#00ff5f
+-  hi def    dircolorsColor48    ctermfg=48  guifg=#00ff87
+-  hi def    dircolorsColor49    ctermfg=49  guifg=#00ffaf
+-  hi def    dircolorsColor50    ctermfg=50  guifg=#00ffd7
+-  hi def    dircolorsColor51    ctermfg=51  guifg=#00ffff
+-  hi def    dircolorsColor52    ctermfg=52  guifg=#5f0000
+-  hi def    dircolorsColor53    ctermfg=53  guifg=#5f005f
+-  hi def    dircolorsColor54    ctermfg=54  guifg=#5f0087
+-  hi def    dircolorsColor55    ctermfg=55  guifg=#5f00af
+-  hi def    dircolorsColor56    ctermfg=56  guifg=#5f00d7
+-  hi def    dircolorsColor57    ctermfg=57  guifg=#5f00ff
+-  hi def    dircolorsColor58    ctermfg=58  guifg=#5f5f00
+-  hi def    dircolorsColor59    ctermfg=59  guifg=#5f5f5f
+-  hi def    dircolorsColor60    ctermfg=60  guifg=#5f5f87
+-  hi def    dircolorsColor61    ctermfg=61  guifg=#5f5faf
+-  hi def    dircolorsColor62    ctermfg=62  guifg=#5f5fd7
+-  hi def    dircolorsColor63    ctermfg=63  guifg=#5f5fff
+-  hi def    dircolorsColor64    ctermfg=64  guifg=#5f8700
+-  hi def    dircolorsColor65    ctermfg=65  guifg=#5f875f
+-  hi def    dircolorsColor66    ctermfg=66  guifg=#5f8787
+-  hi def    dircolorsColor67    ctermfg=67  guifg=#5f87af
+-  hi def    dircolorsColor68    ctermfg=68  guifg=#5f87d7
+-  hi def    dircolorsColor69    ctermfg=69  guifg=#5f87ff
+-  hi def    dircolorsColor70    ctermfg=70  guifg=#5faf00
+-  hi def    dircolorsColor71    ctermfg=71  guifg=#5faf5f
+-  hi def    dircolorsColor72    ctermfg=72  guifg=#5faf87
+-  hi def    dircolorsColor73    ctermfg=73  guifg=#5fafaf
+-  hi def    dircolorsColor74    ctermfg=74  guifg=#5fafd7
+-  hi def    dircolorsColor75    ctermfg=75  guifg=#5fafff
+-  hi def    dircolorsColor76    ctermfg=76  guifg=#5fd700
+-  hi def    dircolorsColor77    ctermfg=77  guifg=#5fd75f
+-  hi def    dircolorsColor78    ctermfg=78  guifg=#5fd787
+-  hi def    dircolorsColor79    ctermfg=79  guifg=#5fd7af
+-  hi def    dircolorsColor80    ctermfg=80  guifg=#5fd7d7
+-  hi def    dircolorsColor81    ctermfg=81  guifg=#5fd7ff
+-  hi def    dircolorsColor82    ctermfg=82  guifg=#5fff00
+-  hi def    dircolorsColor83    ctermfg=83  guifg=#5fff5f
+-  hi def    dircolorsColor84    ctermfg=84  guifg=#5fff87
+-  hi def    dircolorsColor85    ctermfg=85  guifg=#5fffaf
+-  hi def    dircolorsColor86    ctermfg=86  guifg=#5fffd7
+-  hi def    dircolorsColor87    ctermfg=87  guifg=#5fffff
+-  hi def    dircolorsColor88    ctermfg=88  guifg=#870000
+-  hi def    dircolorsColor89    ctermfg=89  guifg=#87005f
+-  hi def    dircolorsColor90    ctermfg=90  guifg=#870087
+-  hi def    dircolorsColor91    ctermfg=91  guifg=#8700af
+-  hi def    dircolorsColor92    ctermfg=92  guifg=#8700d7
+-  hi def    dircolorsColor93    ctermfg=93  guifg=#8700ff
+-  hi def    dircolorsColor94    ctermfg=94  guifg=#875f00
+-  hi def    dircolorsColor95    ctermfg=95  guifg=#875f5f
+-  hi def    dircolorsColor96    ctermfg=96  guifg=#875f87
+-  hi def    dircolorsColor97    ctermfg=97  guifg=#875faf
+-  hi def    dircolorsColor98    ctermfg=98  guifg=#875fd7
+-  hi def    dircolorsColor99    ctermfg=99  guifg=#875fff
+-  hi def    dircolorsColor100   ctermfg=100 guifg=#878700
+-  hi def    dircolorsColor101   ctermfg=101 guifg=#87875f
+-  hi def    dircolorsColor102   ctermfg=102 guifg=#878787
+-  hi def    dircolorsColor103   ctermfg=103 guifg=#8787af
+-  hi def    dircolorsColor104   ctermfg=104 guifg=#8787d7
+-  hi def    dircolorsColor105   ctermfg=105 guifg=#8787ff
+-  hi def    dircolorsColor106   ctermfg=106 guifg=#87af00
+-  hi def    dircolorsColor107   ctermfg=107 guifg=#87af5f
+-  hi def    dircolorsColor108   ctermfg=108 guifg=#87af87
+-  hi def    dircolorsColor109   ctermfg=109 guifg=#87afaf
+-  hi def    dircolorsColor110   ctermfg=110 guifg=#87afd7
+-  hi def    dircolorsColor111   ctermfg=111 guifg=#87afff
+-  hi def    dircolorsColor112   ctermfg=112 guifg=#87d700
+-  hi def    dircolorsColor113   ctermfg=113 guifg=#87d75f
+-  hi def    dircolorsColor114   ctermfg=114 guifg=#87d787
+-  hi def    dircolorsColor115   ctermfg=115 guifg=#87d7af
+-  hi def    dircolorsColor116   ctermfg=116 guifg=#87d7d7
+-  hi def    dircolorsColor117   ctermfg=117 guifg=#87d7ff
+-  hi def    dircolorsColor118   ctermfg=118 guifg=#87ff00
+-  hi def    dircolorsColor119   ctermfg=119 guifg=#87ff5f
+-  hi def    dircolorsColor120   ctermfg=120 guifg=#87ff87
+-  hi def    dircolorsColor121   ctermfg=121 guifg=#87ffaf
+-  hi def    dircolorsColor122   ctermfg=122 guifg=#87ffd7
+-  hi def    dircolorsColor123   ctermfg=123 guifg=#87ffff
+-  hi def    dircolorsColor124   ctermfg=124 guifg=#af0000
+-  hi def    dircolorsColor125   ctermfg=125 guifg=#af005f
+-  hi def    dircolorsColor126   ctermfg=126 guifg=#af0087
+-  hi def    dircolorsColor127   ctermfg=127 guifg=#af00af
+-  hi def    dircolorsColor128   ctermfg=128 guifg=#af00d7
+-  hi def    dircolorsColor129   ctermfg=129 guifg=#af00ff
+-  hi def    dircolorsColor130   ctermfg=130 guifg=#af5f00
+-  hi def    dircolorsColor131   ctermfg=131 guifg=#af5f5f
+-  hi def    dircolorsColor132   ctermfg=132 guifg=#af5f87
+-  hi def    dircolorsColor133   ctermfg=133 guifg=#af5faf
+-  hi def    dircolorsColor134   ctermfg=134 guifg=#af5fd7
+-  hi def    dircolorsColor135   ctermfg=135 guifg=#af5fff
+-  hi def    dircolorsColor136   ctermfg=136 guifg=#af8700
+-  hi def    dircolorsColor137   ctermfg=137 guifg=#af875f
+-  hi def    dircolorsColor138   ctermfg=138 guifg=#af8787
+-  hi def    dircolorsColor139   ctermfg=139 guifg=#af87af
+-  hi def    dircolorsColor140   ctermfg=140 guifg=#af87d7
+-  hi def    dircolorsColor141   ctermfg=141 guifg=#af87ff
+-  hi def    dircolorsColor142   ctermfg=142 guifg=#afaf00
+-  hi def    dircolorsColor143   ctermfg=143 guifg=#afaf5f
+-  hi def    dircolorsColor144   ctermfg=144 guifg=#afaf87
+-  hi def    dircolorsColor145   ctermfg=145 guifg=#afafaf
+-  hi def    dircolorsColor146   ctermfg=146 guifg=#afafd7
+-  hi def    dircolorsColor147   ctermfg=147 guifg=#afafff
+-  hi def    dircolorsColor148   ctermfg=148 guifg=#afd700
+-  hi def    dircolorsColor149   ctermfg=149 guifg=#afd75f
+-  hi def    dircolorsColor150   ctermfg=150 guifg=#afd787
+-  hi def    dircolorsColor151   ctermfg=151 guifg=#afd7af
+-  hi def    dircolorsColor152   ctermfg=152 guifg=#afd7d7
+-  hi def    dircolorsColor153   ctermfg=153 guifg=#afd7ff
+-  hi def    dircolorsColor154   ctermfg=154 guifg=#afff00
+-  hi def    dircolorsColor155   ctermfg=155 guifg=#afff5f
+-  hi def    dircolorsColor156   ctermfg=156 guifg=#afff87
+-  hi def    dircolorsColor157   ctermfg=157 guifg=#afffaf
+-  hi def    dircolorsColor158   ctermfg=158 guifg=#afffd7
+-  hi def    dircolorsColor159   ctermfg=159 guifg=#afffff
+-  hi def    dircolorsColor160   ctermfg=160 guifg=#d70000
+-  hi def    dircolorsColor161   ctermfg=161 guifg=#d7005f
+-  hi def    dircolorsColor162   ctermfg=162 guifg=#d70087
+-  hi def    dircolorsColor163   ctermfg=163 guifg=#d700af
+-  hi def    dircolorsColor164   ctermfg=164 guifg=#d700d7
+-  hi def    dircolorsColor165   ctermfg=165 guifg=#d700ff
+-  hi def    dircolorsColor166   ctermfg=166 guifg=#d75f00
+-  hi def    dircolorsColor167   ctermfg=167 guifg=#d75f5f
+-  hi def    dircolorsColor168   ctermfg=168 guifg=#d75f87
+-  hi def    dircolorsColor169   ctermfg=169 guifg=#d75faf
+-  hi def    dircolorsColor170   ctermfg=170 guifg=#d75fd7
+-  hi def    dircolorsColor171   ctermfg=171 guifg=#d75fff
+-  hi def    dircolorsColor172   ctermfg=172 guifg=#d78700
+-  hi def    dircolorsColor173   ctermfg=173 guifg=#d7875f
+-  hi def    dircolorsColor174   ctermfg=174 guifg=#d78787
+-  hi def    dircolorsColor175   ctermfg=175 guifg=#d787af
+-  hi def    dircolorsColor176   ctermfg=176 guifg=#d787d7
+-  hi def    dircolorsColor177   ctermfg=177 guifg=#d787ff
+-  hi def    dircolorsColor178   ctermfg=178 guifg=#d7af00
+-  hi def    dircolorsColor179   ctermfg=179 guifg=#d7af5f
+-  hi def    dircolorsColor180   ctermfg=180 guifg=#d7af87
+-  hi def    dircolorsColor181   ctermfg=181 guifg=#d7afaf
+-  hi def    dircolorsColor182   ctermfg=182 guifg=#d7afd7
+-  hi def    dircolorsColor183   ctermfg=183 guifg=#d7afff
+-  hi def    dircolorsColor184   ctermfg=184 guifg=#d7d700
+-  hi def    dircolorsColor185   ctermfg=185 guifg=#d7d75f
+-  hi def    dircolorsColor186   ctermfg=186 guifg=#d7d787
+-  hi def    dircolorsColor187   ctermfg=187 guifg=#d7d7af
+-  hi def    dircolorsColor188   ctermfg=188 guifg=#d7d7d7
+-  hi def    dircolorsColor189   ctermfg=189 guifg=#d7d7ff
+-  hi def    dircolorsColor190   ctermfg=190 guifg=#d7ff00
+-  hi def    dircolorsColor191   ctermfg=191 guifg=#d7ff5f
+-  hi def    dircolorsColor192   ctermfg=192 guifg=#d7ff87
+-  hi def    dircolorsColor193   ctermfg=193 guifg=#d7ffaf
+-  hi def    dircolorsColor194   ctermfg=194 guifg=#d7ffd7
+-  hi def    dircolorsColor195   ctermfg=195 guifg=#d7ffff
+-  hi def    dircolorsColor196   ctermfg=196 guifg=#ff0000
+-  hi def    dircolorsColor197   ctermfg=197 guifg=#ff005f
+-  hi def    dircolorsColor198   ctermfg=198 guifg=#ff0087
+-  hi def    dircolorsColor199   ctermfg=199 guifg=#ff00af
+-  hi def    dircolorsColor200   ctermfg=200 guifg=#ff00d7
+-  hi def    dircolorsColor201   ctermfg=201 guifg=#ff00ff
+-  hi def    dircolorsColor202   ctermfg=202 guifg=#ff5f00
+-  hi def    dircolorsColor203   ctermfg=203 guifg=#ff5f5f
+-  hi def    dircolorsColor204   ctermfg=204 guifg=#ff5f87
+-  hi def    dircolorsColor205   ctermfg=205 guifg=#ff5faf
+-  hi def    dircolorsColor206   ctermfg=206 guifg=#ff5fd7
+-  hi def    dircolorsColor207   ctermfg=207 guifg=#ff5fff
+-  hi def    dircolorsColor208   ctermfg=208 guifg=#ff8700
+-  hi def    dircolorsColor209   ctermfg=209 guifg=#ff875f
+-  hi def    dircolorsColor210   ctermfg=210 guifg=#ff8787
+-  hi def    dircolorsColor211   ctermfg=211 guifg=#ff87af
+-  hi def    dircolorsColor212   ctermfg=212 guifg=#ff87d7
+-  hi def    dircolorsColor213   ctermfg=213 guifg=#ff87ff
+-  hi def    dircolorsColor214   ctermfg=214 guifg=#ffaf00
+-  hi def    dircolorsColor215   ctermfg=215 guifg=#ffaf5f
+-  hi def    dircolorsColor216   ctermfg=216 guifg=#ffaf87
+-  hi def    dircolorsColor217   ctermfg=217 guifg=#ffafaf
+-  hi def    dircolorsColor218   ctermfg=218 guifg=#ffafd7
+-  hi def    dircolorsColor219   ctermfg=219 guifg=#ffafff
+-  hi def    dircolorsColor220   ctermfg=220 guifg=#ffd700
+-  hi def    dircolorsColor221   ctermfg=221 guifg=#ffd75f
+-  hi def    dircolorsColor222   ctermfg=222 guifg=#ffd787
+-  hi def    dircolorsColor223   ctermfg=223 guifg=#ffd7af
+-  hi def    dircolorsColor224   ctermfg=224 guifg=#ffd7d7
+-  hi def    dircolorsColor225   ctermfg=225 guifg=#ffd7ff
+-  hi def    dircolorsColor226   ctermfg=226 guifg=#ffff00
+-  hi def    dircolorsColor227   ctermfg=227 guifg=#ffff5f
+-  hi def    dircolorsColor228   ctermfg=228 guifg=#ffff87
+-  hi def    dircolorsColor229   ctermfg=229 guifg=#ffffaf
+-  hi def    dircolorsColor230   ctermfg=230 guifg=#ffffd7
+-  hi def    dircolorsColor231   ctermfg=231 guifg=#ffffff
+-  hi def    dircolorsColor232   ctermfg=232 guifg=#080808
+-  hi def    dircolorsColor233   ctermfg=233 guifg=#121212
+-  hi def    dircolorsColor234   ctermfg=234 guifg=#1c1c1c
+-  hi def    dircolorsColor235   ctermfg=235 guifg=#262626
+-  hi def    dircolorsColor236   ctermfg=236 guifg=#303030
+-  hi def    dircolorsColor237   ctermfg=237 guifg=#3a3a3a
+-  hi def    dircolorsColor238   ctermfg=238 guifg=#444444
+-  hi def    dircolorsColor239   ctermfg=239 guifg=#4e4e4e
+-  hi def    dircolorsColor240   ctermfg=240 guifg=#585858
+-  hi def    dircolorsColor241   ctermfg=241 guifg=#626262
+-  hi def    dircolorsColor242   ctermfg=242 guifg=#6c6c6c
+-  hi def    dircolorsColor243   ctermfg=243 guifg=#767676
+-  hi def    dircolorsColor244   ctermfg=244 guifg=#808080
+-  hi def    dircolorsColor245   ctermfg=245 guifg=#8a8a8a
+-  hi def    dircolorsColor246   ctermfg=246 guifg=#949494
+-  hi def    dircolorsColor247   ctermfg=247 guifg=#9e9e9e
+-  hi def    dircolorsColor248   ctermfg=248 guifg=#a8a8a8
+-  hi def    dircolorsColor249   ctermfg=249 guifg=#b2b2b2
+-  hi def    dircolorsColor250   ctermfg=250 guifg=#bcbcbc
+-  hi def    dircolorsColor251   ctermfg=251 guifg=#c6c6c6
+-  hi def    dircolorsColor252   ctermfg=252 guifg=#d0d0d0
+-  hi def    dircolorsColor253   ctermfg=253 guifg=#dadada
+-  hi def    dircolorsColor254   ctermfg=254 guifg=#e4e4e4
+-  hi def    dircolorsColor255   ctermfg=255 guifg=#eeeeee
+-else
+-  hi def link dircolorsNumber     Number
++if has('gui_running') || &t_Co != ''
++    call s:reset_colors()
++
++    autocmd CursorMoved,CursorMovedI <buffer> call s:preview_color('.')
++    autocmd CursorHold,CursorHoldI   <buffer> call s:reset_colors()
+ endif
+ 
+ let b:current_syntax = "dircolors"
+diff -Naur vim74.orig/runtime/syntax/help.vim vim74/runtime/syntax/help.vim
+--- vim74.orig/runtime/syntax/help.vim	2013-07-07 11:27:18.000000000 +0000
++++ vim74/runtime/syntax/help.vim	2013-10-01 16:15:43.804538769 +0000
+@@ -1,7 +1,7 @@
+ " Vim syntax file
+ " Language:	Vim help file
+ " Maintainer:	Bram Moolenaar (Bram@vim.org)
+-" Last Change:	2013 Jul 07
++" Last Change:	2013 Sep 05
+ 
+ " Quit when a (custom) syntax file was already loaded
+ if exists("b:current_syntax")
+@@ -44,7 +44,7 @@
+ syn match helpVim		"VIM REFERENCE.*"
+ syn match helpOption		"'[a-z]\{2,\}'"
+ syn match helpOption		"'t_..'"
+-syn match helpCommand		"`[^` ]\+`"hs=s+1,he=e-1 contains=helpBacktick
++syn match helpCommand		"`[^` \t]\+`"hs=s+1,he=e-1 contains=helpBacktick
+ syn match helpHeader		"\s*\zs.\{-}\ze\s\=\~$" nextgroup=helpIgnore
+ syn match helpGraphic		".* \ze`$" nextgroup=helpIgnore
+ if has("conceal")
+diff -Naur vim74.orig/runtime/syntax/j.vim vim74/runtime/syntax/j.vim
+--- vim74.orig/runtime/syntax/j.vim	1970-01-01 00:00:00.000000000 +0000
++++ vim74/runtime/syntax/j.vim	2013-10-01 16:15:43.812538769 +0000
+@@ -0,0 +1,43 @@
++" Vim syntax file
++" Language:	J
++" Maintainer:	David BÃŒrgin <676c7473@gmail.com>
++" Last Change:	2013-09-21
++
++if exists("b:current_syntax")
++  finish
++endif
++
++syntax case match
++syntax sync minlines=50
++
++syn match jControl /\<\%(assert\|break\|case\|catch[dt]\=\|continue\|do\|else\%(if\)\=\|end\|fcase\|for\|if\|return\|select\|throw\|try\|whil\%(e\|st\)\)\./
++syn match jControl /\<\%(for\|goto\|label\)_\a\k*\./
++
++syn region jString oneline start=/'/ skip=/''/ end=/'/
++
++" Patterns for numbers in general, rational numbers, numbers with explicit
++" base, infinities, and numbers with extended precision.
++"
++" Matching J numbers is difficult. The regular expression used for the general
++" case roughly embodies this grammar sketch:
++"
++"         EXP     := /_?\d+(\.\d*)?([eE]_?\d+)?/
++"         COMP    := EXP  |  EXP (j|a[dr]) EXP
++"         PIEU    := COMP  |  COMP [px] COMP
++"
++" For the rest, a compromise between correctness and practicality was made.
++" See http://www.jsoftware.com/help/dictionary/dcons.htm for reference.
++syn match jNumber /\<_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\%(\%(j\|a[dr]\)_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\)\=\%([px]_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\%(\%(j\|a[dr]\)_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\)\=\)\=/
++syn match jNumber /\<_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=r_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=/
++syn match jNumber /\<_\=\d\+\%([eE]\d\+\)\=b_\=[0-9a-z]\+/
++syn match jNumber /\<__\=\>/
++syn match jNumber /\<_\=\d\+x\>/
++
++syn match jComment /NB\..*$/
++
++hi def link jControl Statement
++hi def link jString String
++hi def link jNumber Number
++hi def link jComment Comment
++
++let b:current_syntax = "j"
+diff -Naur vim74.orig/runtime/syntax/mail.vim vim74/runtime/syntax/mail.vim
+--- vim74.orig/runtime/syntax/mail.vim	2013-07-15 21:28:26.000000000 +0000
++++ vim74/runtime/syntax/mail.vim	2013-10-01 16:15:43.828538768 +0000
+@@ -2,7 +2,7 @@
+ " Language:		Mail file
+ " Previous Maintainer:	Felix von Leitner <leitner@math.fu-berlin.de>
+ " Maintainer:		GI <a@b.c>, where a='gi1242+vim', b='gmail', c='com'
+-" Last Change:		Thu 02 Feb 2012 08:47:04 PM EST
++" Last Change:		Wed 14 Aug 2013 08:24:52 AM PDT
+ 
+ " Quit when a syntax file was already loaded
+ if exists("b:current_syntax")
+@@ -55,7 +55,7 @@
+ 
+ " Treat verbatim Text special.
+ syn region	mailVerbatim	contains=@NoSpell keepend start="^#v+$" end="^#v-$" fold 
+-syn region	mailVerbatim	contains=@mailQuoteExps,@NoSpell start="^\z(\(> \?\)\+\)#v+$" end="\z1#v-$" fold 
++syn region	mailVerbatim	contains=@mailQuoteExps,@NoSpell keepend start="^\z(\(> \?\)\+\)#v+$" end="\z1#v-$" fold 
+ 
+ " URLs start with a known protocol or www,web,w3.
+ syn match mailURL contains=@NoSpell `\v<(((https?|ftp|gopher)://|(mailto|file|news):)[^' 	<>"]+|(www|web|w3)[a-z0-9_-]*\.[a-z0-9._-]+\.[^' 	<>"]+)[a-z0-9/]`
+diff -Naur vim74.orig/runtime/syntax/php.vim vim74/runtime/syntax/php.vim
+--- vim74.orig/runtime/syntax/php.vim	2012-12-11 20:15:31.000000000 +0000
++++ vim74/runtime/syntax/php.vim	2013-10-01 16:15:43.860538768 +0000
+@@ -1,7 +1,7 @@
+ " Vim syntax file
+ " Language: php PHP 3/4/5
+ " Maintainer: Jason Woofenden <jason@jasonwoof.com>
+-" Last Change: Dec 11, 2012
++" Last Change: Aug 28, 2013
+ " URL: https://gitorious.org/jasonwoof/vim-syntax/blobs/master/php.vim
+ " Former Maintainers: Peter Hodge <toomuchphp-vim@yahoo.com>
+ "         Debian VIM Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
+@@ -616,6 +616,11 @@
+   exec "syn sync fromstart"
+ endif
+ 
++syntax match  phpDocCustomTags  "@[a-zA-Z]*\(\s\+\|\n\|\r\)" containedin=phpComment
++syntax region phpDocTags  start="{@\(example\|id\|internal\|inheritdoc\|link\|source\|toc\|tutorial\)" end="}" containedin=phpComment
++syntax match  phpDocTags  "@\(abstract\|access\|author\|category\|copyright\|deprecated\|example\|final\|global\|ignore\|internal\|license\|link\|method\|name\|package\|param\|property\|return\|see\|since\|static\|staticvar\|subpackage\|tutorial\|uses\|var\|version\|contributor\|modified\|filename\|description\|filesource\|throws\)\(\s\+\)\?" containedin=phpComment
++syntax match  phpDocTodo  "@\(todo\|fixme\|xxx\)\(\s\+\)\?" containedin=phpComment
++
+ " Define the default highlighting.
+ " For version 5.7 and earlier: only when not done already
+ " For version 5.8 and later: only when an item doesn't have highlighting yet
+@@ -630,6 +635,8 @@
+   HiLink   phpConstant  Constant
+   HiLink   phpCoreConstant  Constant
+   HiLink   phpComment Comment
++  HiLink   phpDocTags PreProc
++  HiLink   phpDocCustomTags Type
+   HiLink   phpException Exception
+   HiLink   phpBoolean Boolean
+   HiLink   phpStorageClass  StorageClass
+@@ -668,6 +675,7 @@
+   HiLink   phpInterpSimpleCurly Delimiter
+   HiLink   phpInterpVarname Identifier
+   HiLink   phpTodo  Todo
++  HiLink   phpDocTodo Todo
+   HiLink   phpMemberSelector  Structure
+   if exists("php_oldStyle")
+   hi  phpIntVar guifg=Red ctermfg=DarkRed
+diff -Naur vim74.orig/runtime/syntax/vhdl.vim vim74/runtime/syntax/vhdl.vim
+--- vim74.orig/runtime/syntax/vhdl.vim	2012-06-01 16:05:47.000000000 +0000
++++ vim74/runtime/syntax/vhdl.vim	2013-10-01 16:15:43.920538766 +0000
+@@ -1,12 +1,12 @@
+ " Vim syntax file
+ " Language:	VHDL
+-" Maintainer:	Czo <Olivier.Sirol@lip6.fr>
++" Maintainer:	Daniel Kho <daniel.kho@tauhop.com>
++" Previous Maintainer:	Czo <Olivier.Sirol@lip6.fr>
+ " Credits:	Stephan Hegel <stephan.hegel@snc.siemens.com.cn>
+-" Last Change:	2012 Jun 01
+-" 		(Dominique Pelle added @Spell)
++" Last Changed:	2012 Feb 03 by Thilo Six
++" $Id: vhdl.vim,v 1.1 2004/06/13 15:34:56 vimboss Exp $
+ 
+-" VHSIC Hardware Description Language
+-" Very High Scale Integrated Circuit
++" VHSIC (Very High Speed Integrated Circuit) Hardware Description Language
+ 
+ " For version 5.x: Clear all syntax items
+ " For version 6.x: Quit when a syntax file was already loaded
+@@ -22,8 +22,8 @@
+ " This is not VHDL. I use the C-Preprocessor cpp to generate different binaries
+ " from one VHDL source file. Unfortunately there is no preprocessor for VHDL
+ " available. If you don't like this, please remove the following lines.
+-syn match cDefine "^#ifdef[ ]\+[A-Za-z_]\+"
+-syn match cDefine "^#endif"
++"syn match cDefine "^#ifdef[ ]\+[A-Za-z_]\+"
++"syn match cDefine "^#endif"
+ 
+ " case is not significant
+ syn case ignore
+@@ -31,11 +31,14 @@
+ " VHDL keywords
+ syn keyword vhdlStatement access after alias all assert
+ syn keyword vhdlStatement architecture array attribute
++syn keyword vhdlStatement assume assume_guarantee
+ syn keyword vhdlStatement begin block body buffer bus
+ syn keyword vhdlStatement case component configuration constant
+-syn keyword vhdlStatement disconnect downto
++syn keyword vhdlStatement context cover
++syn keyword vhdlStatement default disconnect downto
+ syn keyword vhdlStatement elsif end entity exit
+ syn keyword vhdlStatement file for function
++syn keyword vhdlStatement fairness force
+ syn keyword vhdlStatement generate generic group guarded
+ syn keyword vhdlStatement impure in inertial inout is
+ syn keyword vhdlStatement label library linkage literal loop
+@@ -43,12 +46,17 @@
+ syn keyword vhdlStatement new next null
+ syn keyword vhdlStatement of on open others out
+ syn keyword vhdlStatement package port postponed procedure process pure
++syn keyword vhdlStatement parameter property protected
+ syn keyword vhdlStatement range record register reject report return
++syn keyword vhdlStatement release restrict restrict_guarantee
+ syn keyword vhdlStatement select severity signal shared
+ syn keyword vhdlStatement subtype
++syn keyword vhdlStatement sequence strong
+ syn keyword vhdlStatement then to transport type
+ syn keyword vhdlStatement unaffected units until use
+-syn keyword vhdlStatement variable wait when while with
++syn keyword vhdlStatement variable
++syn keyword vhdlStatement vmode vprop vunit
++syn keyword vhdlStatement wait when while with
+ syn keyword vhdlStatement note warning error failure
+ 
+ " Special match for "if" and "else" since "else if" shouldn't be highlighted.
+@@ -60,6 +68,7 @@
+ " Predefined VHDL types
+ syn keyword vhdlType bit bit_vector
+ syn keyword vhdlType character boolean integer real time
++syn keyword vhdlType boolean_vector integer_vector real_vector time_vector
+ syn keyword vhdlType string severity_level
+ " Predefined standard ieee VHDL types
+ syn keyword vhdlType positive natural signed unsigned
+@@ -67,11 +76,11 @@
+ syn keyword vhdlType std_logic std_logic_vector
+ syn keyword vhdlType std_ulogic std_ulogic_vector
+ " Predefined non standard VHDL types for Mentor Graphics Sys1076/QuickHDL
+-syn keyword vhdlType qsim_state qsim_state_vector
+-syn keyword vhdlType qsim_12state qsim_12state_vector
+-syn keyword vhdlType qsim_strength
++"syn keyword vhdlType qsim_state qsim_state_vector
++"syn keyword vhdlType qsim_12state qsim_12state_vector
++"syn keyword vhdlType qsim_strength
+ " Predefined non standard VHDL types for Alliance VLSI CAD
+-syn keyword vhdlType mux_bit mux_vector reg_bit reg_vector wor_bit wor_vector
++"syn keyword vhdlType mux_bit mux_vector reg_bit reg_vector wor_bit wor_vector
+ 
+ " array attributes
+ syn match vhdlAttribute "\'high"
+@@ -122,14 +131,14 @@
+ " Values for standard VHDL types
+ syn match vhdlVector "\'[0L1HXWZU\-\?]\'"
+ " Values for non standard VHDL types qsim_12state for Mentor Graphics Sys1076/QuickHDL
+-syn keyword vhdlVector S0S S1S SXS S0R S1R SXR S0Z S1Z SXZ S0I S1I SXI
++"syn keyword vhdlVector S0S S1S SXS S0R S1R SXR S0Z S1Z SXZ S0I S1I SXI
+ syn case ignore
+ 
+ syn match  vhdlVector "B\"[01_]\+\""
+ syn match  vhdlVector "O\"[0-7_]\+\""
+ syn match  vhdlVector "X\"[0-9a-f_]\+\""
+ syn match  vhdlCharacter "'.'"
+-syn region vhdlString start=+"+  end=+"+ contains=@Spell
++syn region vhdlString start=+"+  end=+"+
+ 
+ " floating numbers
+ syn match vhdlNumber "-\=\<\d\+\.\d\+\(E[+\-]\=\d\+\)\>"
+@@ -151,9 +160,15 @@
+ syn match vhdlTime "\<\d\+\s\+\(\([fpnum]s\)\|\(sec\)\|\(min\)\|\(hr\)\)\>"
+ syn match vhdlTime "\<\d\+\.\d\+\s\+\(\([fpnum]s\)\|\(sec\)\|\(min\)\|\(hr\)\)\>"
+ 
+-syn match vhdlComment "--.*$" contains=@Spell
++syn keyword vhdlTodo contained TODO FIXME
++
++syn region vhdlComment start="/\*" end="\*/" contains=vhdlTodo,@Spell
++syn match vhdlComment "--.*" contains=vhdlTodo,@Spell
+ " syn match vhdlGlobal "[\'$#~!%@?\^\[\]{}\\]"
+ 
++"Modify the following as needed.  The trade-off is performance versus functionality.
++syn sync minlines=200
++
+ " Define the default highlighting.
+ " For version 5.7 and earlier: only when not done already
+ " For version 5.8 and later: only when an item doesn't have highlighting yet
+@@ -165,19 +180,20 @@
+     command -nargs=+ HiLink hi def link <args>
+   endif
+ 
+-  HiLink cDefine       PreProc
++"  HiLink cDefine       PreProc
+   HiLink vhdlSpecial   Special
+   HiLink vhdlStatement Statement
+-  HiLink vhdlCharacter String
++  HiLink vhdlCharacter Character
+   HiLink vhdlString    String
+-  HiLink vhdlVector    String
+-  HiLink vhdlBoolean   String
++  HiLink vhdlVector    Number
++  HiLink vhdlBoolean   Number
++  HiLink vhdlTodo      Todo
+   HiLink vhdlComment   Comment
+-  HiLink vhdlNumber    String
+-  HiLink vhdlTime      String
++  HiLink vhdlNumber    Number
++  HiLink vhdlTime      Number
+   HiLink vhdlType      Type
+-  HiLink vhdlOperator  Type
+-  HiLink vhdlGlobal    Error
++  HiLink vhdlOperator  Special
++"  HiLink vhdlGlobal    Error
+   HiLink vhdlAttribute Type
+ 
+   delcommand HiLink
+diff -Naur vim74.orig/runtime/syntax/vim.vim vim74/runtime/syntax/vim.vim
+--- vim74.orig/runtime/syntax/vim.vim	2013-07-05 16:35:45.000000000 +0000
++++ vim74/runtime/syntax/vim.vim	2013-10-01 16:15:43.924538766 +0000
+@@ -1,8 +1,8 @@
+ " Vim syntax file
+-" Language:	Vim 7.3 script
+-" Maintainer:	Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
+-" Last Change:	Jul 05, 2013
+-" Version:	7.3-26
++" Language:	Vim 7.4 script
++" Maintainer:	Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
++" Last Change:	Aug 16, 2013
++" Version:	7.4-1
+ " Automatically generated keyword lists: {{{1
+ 
+ " Quit when a syntax file was already loaded {{{2
+@@ -550,15 +550,31 @@
+ " Allows users to specify the type of embedded script highlighting
+ " they want:  (perl/python/ruby/tcl support)
+ "   g:vimsyn_embed == 0   : don't embed any scripts
+-"   g:vimsyn_embed ~= 'l' : embed lua      (but only if vim supports it)
+-"   g:vimsyn_embed ~= 'm' : embed mzscheme (but only if vim supports it)
+-"   g:vimsyn_embed ~= 'p' : embed perl     (but only if vim supports it)
+-"   g:vimsyn_embed ~= 'P' : embed python   (but only if vim supports it)
+-"   g:vimsyn_embed ~= 'r' : embed ruby     (but only if vim supports it)
+-"   g:vimsyn_embed ~= 't' : embed tcl      (but only if vim supports it)
++"   g:vimsyn_embed ~= 'l' : embed lua
++"   g:vimsyn_embed ~= 'm' : embed mzscheme
++"   g:vimsyn_embed ~= 'p' : embed perl
++"   g:vimsyn_embed ~= 'P' : embed python
++"   g:vimsyn_embed ~= 'r' : embed ruby
++"   g:vimsyn_embed ~= 't' : embed tcl
++if has("win32") || has("win95") || has("win64") || has("win16")
++ " apparently has("tcl") has been hanging vim on some windows systems with cygwin
++ let s:trytcl= (&shell !~ '\<\%(bash\>\|4[nN][tT]\|\<zsh\)\>\%(\.exe\)\=$')
++else
++ let s:trytcl= 1
++endif
+ if !exists("g:vimsyn_embed")
+- let g:vimsyn_embed= "lmpPr"
++ let g:vimsyn_embed= ""
++ if has("lua")        |let g:vimsyn_embed= g:vimsyn_embed."l"|endif
++ if has("mzscheme")   |let g:vimsyn_embed= g:vimsyn_embed."m"|endif
++ if has("perl")       |let g:vimsyn_embed= g:vimsyn_embed."p"|endif
++ if     has("python") |let g:vimsyn_embed= g:vimsyn_embed."P"
++ elseif has("python3")|let g:vimsyn_embed= g:vimsyn_embed."P"|endif
++ if has("ruby")       |let g:vimsyn_embed= g:vimsyn_embed."r"|endif
++ if s:trytcl         
++  if has("tcl")       |let g:vimsyn_embed= g:vimsyn_embed."t"|endif
++ endif
+ endif
++unlet s:trytcl
+ 
+ " [-- lua --] {{{3
+ let s:luapath= fnameescape(expand("<sfile>:p:h")."/lua.vim")
+@@ -570,7 +586,7 @@
+   endif
+  endfor
+ endif
+-if (g:vimsyn_embed =~ 'l' && has("lua")) && filereadable(s:luapath)
++if (g:vimsyn_embed =~ 'l') && filereadable(s:luapath)
+  unlet! b:current_syntax
+  exe "syn include @vimLuaScript ".s:luapath
+  if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'l'
+@@ -597,7 +613,7 @@
+   endif
+  endfor
+ endif
+-if (g:vimsyn_embed =~ 'p' && has("perl")) && filereadable(s:perlpath)
++if (g:vimsyn_embed =~ 'p') && filereadable(s:perlpath)
+  unlet! b:current_syntax
+  exe "syn include @vimPerlScript ".s:perlpath
+  if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'p'
+@@ -624,7 +640,7 @@
+   endif
+  endfor
+ endif
+-if (g:vimsyn_embed =~ 'r' && has("ruby")) && filereadable(s:rubypath)
++if (g:vimsyn_embed =~ 'r') && filereadable(s:rubypath)
+  unlet! b:current_syntax
+  exe "syn include @vimRubyScript ".s:rubypath
+  if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'r'
+@@ -650,7 +666,7 @@
+   endif
+  endfor
+ endif
+-if g:vimsyn_embed =~ 'P' && (has("python") || has("python3")) && filereadable(s:pythonpath)
++if g:vimsyn_embed =~ 'P' && filereadable(s:pythonpath)
+  unlet! b:current_syntax
+  exe "syn include @vimPythonScript ".s:pythonpath
+  if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'P'
+@@ -668,43 +684,31 @@
+ unlet s:pythonpath
+ 
+ " [-- tcl --] {{{3
+-if has("win32") || has("win95") || has("win64") || has("win16")
+- " apparently has("tcl") has been hanging vim on some windows systems with cygwin
+- let s:trytcl= (&shell !~ '\<\%(bash\>\|4[nN][tT]\|\<zsh\)\>\%(\.exe\)\=$')
+-else
+- let s:trytcl= 1
+-endif
+-if s:trytcl
+- let s:tclpath= fnameescape(expand("<sfile>:p:h")."/tcl.vim")
+- if !filereadable(s:tclpath)
+-  for s:tclpath in split(globpath(&rtp,"syntax/tcl.vim"),"\n")
+-   if filereadable(fnameescape(s:tclpath))
+-    let s:tclpath= fnameescape(s:tclpath)
+-    break
+-   endif
+-  endfor
+- endif
+- if (g:vimsyn_embed =~ 't' && has("tcl")) && filereadable(s:tclpath)
+-  unlet! b:current_syntax
+-  exe "syn include @vimTclScript ".s:tclpath
+-  if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 't'
+-   syn region vimTclRegion fold matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+	contains=@vimTclScript
+-   syn region vimTclRegion fold matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*$+ end=+\.$+	contains=@vimTclScript
+-  else
+-   syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+	contains=@vimTclScript
+-   syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*$+ end=+\.$+		contains=@vimTclScript
++let s:tclpath= fnameescape(expand("<sfile>:p:h")."/tcl.vim")
++if !filereadable(s:tclpath)
++ for s:tclpath in split(globpath(&rtp,"syntax/tcl.vim"),"\n")
++  if filereadable(fnameescape(s:tclpath))
++   let s:tclpath= fnameescape(s:tclpath)
++   break
+   endif
+-  syn cluster vimFuncBodyList	add=vimTclScript
++ endfor
++endif
++if (g:vimsyn_embed =~ 't') && filereadable(s:tclpath)
++ unlet! b:current_syntax
++ exe "syn include @vimTclScript ".s:tclpath
++ if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 't'
++  syn region vimTclRegion fold matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+	contains=@vimTclScript
++  syn region vimTclRegion fold matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*$+ end=+\.$+	contains=@vimTclScript
+  else
+-  syn region vimEmbedError start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+
+-  syn region vimEmbedError start=+tc[l]\=\s*<<\s*$+ end=+\.$+
++  syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+	contains=@vimTclScript
++  syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*$+ end=+\.$+		contains=@vimTclScript
+  endif
+- unlet s:tclpath
++ syn cluster vimFuncBodyList	add=vimTclScript
+ else
+  syn region vimEmbedError start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+
+  syn region vimEmbedError start=+tc[l]\=\s*<<\s*$+ end=+\.$+
+ endif
+-unlet s:trytcl
++unlet s:tclpath
+ 
+ " [-- mzscheme --] {{{3
+ let s:mzschemepath= fnameescape(expand("<sfile>:p:h")."/scheme.vim")
+diff -Naur vim74.orig/runtime/syntax/yaml.vim vim74/runtime/syntax/yaml.vim
+--- vim74.orig/runtime/syntax/yaml.vim	2010-10-08 13:33:39.000000000 +0000
++++ vim74/runtime/syntax/yaml.vim	2013-10-01 16:15:43.936538765 +0000
+@@ -108,9 +108,10 @@
+ syn match yamlFlowMappingMerge /<<\ze\s*:/ contained nextgroup=yamlKeyValueDelimiter
+ 
+ syn match yamlBlockCollectionItemStart '^\s*\zs-\%(\s\+-\)*\s' nextgroup=yamlBlockMappingKey,yamlBlockMappingMerge
+-execute 'syn match yamlBlockMappingKey /^\s*\zs'.s:ns_plain_out.'\ze\s*:\%(\s\|$\)/ '.
++" Use the old regexp engine, the NFA engine doesn't like all the \@ items.
++execute 'syn match yamlBlockMappingKey /\%#=1^\s*\zs'.s:ns_plain_out.'\ze\s*:\%(\s\|$\)/ '.
+             \'nextgroup=yamlKeyValueDelimiter'
+-execute 'syn match yamlBlockMappingKey /\s*\zs'.s:ns_plain_out.'\ze\s*:\%(\s\|$\)/ contained '.
++execute 'syn match yamlBlockMappingKey /\%#=1\s*\zs'.s:ns_plain_out.'\ze\s*:\%(\s\|$\)/ contained '.
+             \'nextgroup=yamlKeyValueDelimiter'
+ syn match yamlBlockMappingMerge /^\s*\zs<<\ze:\%(\s\|$\)/ nextgroup=yamlKeyValueDelimiter
+ syn match yamlBlockMappingMerge /<<\ze\s*:\%(\s\|$\)/ nextgroup=yamlKeyValueDelimiter contained
+diff -Naur vim74.orig/runtime/tutor/tutor.es vim74/runtime/tutor/tutor.es
+--- vim74.orig/runtime/tutor/tutor.es	2010-05-15 11:04:02.000000000 +0000
++++ vim74/runtime/tutor/tutor.es	2013-10-01 16:15:43.956538765 +0000
+@@ -121,7 +121,7 @@
+ 	 h (izquierda)	   j (abajo)	  k (arriba)	  l (derecha)
+ 
+   2. Para acceder a Vim (desde el símbolo del sistema %) escriba:
+-     vin FILENAME <INTRO>
++     vim FILENAME <INTRO>
+ 
+   3. Para salir de Vim escriba: <ESC> :q! <INTRO> para eliminar todos
+      los cambios.
+diff -Naur vim74.orig/src/GvimExt/Make_cyg.mak vim74/src/GvimExt/Make_cyg.mak
+--- vim74.orig/src/GvimExt/Make_cyg.mak	2011-09-30 14:45:49.000000000 +0000
++++ vim74/src/GvimExt/Make_cyg.mak	2013-10-01 16:15:43.988538764 +0000
+@@ -31,12 +31,12 @@
+ ifeq ($(CROSS),yes)
+ DEL = rm
+ ifeq ($(MINGWOLD),yes)
+-CXXFLAGS := -O2 -mno-cygwin -fvtable-thunks
++CXXFLAGS := -O2 -fvtable-thunks
+ else
+-CXXFLAGS := -O2 -mno-cygwin
++CXXFLAGS := -O2
+ endif
+ else
+-CXXFLAGS := -O2 -mno-cygwin
++CXXFLAGS := -O2
+ ifneq (sh.exe, $(SHELL))
+ DEL = rm
+ else
+diff -Naur vim74.orig/src/Make_cyg.mak vim74/src/Make_cyg.mak
+--- vim74.orig/src/Make_cyg.mak	2013-07-06 11:32:11.000000000 +0000
++++ vim74/src/Make_cyg.mak	2013-10-01 16:15:43.996538764 +0000
+@@ -1,6 +1,6 @@
+ #
+ # Makefile for VIM on Win32, using Cygnus gcc
+-# Last updated by Dan Sharp.  Last Change: 2013 Apr 22
++# Last updated by Dan Sharp.  Last Change: 2013 Sep 19
+ #
+ # Also read INSTALLpc.txt!
+ #
+@@ -439,8 +439,6 @@
+ ##############################
+ ifeq (yes, $(USEDLL))
+ DEFINES += -D_MAX_PATH=256 -D__CYGWIN__
+-else
+-INCLUDES += -mno-cygwin
+ endif
+ 
+ ##############################
+diff -Naur vim74.orig/src/auto/config.mk vim74/src/auto/config.mk
+--- vim74.orig/src/auto/config.mk	2013-08-10 12:28:27.000000000 +0000
++++ vim74/src/auto/config.mk	1970-01-01 00:00:00.000000000 +0000
+@@ -1,5 +0,0 @@
+-the first targets to make vim are: scratch config myself
+-srcdir = .
+-VIMNAME = vim
+-EXNAME = ex
+-VIEWNAME = view
+diff -Naur vim74.orig/src/buffer.c vim74/src/buffer.c
+--- vim74.orig/src/buffer.c	2013-07-17 14:39:00.000000000 +0000
++++ vim74/src/buffer.c	2013-10-01 16:15:44.028538763 +0000
+@@ -1186,7 +1186,10 @@
+ 		   && !(curwin->w_closing || curwin->w_buffer->b_closing)
+ # endif
+ 		   && (firstwin != lastwin || first_tabpage->tp_next != NULL))
+-	    win_close(curwin, FALSE);
++	{
++	    if (win_close(curwin, FALSE) == FAIL)
++		break;
++	}
+ #endif
+ 
+ 	/*
+diff -Naur vim74.orig/src/diff.c vim74/src/diff.c
+--- vim74.orig/src/diff.c	2013-07-17 11:43:15.000000000 +0000
++++ vim74/src/diff.c	2013-10-01 16:15:44.036538762 +0000
+@@ -1203,7 +1203,7 @@
+ 
+     for (wp = firstwin; wp != NULL; wp = wp->w_next)
+     {
+-	if (wp == curwin || (eap->forceit && wp->w_p_diff))
++	if (eap->forceit ? wp->w_p_diff : wp == curwin)
+ 	{
+ 	    /* Set 'diff', 'scrollbind' off and 'wrap' on. If option values
+ 	     * were saved in diff_win_options() restore them. */
+diff -Naur vim74.orig/src/edit.c vim74/src/edit.c
+--- vim74.orig/src/edit.c	2013-07-04 18:22:25.000000000 +0000
++++ vim74/src/edit.c	2013-10-01 16:15:44.048538762 +0000
+@@ -3467,7 +3467,6 @@
+     }
+ 
+     compl_enter_selects = !compl_used_match;
+-    compl_shown_match = compl_curr_match = compl_first_match;
+ 
+     /* Show the popup menu with a different set of matches. */
+     ins_compl_show_pum();
+@@ -5184,9 +5183,21 @@
+ 	}
+ 	else if (ctrl_x_mode == CTRL_X_FILES)
+ 	{
+-	    while (--startcol >= 0 && vim_isfilec(line[startcol]))
+-		;
+-	    compl_col += ++startcol;
++	    /* Go back to just before the first filename character. */
++	    if (startcol > 0)
++	    {
++		char_u	*p = line + startcol;
++
++		mb_ptr_back(line, p);
++		while (p > line && vim_isfilec(PTR2CHAR(p)))
++		    mb_ptr_back(line, p);
++		if (p == line && vim_isfilec(PTR2CHAR(p)))
++		    startcol = 0;
++		else
++		    startcol = (int)(p - line) + 1;
++	    }
++
++	    compl_col += startcol;
+ 	    compl_length = (int)curs_col - startcol;
+ 	    compl_pattern = addstar(line + compl_col, compl_length,
+ 								EXPAND_FILES);
+diff -Naur vim74.orig/src/eval.c vim74/src/eval.c
+--- vim74.orig/src/eval.c	2013-07-05 16:23:42.000000000 +0000
++++ vim74/src/eval.c	2013-10-01 16:15:44.056538762 +0000
+@@ -915,12 +915,13 @@
+     /* autoloaded script names */
+     ga_clear_strings(&ga_loaded);
+ 
+-    /* script-local variables */
++    /* Script-local variables. First clear all the variables and in a second
++     * loop free the scriptvar_T, because a variable in one script might hold
++     * a reference to the whole scope of another script. */
+     for (i = 1; i <= ga_scripts.ga_len; ++i)
+-    {
+ 	vars_clear(&SCRIPT_VARS(i));
++    for (i = 1; i <= ga_scripts.ga_len; ++i)
+ 	vim_free(SCRIPT_SV(i));
+-    }
+     ga_clear(&ga_scripts);
+ 
+     /* unreferenced lists and dicts */
+@@ -12135,6 +12136,9 @@
+ #ifndef CASE_INSENSITIVE_FILENAME
+ 	"fname_case",
+ #endif
++#ifdef HAVE_ACL
++	"acl",
++#endif
+ #ifdef FEAT_ARABIC
+ 	"arabic",
+ #endif
+@@ -12538,7 +12542,12 @@
+ 	"xfontset",
+ #endif
+ #ifdef FEAT_XPM_W32
+-	"xpm_w32",
++	"xpm",
++	"xpm_w32",	/* for backward compatibility */
++#else
++# if defined(HAVE_XPM)
++	"xpm",
++# endif
+ #endif
+ #ifdef USE_XSMP
+ 	"xsmp",
+@@ -14292,14 +14301,23 @@
+ 	return;
+ 
+     dir = get_tv_string_buf(&argvars[0], buf);
+-    if (argvars[1].v_type != VAR_UNKNOWN)
++    if (*dir == NUL)
++	rettv->vval.v_number = FAIL;
++    else
+     {
+-	if (argvars[2].v_type != VAR_UNKNOWN)
+-	    prot = get_tv_number_chk(&argvars[2], NULL);
+-	if (prot != -1 && STRCMP(get_tv_string(&argvars[1]), "p") == 0)
+-	    mkdir_recurse(dir, prot);
++	if (*gettail(dir) == NUL)
++	    /* remove trailing slashes */
++	    *gettail_sep(dir) = NUL;
++
++	if (argvars[1].v_type != VAR_UNKNOWN)
++	{
++	    if (argvars[2].v_type != VAR_UNKNOWN)
++		prot = get_tv_number_chk(&argvars[2], NULL);
++	    if (prot != -1 && STRCMP(get_tv_string(&argvars[1]), "p") == 0)
++		mkdir_recurse(dir, prot);
++	}
++	rettv->vval.v_number = prot == -1 ? FAIL : vim_mkdir_emsg(dir, prot);
+     }
+-    rettv->vval.v_number = prot != -1 ? vim_mkdir_emsg(dir, prot) : 0;
+ }
+ #endif
+ 
+@@ -24283,6 +24301,7 @@
+     garray_T	ga;
+     char_u	*ret;
+     char_u	*save_cpo;
++    int		zero_width;
+ 
+     /* Make 'cpoptions' empty, so that the 'l' flag doesn't work here */
+     save_cpo = p_cpo;
+@@ -24321,20 +24340,17 @@
+ 	    (void)vim_regsub(&regmatch, sub, (char_u *)ga.ga_data
+ 					  + ga.ga_len + i, TRUE, TRUE, FALSE);
+ 	    ga.ga_len += i + sublen - 1;
+-	    /* avoid getting stuck on a match with an empty string */
+-	    if (tail == regmatch.endp[0])
++	    zero_width = (tail == regmatch.endp[0]
++				    || regmatch.startp[0] == regmatch.endp[0]);
++	    tail = regmatch.endp[0];
++	    if (*tail == NUL)
++		break;
++	    if (zero_width)
+ 	    {
+-		if (*tail == NUL)
+-		    break;
++		/* avoid getting stuck on a match with an empty string */
+ 		*((char_u *)ga.ga_data + ga.ga_len) = *tail++;
+ 		++ga.ga_len;
+ 	    }
+-	    else
+-	    {
+-		tail = regmatch.endp[0];
+-		if (*tail == NUL)
+-		    break;
+-	    }
+ 	    if (!do_all)
+ 		break;
+ 	}
+diff -Naur vim74.orig/src/fileio.c vim74/src/fileio.c
+--- vim74.orig/src/fileio.c	2013-08-05 19:58:03.000000000 +0000
++++ vim74/src/fileio.c	2013-10-01 16:15:44.072538761 +0000
+@@ -428,13 +428,13 @@
+ 	}
+     }
+ 
+-#ifdef UNIX
+-    /*
+-     * On Unix it is possible to read a directory, so we have to
+-     * check for it before the mch_open().
+-     */
+     if (!read_stdin && !read_buffer)
+     {
++#ifdef UNIX
++	/*
++	 * On Unix it is possible to read a directory, so we have to
++	 * check for it before the mch_open().
++	 */
+ 	perm = mch_getperm(fname);
+ 	if (perm >= 0 && !S_ISREG(perm)		    /* not a regular file ... */
+ # ifdef S_ISFIFO
+@@ -457,8 +457,8 @@
+ 	    msg_scroll = msg_save;
+ 	    return FAIL;
+ 	}
+-
+-# if defined(MSDOS) || defined(MSWIN) || defined(OS2)
++#endif
++#if defined(MSDOS) || defined(MSWIN) || defined(OS2)
+ 	/*
+ 	 * MS-Windows allows opening a device, but we will probably get stuck
+ 	 * trying to read it.
+@@ -470,9 +470,8 @@
+ 	    msg_scroll = msg_save;
+ 	    return FAIL;
+ 	}
+-# endif
+-    }
+ #endif
++    }
+ 
+     /* Set default or forced 'fileformat' and 'binary'. */
+     set_file_options(set_options, eap);
+@@ -2926,9 +2925,14 @@
+     int		*did_ask;	/* flag: whether already asked for key */
+ {
+     int method = crypt_method_from_magic((char *)ptr, *sizep);
++    int b_p_ro = curbuf->b_p_ro;
+ 
+     if (method >= 0)
+     {
++	/* Mark the buffer as read-only until the decryption has taken place.
++	 * Avoids accidentally overwriting the file with garbage. */
++	curbuf->b_p_ro = TRUE;
++
+ 	set_crypt_method(curbuf, method);
+ 	if (method > 0)
+ 	    (void)blowfish_self_test();
+@@ -2977,6 +2981,8 @@
+ 	    *sizep -= CRYPT_MAGIC_LEN + salt_len + seed_len;
+ 	    mch_memmove(ptr, ptr + CRYPT_MAGIC_LEN + salt_len + seed_len,
+ 							      (size_t)*sizep);
++	    /* Restore the read-only flag. */
++	    curbuf->b_p_ro = b_p_ro;
+ 	}
+     }
+     /* When starting to edit a new file which does not have encryption, clear
+diff -Naur vim74.orig/src/gui_w48.c vim74/src/gui_w48.c
+--- vim74.orig/src/gui_w48.c	2013-08-10 11:36:45.000000000 +0000
++++ vim74/src/gui_w48.c	2013-10-01 16:15:44.096538761 +0000
+@@ -1008,7 +1008,7 @@
+     static LPARAM last_lParam = 0L;
+ 
+     /* We sometimes get a mousemove when the mouse didn't move... */
+-    if (uMsg == WM_MOUSEMOVE)
++    if (uMsg == WM_MOUSEMOVE || uMsg == WM_NCMOUSEMOVE)
+     {
+ 	if (lParam == last_lParam)
+ 	    return;
+diff -Naur vim74.orig/src/main.c vim74/src/main.c
+--- vim74.orig/src/main.c	2013-07-03 10:36:49.000000000 +0000
++++ vim74/src/main.c	2013-10-01 16:15:44.124538760 +0000
+@@ -812,7 +812,7 @@
+     starttermcap();	    /* start termcap if not done by wait_return() */
+     TIME_MSG("start termcap");
+ #if defined(FEAT_TERMRESPONSE) && defined(FEAT_MBYTE)
+-    may_req_ambiguous_character_width();
++    may_req_ambiguous_char_width();
+ #endif
+ 
+ #ifdef FEAT_MOUSE
+@@ -2727,6 +2727,7 @@
+     int		arg_idx;		/* index in argument list */
+     int		i;
+     int		advance = TRUE;
++    win_T	*win;
+ 
+ # ifdef FEAT_AUTOCMD
+     /*
+@@ -2816,24 +2817,22 @@
+ # ifdef FEAT_AUTOCMD
+     --autocmd_no_enter;
+ # endif
++
++    /* make the first window the current window */
++    win = firstwin;
+ #if defined(FEAT_WINDOWS) && defined(FEAT_QUICKFIX)
+-    /*
+-     * Avoid making a preview window the current window.
+-     */
+-    if (firstwin->w_p_pvw)
++    /* Avoid making a preview window the current window. */
++    while (win->w_p_pvw)
+     {
+-       win_T   *win;
+-
+-       for (win = firstwin; win != NULL; win = win->w_next)
+-           if (!win->w_p_pvw)
+-           {
+-               firstwin = win;
+-               break;
+-           }
++	win = win->w_next;
++	if (win == NULL)
++	{
++	    win = firstwin;
++	    break;
++	}
+     }
+ #endif
+-    /* make the first window the current window */
+-    win_enter(firstwin, FALSE);
++    win_enter(win, FALSE);
+ 
+ # ifdef FEAT_AUTOCMD
+     --autocmd_no_leave;
+diff -Naur vim74.orig/src/misc1.c vim74/src/misc1.c
+--- vim74.orig/src/misc1.c	2013-08-03 15:29:33.000000000 +0000
++++ vim74/src/misc1.c	2013-10-01 16:15:44.136538760 +0000
+@@ -9174,6 +9174,8 @@
+ /*
+  * Preserve files and exit.
+  * When called IObuff must contain a message.
++ * NOTE: This may be called from deathtrap() in a signal handler, avoid unsafe
++ * functions, such as allocating memory.
+  */
+     void
+ preserve_exit()
+@@ -9196,7 +9198,7 @@
+     {
+ 	if (buf->b_ml.ml_mfp != NULL && buf->b_ml.ml_mfp->mf_fname != NULL)
+ 	{
+-	    OUT_STR(_("Vim: preserving files...\n"));
++	    OUT_STR("Vim: preserving files...\n");
+ 	    screen_start();	    /* don't know where cursor is now */
+ 	    out_flush();
+ 	    ml_sync_all(FALSE, FALSE);	/* preserve all swap files */
+@@ -9206,7 +9208,7 @@
+ 
+     ml_close_all(FALSE);	    /* close all memfiles, without deleting */
+ 
+-    OUT_STR(_("Vim: Finished.\n"));
++    OUT_STR("Vim: Finished.\n");
+ 
+     getout(1);
+ }
+diff -Naur vim74.orig/src/misc2.c vim74/src/misc2.c
+--- vim74.orig/src/misc2.c	2013-07-07 14:03:35.000000000 +0000
++++ vim74/src/misc2.c	2013-10-01 16:15:44.136538760 +0000
+@@ -6496,13 +6496,15 @@
+ get4c(fd)
+     FILE	*fd;
+ {
+-    int		n;
++    /* Use unsigned rather than int otherwise result is undefined
++     * when left-shift sets the MSB. */
++    unsigned	n;
+ 
+-    n = getc(fd);
+-    n = (n << 8) + getc(fd);
+-    n = (n << 8) + getc(fd);
+-    n = (n << 8) + getc(fd);
+-    return n;
++    n = (unsigned)getc(fd);
++    n = (n << 8) + (unsigned)getc(fd);
++    n = (n << 8) + (unsigned)getc(fd);
++    n = (n << 8) + (unsigned)getc(fd);
++    return (int)n;
+ }
+ 
+ /*
+diff -Naur vim74.orig/src/normal.c vim74/src/normal.c
+--- vim74.orig/src/normal.c	2013-07-14 11:24:37.000000000 +0000
++++ vim74/src/normal.c	2013-10-01 16:15:44.144538759 +0000
+@@ -5246,8 +5246,12 @@
+ 		    {
+ 			pos_T	pos = curwin->w_cursor;
+ 
+-			/* Find bad word under the cursor. */
++			/* Find bad word under the cursor.  When 'spell' is
++			 * off this fails and find_ident_under_cursor() is
++			 * used below. */
++			emsg_off++;
+ 			len = spell_move_to(curwin, FORWARD, TRUE, TRUE, NULL);
++			emsg_off--;
+ 			if (len != 0 && curwin->w_cursor.col <= pos.col)
+ 			    ptr = ml_get_pos(&curwin->w_cursor);
+ 			curwin->w_cursor = pos;
+@@ -9518,6 +9522,8 @@
+ 		/* cursor is at the end of the line or end of file, put
+ 		 * forward. */
+ 		dir = FORWARD;
++	    /* May have been reset in do_put(). */
++	    VIsual_active = TRUE;
+ 	}
+ #endif
+ 	do_put(cap->oap->regname, dir, cap->count1, flags);
+diff -Naur vim74.orig/src/ops.c vim74/src/ops.c
+--- vim74.orig/src/ops.c	2013-08-09 17:34:32.000000000 +0000
++++ vim74/src/ops.c	2013-10-01 16:15:44.148538759 +0000
+@@ -3776,25 +3776,39 @@
+ 	 */
+ 	if (y_type == MCHAR && y_size == 1)
+ 	{
+-	    totlen = count * yanklen;
+-	    if (totlen)
+-	    {
+-		oldp = ml_get(lnum);
+-		newp = alloc_check((unsigned)(STRLEN(oldp) + totlen + 1));
+-		if (newp == NULL)
+-		    goto end;		/* alloc() will give error message */
+-		mch_memmove(newp, oldp, (size_t)col);
+-		ptr = newp + col;
+-		for (i = 0; i < count; ++i)
++	    do {
++		totlen = count * yanklen;
++		if (totlen > 0)
+ 		{
+-		    mch_memmove(ptr, y_array[0], (size_t)yanklen);
+-		    ptr += yanklen;
++		    oldp = ml_get(lnum);
++		    newp = alloc_check((unsigned)(STRLEN(oldp) + totlen + 1));
++		    if (newp == NULL)
++			goto end;	/* alloc() gave an error message */
++		    mch_memmove(newp, oldp, (size_t)col);
++		    ptr = newp + col;
++		    for (i = 0; i < count; ++i)
++		    {
++			mch_memmove(ptr, y_array[0], (size_t)yanklen);
++			ptr += yanklen;
++		    }
++		    STRMOVE(ptr, oldp + col);
++		    ml_replace(lnum, newp, FALSE);
++		    /* Place cursor on last putted char. */
++		    if (lnum == curwin->w_cursor.lnum)
++			curwin->w_cursor.col += (colnr_T)(totlen - 1);
+ 		}
+-		STRMOVE(ptr, oldp + col);
+-		ml_replace(lnum, newp, FALSE);
+-		/* Put cursor on last putted char. */
+-		curwin->w_cursor.col += (colnr_T)(totlen - 1);
+-	    }
++#ifdef FEAT_VISUAL
++		if (VIsual_active)
++		    lnum++;
++#endif
++	    } while (
++#ifdef FEAT_VISUAL
++		    VIsual_active && lnum <= curbuf->b_visual.vi_end.lnum
++#else
++		    FALSE /* stop after 1 paste */
++#endif
++		    );
++
+ 	    curbuf->b_op_end = curwin->w_cursor;
+ 	    /* For "CTRL-O p" in Insert mode, put cursor after last char */
+ 	    if (totlen && (restart_edit != 0 || (flags & PUT_CURSEND)))
+@@ -3955,6 +3969,10 @@
+     if (regname == '=')
+ 	vim_free(y_array);
+ 
++#ifdef FEAT_VISUAL
++    VIsual_active = FALSE;
++#endif
++
+     /* If the cursor is past the end of the line put it at the end. */
+     adjust_cursor_eol();
+ }
+diff -Naur vim74.orig/src/os_mswin.c vim74/src/os_mswin.c
+--- vim74.orig/src/os_mswin.c	2013-06-16 14:41:11.000000000 +0000
++++ vim74/src/os_mswin.c	2013-10-01 16:15:44.160538759 +0000
+@@ -456,7 +456,14 @@
+     int
+ mch_isFullName(char_u *fname)
+ {
++#ifdef FEAT_MBYTE
++    /* WinNT and later can use _MAX_PATH wide characters for a pathname, which
++     * means that the maximum pathname is _MAX_PATH * 3 bytes when 'enc' is
++     * UTF-8. */
++    char szName[_MAX_PATH * 3 + 1];
++#else
+     char szName[_MAX_PATH + 1];
++#endif
+ 
+     /* A name like "d:/foo" and "//server/share" is absolute */
+     if ((fname[0] && fname[1] == ':' && (fname[2] == '/' || fname[2] == '\\'))
+@@ -464,7 +471,7 @@
+ 	return TRUE;
+ 
+     /* A name that can't be made absolute probably isn't absolute. */
+-    if (mch_FullName(fname, szName, _MAX_PATH, FALSE) == FAIL)
++    if (mch_FullName(fname, szName, sizeof(szName) - 1, FALSE) == FAIL)
+ 	return FALSE;
+ 
+     return pathcmp(fname, szName, -1) == 0;
+@@ -491,6 +498,104 @@
+     }
+ }
+ 
++#if (_MSC_VER >= 1300)
++# define OPEN_OH_ARGTYPE intptr_t
++#else
++# define OPEN_OH_ARGTYPE long
++#endif
++
++    static int
++stat_symlink_aware(const char *name, struct stat *stp)
++{
++#if defined(_MSC_VER) && _MSC_VER < 1700
++    /* Work around for VC10 or earlier. stat() can't handle symlinks properly.
++     * VC9 or earlier: stat() doesn't support a symlink at all. It retrieves
++     * status of a symlink itself.
++     * VC10: stat() supports a symlink to a normal file, but it doesn't support
++     * a symlink to a directory (always returns an error). */
++    WIN32_FIND_DATA	findData;
++    HANDLE		hFind, h;
++    DWORD		attr = 0;
++    BOOL		is_symlink = FALSE;
++
++    hFind = FindFirstFile(name, &findData);
++    if (hFind != INVALID_HANDLE_VALUE)
++    {
++	attr = findData.dwFileAttributes;
++	if ((attr & FILE_ATTRIBUTE_REPARSE_POINT)
++		&& (findData.dwReserved0 == IO_REPARSE_TAG_SYMLINK))
++	    is_symlink = TRUE;
++	FindClose(hFind);
++    }
++    if (is_symlink)
++    {
++	h = CreateFile(name, FILE_READ_ATTRIBUTES,
++		FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,
++		OPEN_EXISTING,
++		(attr & FILE_ATTRIBUTE_DIRECTORY)
++					    ? FILE_FLAG_BACKUP_SEMANTICS : 0,
++		NULL);
++	if (h != INVALID_HANDLE_VALUE)
++	{
++	    int	    fd, n;
++
++	    fd = _open_osfhandle((OPEN_OH_ARGTYPE)h, _O_RDONLY);
++	    n = _fstat(fd, (struct _stat*)stp);
++	    _close(fd);
++	    return n;
++	}
++    }
++#endif
++    return stat(name, stp);
++}
++
++#ifdef FEAT_MBYTE
++    static int
++wstat_symlink_aware(const WCHAR *name, struct _stat *stp)
++{
++# if defined(_MSC_VER) && _MSC_VER < 1700
++    /* Work around for VC10 or earlier. _wstat() can't handle symlinks properly.
++     * VC9 or earlier: _wstat() doesn't support a symlink at all. It retrieves
++     * status of a symlink itself.
++     * VC10: _wstat() supports a symlink to a normal file, but it doesn't
++     * support a symlink to a directory (always returns an error). */
++    int			n;
++    BOOL		is_symlink = FALSE;
++    HANDLE		hFind, h;
++    DWORD		attr = 0;
++    WIN32_FIND_DATAW	findDataW;
++
++    hFind = FindFirstFileW(name, &findDataW);
++    if (hFind != INVALID_HANDLE_VALUE)
++    {
++	attr = findDataW.dwFileAttributes;
++	if ((attr & FILE_ATTRIBUTE_REPARSE_POINT)
++		&& (findDataW.dwReserved0 == IO_REPARSE_TAG_SYMLINK))
++	    is_symlink = TRUE;
++	FindClose(hFind);
++    }
++    if (is_symlink)
++    {
++	h = CreateFileW(name, FILE_READ_ATTRIBUTES,
++		FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,
++		OPEN_EXISTING,
++		(attr & FILE_ATTRIBUTE_DIRECTORY)
++					    ? FILE_FLAG_BACKUP_SEMANTICS : 0,
++		NULL);
++	if (h != INVALID_HANDLE_VALUE)
++	{
++	    int	    fd;
++
++	    fd = _open_osfhandle((OPEN_OH_ARGTYPE)h, _O_RDONLY);
++	    n = _fstat(fd, stp);
++	    _close(fd);
++	    return n;
++	}
++    }
++# endif
++    return _wstat(name, stp);
++}
++#endif
+ 
+ /*
+  * stat() can't handle a trailing '/' or '\', remove it first.
+@@ -498,10 +603,17 @@
+     int
+ vim_stat(const char *name, struct stat *stp)
+ {
++#ifdef FEAT_MBYTE
++    /* WinNT and later can use _MAX_PATH wide characters for a pathname, which
++     * means that the maximum pathname is _MAX_PATH * 3 bytes when 'enc' is
++     * UTF-8. */
++    char	buf[_MAX_PATH * 3 + 1];
++#else
+     char	buf[_MAX_PATH + 1];
++#endif
+     char	*p;
+ 
+-    vim_strncpy((char_u *)buf, (char_u *)name, _MAX_PATH);
++    vim_strncpy((char_u *)buf, (char_u *)name, sizeof(buf) - 1);
+     p = buf + strlen(buf);
+     if (p > buf)
+ 	mb_ptr_back(buf, p);
+@@ -520,7 +632,7 @@
+ 
+ 	if (wp != NULL)
+ 	{
+-	    n = _wstat(wp, (struct _stat *)stp);
++	    n = wstat_symlink_aware(wp, (struct _stat *)stp);
+ 	    vim_free(wp);
+ 	    if (n >= 0)
+ 		return n;
+@@ -530,7 +642,7 @@
+ 	}
+     }
+ #endif
+-    return stat(buf, stp);
++    return stat_symlink_aware(buf, stp);
+ }
+ 
+ #if defined(FEAT_GUI_MSWIN) || defined(PROTO)
+@@ -1761,9 +1873,13 @@
+     IPersistFile	*ppf = NULL;
+     OLECHAR		wsz[MAX_PATH];
+     WIN32_FIND_DATA	ffd; // we get those free of charge
+-    TCHAR		buf[MAX_PATH]; // could have simply reused 'wsz'...
++    CHAR		buf[MAX_PATH]; // could have simply reused 'wsz'...
+     char_u		*rfname = NULL;
+     int			len;
++# ifdef FEAT_MBYTE
++    IShellLinkW		*pslw = NULL;
++    WIN32_FIND_DATAW	ffdw; // we get those free of charge
++# endif
+ 
+     /* Check if the file name ends in ".lnk". Avoid calling
+      * CoCreateInstance(), it's quite slow. */
+@@ -1775,18 +1891,62 @@
+ 
+     CoInitialize(NULL);
+ 
++# ifdef FEAT_MBYTE
++    if (enc_codepage >= 0 && (int)GetACP() != enc_codepage)
++    {
++	// create a link manager object and request its interface
++	hr = CoCreateInstance(
++		&CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER,
++		&IID_IShellLinkW, (void**)&pslw);
++	if (hr == S_OK)
++	{
++	    WCHAR	*p = enc_to_utf16(fname, NULL);
++
++	    if (p != NULL)
++	    {
++		// Get a pointer to the IPersistFile interface.
++		hr = pslw->lpVtbl->QueryInterface(
++			pslw, &IID_IPersistFile, (void**)&ppf);
++		if (hr != S_OK)
++		    goto shortcut_errorw;
++
++		// "load" the name and resolve the link
++		hr = ppf->lpVtbl->Load(ppf, p, STGM_READ);
++		if (hr != S_OK)
++		    goto shortcut_errorw;
++#  if 0  // This makes Vim wait a long time if the target does not exist.
++		hr = pslw->lpVtbl->Resolve(pslw, NULL, SLR_NO_UI);
++		if (hr != S_OK)
++		    goto shortcut_errorw;
++#  endif
++
++		// Get the path to the link target.
++		ZeroMemory(wsz, MAX_PATH * sizeof(WCHAR));
++		hr = pslw->lpVtbl->GetPath(pslw, wsz, MAX_PATH, &ffdw, 0);
++		if (hr == S_OK && wsz[0] != NUL)
++		    rfname = utf16_to_enc(wsz, NULL);
++
++shortcut_errorw:
++		vim_free(p);
++		if (hr == S_OK)
++		    goto shortcut_end;
++	    }
++	}
++	/* Retry with non-wide function (for Windows 98). */
++    }
++# endif
+     // create a link manager object and request its interface
+     hr = CoCreateInstance(
+ 	    &CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER,
+ 	    &IID_IShellLink, (void**)&psl);
+     if (hr != S_OK)
+-	goto shortcut_error;
++	goto shortcut_end;
+ 
+     // Get a pointer to the IPersistFile interface.
+     hr = psl->lpVtbl->QueryInterface(
+ 	    psl, &IID_IPersistFile, (void**)&ppf);
+     if (hr != S_OK)
+-	goto shortcut_error;
++	goto shortcut_end;
+ 
+     // full path string must be in Unicode.
+     MultiByteToWideChar(CP_ACP, 0, fname, -1, wsz, MAX_PATH);
+@@ -1794,12 +1954,12 @@
+     // "load" the name and resolve the link
+     hr = ppf->lpVtbl->Load(ppf, wsz, STGM_READ);
+     if (hr != S_OK)
+-	goto shortcut_error;
+-#if 0  // This makes Vim wait a long time if the target doesn't exist.
++	goto shortcut_end;
++# if 0  // This makes Vim wait a long time if the target doesn't exist.
+     hr = psl->lpVtbl->Resolve(psl, NULL, SLR_NO_UI);
+     if (hr != S_OK)
+-	goto shortcut_error;
+-#endif
++	goto shortcut_end;
++# endif
+ 
+     // Get the path to the link target.
+     ZeroMemory(buf, MAX_PATH);
+@@ -1807,12 +1967,16 @@
+     if (hr == S_OK && buf[0] != NUL)
+ 	rfname = vim_strsave(buf);
+ 
+-shortcut_error:
++shortcut_end:
+     // Release all interface pointers (both belong to the same object)
+     if (ppf != NULL)
+ 	ppf->lpVtbl->Release(ppf);
+     if (psl != NULL)
+ 	psl->lpVtbl->Release(psl);
++# ifdef FEAT_MBYTE
++    if (pslw != NULL)
++	pslw->lpVtbl->Release(pslw);
++# endif
+ 
+     CoUninitialize();
+     return rfname;
+diff -Naur vim74.orig/src/os_unix.c vim74/src/os_unix.c
+--- vim74.orig/src/os_unix.c	2013-07-03 14:32:32.000000000 +0000
++++ vim74/src/os_unix.c	2013-10-01 16:15:44.164538759 +0000
+@@ -957,8 +957,10 @@
+ 
+ /*
+  * This function handles deadly signals.
+- * It tries to preserve any swap file and exit properly.
++ * It tries to preserve any swap files and exit properly.
+  * (partly from Elvis).
++ * NOTE: Avoid unsafe functions, such as allocating memory, they can result in
++ * a deadlock.
+  */
+     static RETSIGTYPE
+ deathtrap SIGDEFARG(sigarg)
+@@ -1090,18 +1092,23 @@
+     }
+     if (entered == 2)
+     {
+-	OUT_STR(_("Vim: Double signal, exiting\n"));
++	/* No translation, it may call malloc(). */
++	OUT_STR("Vim: Double signal, exiting\n");
+ 	out_flush();
+ 	getout(1);
+     }
+ 
++    /* No translation, it may call malloc(). */
+ #ifdef SIGHASARG
+-    sprintf((char *)IObuff, _("Vim: Caught deadly signal %s\n"),
++    sprintf((char *)IObuff, "Vim: Caught deadly signal %s\n",
+ 							 signal_info[i].name);
+ #else
+-    sprintf((char *)IObuff, _("Vim: Caught deadly signal\n"));
++    sprintf((char *)IObuff, "Vim: Caught deadly signal\n");
+ #endif
+-    preserve_exit();		    /* preserve files and exit */
++
++    /* Preserve files and exit.  This sets the really_exiting flag to prevent
++     * calling free(). */
++    preserve_exit();
+ 
+ #ifdef NBDEBUG
+     reset_signals();
+diff -Naur vim74.orig/src/os_win32.c vim74/src/os_win32.c
+--- vim74.orig/src/os_win32.c	2013-08-10 10:39:12.000000000 +0000
++++ vim74/src/os_win32.c	2013-10-01 16:15:44.168538759 +0000
+@@ -78,16 +78,6 @@
+ # endif
+ #endif
+ 
+-/*
+- * Reparse Point
+- */
+-#ifndef FILE_ATTRIBUTE_REPARSE_POINT
+-# define FILE_ATTRIBUTE_REPARSE_POINT	0x00000400
+-#endif
+-#ifndef IO_REPARSE_TAG_SYMLINK
+-# define IO_REPARSE_TAG_SYMLINK		0xA000000C
+-#endif
+-
+ /* Record all output and all keyboard & mouse input */
+ /* #define MCH_WRITE_DUMP */
+ 
+@@ -2500,9 +2490,125 @@
+ }
+ 
+ 
++#ifdef FEAT_MBYTE
++/*
++ * fname_casew(): Wide version of fname_case().  Set the case of the file name,
++ * if it already exists.  When "len" is > 0, also expand short to long
++ * filenames.
++ * Return FAIL if wide functions are not available, OK otherwise.
++ * NOTE: much of this is identical to fname_case(), keep in sync!
++ */
++    static int
++fname_casew(
++    WCHAR	*name,
++    int		len)
++{
++    WCHAR		szTrueName[_MAX_PATH + 2];
++    WCHAR		szTrueNameTemp[_MAX_PATH + 2];
++    WCHAR		*ptrue, *ptruePrev;
++    WCHAR		*porig, *porigPrev;
++    int			flen;
++    WIN32_FIND_DATAW	fb;
++    HANDLE		hFind;
++    int			c;
++    int			slen;
++
++    flen = (int)wcslen(name);
++    if (flen > _MAX_PATH)
++	return OK;
++
++    /* slash_adjust(name) not needed, already adjusted by fname_case(). */
++
++    /* Build the new name in szTrueName[] one component at a time. */
++    porig = name;
++    ptrue = szTrueName;
++
++    if (iswalpha(porig[0]) && porig[1] == L':')
++    {
++	/* copy leading drive letter */
++	*ptrue++ = *porig++;
++	*ptrue++ = *porig++;
++	*ptrue = NUL;	    /* in case nothing follows */
++    }
++
++    while (*porig != NUL)
++    {
++	/* copy \ characters */
++	while (*porig == psepc)
++	    *ptrue++ = *porig++;
++
++	ptruePrev = ptrue;
++	porigPrev = porig;
++	while (*porig != NUL && *porig != psepc)
++	{
++	    *ptrue++ = *porig++;
++	}
++	*ptrue = NUL;
++
++	/* To avoid a slow failure append "\*" when searching a directory,
++	 * server or network share. */
++	wcscpy(szTrueNameTemp, szTrueName);
++	slen = (int)wcslen(szTrueNameTemp);
++	if (*porig == psepc && slen + 2 < _MAX_PATH)
++	    wcscpy(szTrueNameTemp + slen, L"\\*");
++
++	/* Skip "", "." and "..". */
++	if (ptrue > ptruePrev
++		&& (ptruePrev[0] != L'.'
++		    || (ptruePrev[1] != NUL
++			&& (ptruePrev[1] != L'.' || ptruePrev[2] != NUL)))
++		&& (hFind = FindFirstFileW(szTrueNameTemp, &fb))
++						      != INVALID_HANDLE_VALUE)
++	{
++	    c = *porig;
++	    *porig = NUL;
++
++	    /* Only use the match when it's the same name (ignoring case) or
++	     * expansion is allowed and there is a match with the short name
++	     * and there is enough room. */
++	    if (_wcsicoll(porigPrev, fb.cFileName) == 0
++		    || (len > 0
++			&& (_wcsicoll(porigPrev, fb.cAlternateFileName) == 0
++			    && (int)(ptruePrev - szTrueName)
++					   + (int)wcslen(fb.cFileName) < len)))
++	    {
++		wcscpy(ptruePrev, fb.cFileName);
++
++		/* Look for exact match and prefer it if found.  Must be a
++		 * long name, otherwise there would be only one match. */
++		while (FindNextFileW(hFind, &fb))
++		{
++		    if (*fb.cAlternateFileName != NUL
++			    && (wcscoll(porigPrev, fb.cFileName) == 0
++				|| (len > 0
++				    && (_wcsicoll(porigPrev,
++						   fb.cAlternateFileName) == 0
++				    && (int)(ptruePrev - szTrueName)
++					 + (int)wcslen(fb.cFileName) < len))))
++		    {
++			wcscpy(ptruePrev, fb.cFileName);
++			break;
++		    }
++		}
++	    }
++	    FindClose(hFind);
++	    *porig = c;
++	    ptrue = ptruePrev + wcslen(ptruePrev);
++	}
++	else if (hFind == INVALID_HANDLE_VALUE
++		&& GetLastError() == ERROR_CALL_NOT_IMPLEMENTED)
++	    return FAIL;
++    }
++
++    wcscpy(name, szTrueName);
++    return OK;
++}
++#endif
++
+ /*
+  * fname_case(): Set the case of the file name, if it already exists.
+  * When "len" is > 0, also expand short to long filenames.
++ * NOTE: much of this is identical to fname_casew(), keep in sync!
+  */
+     void
+ fname_case(
+@@ -2520,11 +2626,44 @@
+     int			slen;
+ 
+     flen = (int)STRLEN(name);
+-    if (flen == 0 || flen > _MAX_PATH)
++    if (flen == 0)
+ 	return;
+ 
+     slash_adjust(name);
+ 
++#ifdef FEAT_MBYTE
++    if (enc_codepage >= 0 && (int)GetACP() != enc_codepage)
++    {
++	WCHAR	*p = enc_to_utf16(name, NULL);
++
++	if (p != NULL)
++	{
++	    char_u	*q;
++	    WCHAR	buf[_MAX_PATH + 2];
++
++	    wcscpy(buf, p);
++	    vim_free(p);
++
++	    if (fname_casew(buf, (len > 0) ? _MAX_PATH : 0) == OK)
++	    {
++		q = utf16_to_enc(buf, NULL);
++		if (q != NULL)
++		{
++		    vim_strncpy(name, q, (len > 0) ? len - 1 : flen);
++		    vim_free(q);
++		    return;
++		}
++	    }
++	}
++	/* Retry with non-wide function (for Windows 98). */
++    }
++#endif
++
++    /* If 'enc' is utf-8, flen can be larger than _MAX_PATH.
++     * So we should check this after calling wide function. */
++    if (flen > _MAX_PATH)
++	return;
++
+     /* Build the new name in szTrueName[] one component at a time. */
+     porig = name;
+     ptrue = szTrueName;
+@@ -3107,6 +3246,9 @@
+ {
+     HANDLE	hFile;
+     int		type;
++#ifdef FEAT_MBYTE
++    WCHAR	*wn = NULL;
++#endif
+ 
+     /* We can't open a file with a name "\\.\con" or "\\.\prn" and trying to
+      * read from it later will cause Vim to hang.  Thus return NODE_WRITABLE
+@@ -3114,14 +3256,41 @@
+     if (STRNCMP(name, "\\\\.\\", 4) == 0)
+ 	return NODE_WRITABLE;
+ 
+-    hFile = CreateFile(name,		/* file name */
+-		GENERIC_WRITE,		/* access mode */
+-		0,			/* share mode */
+-		NULL,			/* security descriptor */
+-		OPEN_EXISTING,		/* creation disposition */
+-		0,			/* file attributes */
+-		NULL);			/* handle to template file */
++#ifdef FEAT_MBYTE
++    if (enc_codepage >= 0 && (int)GetACP() != enc_codepage)
++    {
++	wn = enc_to_utf16(name, NULL);
++	if (wn != NULL)
++	{
++	    hFile = CreateFileW(wn,	/* file name */
++			GENERIC_WRITE,	/* access mode */
++			0,		/* share mode */
++			NULL,		/* security descriptor */
++			OPEN_EXISTING,	/* creation disposition */
++			0,		/* file attributes */
++			NULL);		/* handle to template file */
++	    if (hFile == INVALID_HANDLE_VALUE
++			      && GetLastError() == ERROR_CALL_NOT_IMPLEMENTED)
++	    {
++		/* Retry with non-wide function (for Windows 98). */
++		vim_free(wn);
++		wn = NULL;
++	    }
++	}
++    }
++    if (wn == NULL)
++#endif
++	hFile = CreateFile(name,	/* file name */
++		    GENERIC_WRITE,	/* access mode */
++		    0,			/* share mode */
++		    NULL,		/* security descriptor */
++		    OPEN_EXISTING,	/* creation disposition */
++		    0,			/* file attributes */
++		    NULL);		/* handle to template file */
+ 
++#ifdef FEAT_MBYTE
++    vim_free(wn);
++#endif
+     if (hFile == INVALID_HANDLE_VALUE)
+ 	return NODE_NORMAL;
+ 
+diff -Naur vim74.orig/src/os_win32.h vim74/src/os_win32.h
+--- vim74.orig/src/os_win32.h	2013-07-21 15:53:13.000000000 +0000
++++ vim74/src/os_win32.h	2013-10-01 16:15:44.168538759 +0000
+@@ -130,6 +130,19 @@
+ # define DFLT_MAXMEMTOT	(5*1024)    /* use up to 5 Mbyte for Vim */
+ #endif
+ 
++/*
++ * Reparse Point
++ */
++#ifndef FILE_ATTRIBUTE_REPARSE_POINT
++# define FILE_ATTRIBUTE_REPARSE_POINT	0x00000400
++#endif
++#ifndef IO_REPARSE_TAG_MOUNT_POINT
++# define IO_REPARSE_TAG_MOUNT_POINT	0xA0000003
++#endif
++#ifndef IO_REPARSE_TAG_SYMLINK
++# define IO_REPARSE_TAG_SYMLINK		0xA000000C
++#endif
++
+ #if defined(_MSC_VER) || defined(__BORLANDC__)
+     /* Support for __try / __except.  All versions of MSVC and Borland C are
+      * expected to have this.  Any other compilers that support it? */
+diff -Naur vim74.orig/src/po/ru.cp1251.po vim74/src/po/ru.cp1251.po
+--- vim74.orig/src/po/ru.cp1251.po	2013-08-10 12:28:27.000000000 +0000
++++ vim74/src/po/ru.cp1251.po	2013-10-01 16:15:44.224538757 +0000
+@@ -9,8 +9,8 @@
+ msgstr ""
+ "Project-Id-Version: vim_7.4_ru\n"
+ "Report-Msgid-Bugs-To: \n"
+-"POT-Creation-Date: 2013-07-08 00:47+0400\n"
+-"PO-Revision-Date: 2013-07-08 00:47+0400\n"
++"POT-Creation-Date: 2013-08-31 16:42+0400\n"
++"PO-Revision-Date: 2013-08-31 21:11+0400\n"
+ "Last-Translator: Sergey Alyoshin <alyoshin.s@gmail.com>\n"
+ "Language-Team: \n"
+ "Language: Russian\n"
+@@ -568,8 +568,9 @@
+ msgid "E808: Number or Float required"
+ msgstr "E808: Òðåáóåòñÿ öåëîå ÷èñëî èëè ñ ïëàâàþùåé òî÷êîé"
+ 
++#. Èñïîëüçóåòñÿ äëÿ ïîëó÷åíèÿ "çíà÷åíèå ïàðàìåòðà p()" â E741 è E742
+ msgid "add() argument"
+-msgstr "ïàðàìåòð add()"
++msgstr "ïàðàìåòðà add()"
+ 
+ msgid "E699: Too many arguments"
+ msgstr "E699: Ñëèøêîì ìíîãî ïàðàìåòðîâ"
+@@ -589,14 +590,17 @@
+ msgid "E737: Key already exists: %s"
+ msgstr "E737: Êëþ÷ óæå ñóùåñòâóåò: %s"
+ 
++#. Èñïîëüçóåòñÿ äëÿ ïîëó÷åíèÿ "çíà÷åíèå ïàðàìåòðà p()" â E741 è E742
+ msgid "extend() argument"
+-msgstr "ïàðàìåòð extend()"
++msgstr "ïàðàìåòðà extend()"
+ 
++#. Èñïîëüçóåòñÿ äëÿ ïîëó÷åíèÿ "çíà÷åíèå ïàðàìåòðà p()" â E741 è E742
+ msgid "map() argument"
+-msgstr "ïàðàìåòð map()"
++msgstr "ïàðàìåòðà map()"
+ 
++#. Èñïîëüçóåòñÿ äëÿ ïîëó÷åíèÿ "çíà÷åíèå ïàðàìåòðà p()" â E741 è E742
+ msgid "filter() argument"
+-msgstr "ïàðàìåòð filter()"
++msgstr "ïàðàìåòðà filter()"
+ 
+ #, c-format
+ msgid "+-%s%3ld lines: "
+@@ -616,8 +620,9 @@
+ msgid "called inputrestore() more often than inputsave()"
+ msgstr "Ôóíêöèÿ inputrestore() âûçûâàåòñÿ ÷àùå, ÷åì ôóíêöèÿ inputsave()"
+ 
++#. Èñïîëüçóåòñÿ äëÿ ïîëó÷åíèÿ "çíà÷åíèå ïàðàìåòðà p()" â E741 è E742
+ msgid "insert() argument"
+-msgstr "ïàðàìåòð insert()"
++msgstr "ïàðàìåòðà insert()"
+ 
+ msgid "E786: Range not allowed"
+ msgstr "E786: Äèàïàçîí íå äîïóñêàåòñÿ"
+@@ -644,20 +649,23 @@
+ msgid "E277: Unable to read a server reply"
+ msgstr "E277: Ñåðâåð íå îòâå÷àåò"
+ 
++#. Èñïîëüçóåòñÿ äëÿ ïîëó÷åíèÿ "çíà÷åíèå ïàðàìåòðà p()" â E741 è E742
+ msgid "remove() argument"
+-msgstr "ïàðàìåòð remove()"
++msgstr "ïàðàìåòðà remove()"
+ 
+ msgid "E655: Too many symbolic links (cycle?)"
+ msgstr "E655: Ñëèøêîì ìíîãî ñèìâîëè÷åñêèõ ññûëîê (öèêë?)"
+ 
++#. Èñïîëüçóåòñÿ äëÿ ïîëó÷åíèÿ "çíà÷åíèå ïàðàìåòðà p()" â E741 è E742
+ msgid "reverse() argument"
+-msgstr "ïàðàìåòð reverse()"
++msgstr "ïàðàìåòðà reverse()"
+ 
+ msgid "E258: Unable to send to client"
+ msgstr "E258: Íå ìîãó îòâåòèòü êëèåíòó"
+ 
++#. Èñïîëüçóåòñÿ äëÿ ïîëó÷åíèÿ "çíà÷åíèå ïàðàìåòðà p()" â E741 è E742
+ msgid "sort() argument"
+-msgstr "ïàðàìåòð sort()"
++msgstr "ïàðàìåòðà sort()"
+ 
+ msgid "E702: Sort compare function failed"
+ msgstr "E702: Íåóäà÷íîå çàâåðøåíèå ôóíêöèè ñðàâíåíèÿ ïðè ñîðòèðîâêå"
+@@ -707,13 +715,15 @@
+ msgid "E705: Variable name conflicts with existing function: %s"
+ msgstr "E705: Èìÿ ïåðåìåííîé êîíôëèêòóåò ñ ñóùåñòâóþùåé ôóíêöèåé: %s"
+ 
++#. Èñïîëüçóåòñÿ ñ %s = "ïàðàìåòåðà p"
+ #, c-format
+ msgid "E741: Value is locked: %s"
+-msgstr "E741: Çíà÷åíèå çàáëîêèðîâàíî: %s"
++msgstr "E741: Çíà÷åíèå %s çàáëîêèðîâàíî"
+ 
+ msgid "Unknown"
+ msgstr "Íåèçâåñòíî"
+ 
++#. Èñïîëüçóåòñÿ ñ %s = "ïàðàìåòåðà p()"
+ #, c-format
+ msgid "E742: Cannot change value of %s"
+ msgstr "E742: Íåâîçìîæíî èçìåíèòü çíà÷åíèå %s"
+diff -Naur vim74.orig/src/po/ru.po vim74/src/po/ru.po
+--- vim74.orig/src/po/ru.po	2013-07-09 12:36:10.000000000 +0000
++++ vim74/src/po/ru.po	2013-10-01 16:15:44.224538757 +0000
+@@ -9,8 +9,8 @@
+ msgstr ""
+ "Project-Id-Version: vim_7.4_ru\n"
+ "Report-Msgid-Bugs-To: \n"
+-"POT-Creation-Date: 2013-07-08 00:47+0400\n"
+-"PO-Revision-Date: 2013-07-08 00:47+0400\n"
++"POT-Creation-Date: 2013-08-31 16:42+0400\n"
++"PO-Revision-Date: 2013-08-31 21:11+0400\n"
+ "Last-Translator: Sergey Alyoshin <alyoshin.s@gmail.com>\n"
+ "Language-Team: \n"
+ "Language: Russian\n"
+@@ -568,8 +568,9 @@
+ msgid "E808: Number or Float required"
+ msgstr "E808: Ð¢ÑÐµÐ±ÑÐµÑÑÑ ÑÐµÐ»ÐŸÐµ ÑÐžÑÐ»ÐŸ ÐžÐ»Ðž Ñ Ð¿Ð»Ð°Ð²Ð°ÑÑÐµÐ¹ ÑÐŸÑÐºÐŸÐ¹"
+ 
++#. ÐÑÐ¿ÐŸÐ»ÑÐ·ÑÐµÑÑÑ ÐŽÐ»Ñ Ð¿ÐŸÐ»ÑÑÐµÐœÐžÑ "Ð·ÐœÐ°ÑÐµÐœÐžÐµ Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° p()" Ð² E741 Ðž E742
+ msgid "add() argument"
+-msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑ add()"
++msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° add()"
+ 
+ msgid "E699: Too many arguments"
+ msgstr "E699: Ð¡Ð»ÐžÑÐºÐŸÐŒ ÐŒÐœÐŸÐ³ÐŸ Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐŸÐ²"
+@@ -589,14 +590,17 @@
+ msgid "E737: Key already exists: %s"
+ msgstr "E737: ÐÐ»ÑÑ ÑÐ¶Ðµ ÑÑÑÐµÑÑÐ²ÑÐµÑ: %s"
+ 
++#. ÐÑÐ¿ÐŸÐ»ÑÐ·ÑÐµÑÑÑ ÐŽÐ»Ñ Ð¿ÐŸÐ»ÑÑÐµÐœÐžÑ "Ð·ÐœÐ°ÑÐµÐœÐžÐµ Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° p()" Ð² E741 Ðž E742
+ msgid "extend() argument"
+-msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑ extend()"
++msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° extend()"
+ 
++#. ÐÑÐ¿ÐŸÐ»ÑÐ·ÑÐµÑÑÑ ÐŽÐ»Ñ Ð¿ÐŸÐ»ÑÑÐµÐœÐžÑ "Ð·ÐœÐ°ÑÐµÐœÐžÐµ Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° p()" Ð² E741 Ðž E742
+ msgid "map() argument"
+-msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑ map()"
++msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° map()"
+ 
++#. ÐÑÐ¿ÐŸÐ»ÑÐ·ÑÐµÑÑÑ ÐŽÐ»Ñ Ð¿ÐŸÐ»ÑÑÐµÐœÐžÑ "Ð·ÐœÐ°ÑÐµÐœÐžÐµ Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° p()" Ð² E741 Ðž E742
+ msgid "filter() argument"
+-msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑ filter()"
++msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° filter()"
+ 
+ #, c-format
+ msgid "+-%s%3ld lines: "
+@@ -616,8 +620,9 @@
+ msgid "called inputrestore() more often than inputsave()"
+ msgstr "Ð€ÑÐœÐºÑÐžÑ inputrestore() Ð²ÑÐ·ÑÐ²Ð°ÐµÑÑÑ ÑÐ°ÑÐµ, ÑÐµÐŒ ÑÑÐœÐºÑÐžÑ inputsave()"
+ 
++#. ÐÑÐ¿ÐŸÐ»ÑÐ·ÑÐµÑÑÑ ÐŽÐ»Ñ Ð¿ÐŸÐ»ÑÑÐµÐœÐžÑ "Ð·ÐœÐ°ÑÐµÐœÐžÐµ Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° p()" Ð² E741 Ðž E742
+ msgid "insert() argument"
+-msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑ insert()"
++msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° insert()"
+ 
+ msgid "E786: Range not allowed"
+ msgstr "E786: ÐÐžÐ°Ð¿Ð°Ð·ÐŸÐœ ÐœÐµ ÐŽÐŸÐ¿ÑÑÐºÐ°ÐµÑÑÑ"
+@@ -644,20 +649,23 @@
+ msgid "E277: Unable to read a server reply"
+ msgstr "E277: Ð¡ÐµÑÐ²ÐµÑ ÐœÐµ ÐŸÑÐ²ÐµÑÐ°ÐµÑ"
+ 
++#. ÐÑÐ¿ÐŸÐ»ÑÐ·ÑÐµÑÑÑ ÐŽÐ»Ñ Ð¿ÐŸÐ»ÑÑÐµÐœÐžÑ "Ð·ÐœÐ°ÑÐµÐœÐžÐµ Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° p()" Ð² E741 Ðž E742
+ msgid "remove() argument"
+-msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑ remove()"
++msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° remove()"
+ 
+ msgid "E655: Too many symbolic links (cycle?)"
+ msgstr "E655: Ð¡Ð»ÐžÑÐºÐŸÐŒ ÐŒÐœÐŸÐ³ÐŸ ÑÐžÐŒÐ²ÐŸÐ»ÐžÑÐµÑÐºÐžÑ
+ ÑÑÑÐ»ÐŸÐº (ÑÐžÐºÐ»?)"
+ 
++#. ÐÑÐ¿ÐŸÐ»ÑÐ·ÑÐµÑÑÑ ÐŽÐ»Ñ Ð¿ÐŸÐ»ÑÑÐµÐœÐžÑ "Ð·ÐœÐ°ÑÐµÐœÐžÐµ Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° p()" Ð² E741 Ðž E742
+ msgid "reverse() argument"
+-msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑ reverse()"
++msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° reverse()"
+ 
+ msgid "E258: Unable to send to client"
+ msgstr "E258: ÐÐµ ÐŒÐŸÐ³Ñ ÐŸÑÐ²ÐµÑÐžÑÑ ÐºÐ»ÐžÐµÐœÑÑ"
+ 
++#. ÐÑÐ¿ÐŸÐ»ÑÐ·ÑÐµÑÑÑ ÐŽÐ»Ñ Ð¿ÐŸÐ»ÑÑÐµÐœÐžÑ "Ð·ÐœÐ°ÑÐµÐœÐžÐµ Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° p()" Ð² E741 Ðž E742
+ msgid "sort() argument"
+-msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑ sort()"
++msgstr "Ð¿Ð°ÑÐ°ÐŒÐµÑÑÐ° sort()"
+ 
+ msgid "E702: Sort compare function failed"
+ msgstr "E702: ÐÐµÑÐŽÐ°ÑÐœÐŸÐµ Ð·Ð°Ð²ÐµÑÑÐµÐœÐžÐµ ÑÑÐœÐºÑÐžÐž ÑÑÐ°Ð²ÐœÐµÐœÐžÑ Ð¿ÑÐž ÑÐŸÑÑÐžÑÐŸÐ²ÐºÐµ"
+@@ -707,13 +715,15 @@
+ msgid "E705: Variable name conflicts with existing function: %s"
+ msgstr "E705: ÐÐŒÑ Ð¿ÐµÑÐµÐŒÐµÐœÐœÐŸÐ¹ ÐºÐŸÐœÑÐ»ÐžÐºÑÑÐµÑ Ñ ÑÑÑÐµÑÑÐ²ÑÑÑÐµÐ¹ ÑÑÐœÐºÑÐžÐµÐ¹: %s"
+ 
++#. ÐÑÐ¿ÐŸÐ»ÑÐ·ÑÐµÑÑÑ Ñ %s = "Ð¿Ð°ÑÐ°ÐŒÐµÑÐµÑÐ° p"
+ #, c-format
+ msgid "E741: Value is locked: %s"
+-msgstr "E741: ÐÐœÐ°ÑÐµÐœÐžÐµ Ð·Ð°Ð±Ð»ÐŸÐºÐžÑÐŸÐ²Ð°ÐœÐŸ: %s"
++msgstr "E741: ÐÐœÐ°ÑÐµÐœÐžÐµ %s Ð·Ð°Ð±Ð»ÐŸÐºÐžÑÐŸÐ²Ð°ÐœÐŸ"
+ 
+ msgid "Unknown"
+ msgstr "ÐÐµÐžÐ·Ð²ÐµÑÑÐœÐŸ"
+ 
++#. ÐÑÐ¿ÐŸÐ»ÑÐ·ÑÐµÑÑÑ Ñ %s = "Ð¿Ð°ÑÐ°ÐŒÐµÑÐµÑÐ° p()"
+ #, c-format
+ msgid "E742: Cannot change value of %s"
+ msgstr "E742: ÐÐµÐ²ÐŸÐ·ÐŒÐŸÐ¶ÐœÐŸ ÐžÐ·ÐŒÐµÐœÐžÑÑ Ð·ÐœÐ°ÑÐµÐœÐžÐµ %s"
+diff -Naur vim74.orig/src/proto/term.pro vim74/src/proto/term.pro
+--- vim74.orig/src/proto/term.pro	2013-08-10 11:37:28.000000000 +0000
++++ vim74/src/proto/term.pro	2013-10-01 16:15:44.276538756 +0000
+@@ -35,7 +35,7 @@
+ void starttermcap __ARGS((void));
+ void stoptermcap __ARGS((void));
+ void may_req_termresponse __ARGS((void));
+-void may_req_ambiguous_character_width __ARGS((void));
++void may_req_ambiguous_char_width __ARGS((void));
+ int swapping_screen __ARGS((void));
+ void setmouse __ARGS((void));
+ int mouse_has __ARGS((int c));
+diff -Naur vim74.orig/src/proto/window.pro vim74/src/proto/window.pro
+--- vim74.orig/src/proto/window.pro	2013-08-10 11:37:30.000000000 +0000
++++ vim74/src/proto/window.pro	2013-10-01 16:15:44.276538756 +0000
+@@ -9,7 +9,7 @@
+ void win_equal __ARGS((win_T *next_curwin, int current, int dir));
+ void close_windows __ARGS((buf_T *buf, int keep_curwin));
+ int one_window __ARGS((void));
+-void win_close __ARGS((win_T *win, int free_buf));
++int win_close __ARGS((win_T *win, int free_buf));
+ void win_close_othertab __ARGS((win_T *win, int free_buf, tabpage_T *tp));
+ void win_free_all __ARGS((void));
+ win_T *winframe_remove __ARGS((win_T *win, int *dirp, tabpage_T *tp));
+diff -Naur vim74.orig/src/regexp.c vim74/src/regexp.c
+--- vim74.orig/src/regexp.c	2013-08-01 16:31:30.000000000 +0000
++++ vim74/src/regexp.c	2013-10-01 16:15:44.284538755 +0000
+@@ -4311,8 +4311,8 @@
+    */
+   for (;;)
+   {
+-    /* Some patterns may cause a long time to match, even though they are not
+-     * illegal.  E.g., "\([a-z]\+\)\+Q".  Allow breaking them with CTRL-C. */
++    /* Some patterns may take a long time to match, e.g., "\([a-z]\+\)\+Q".
++     * Allow interrupting them with CTRL-C. */
+     fast_breakcheck();
+ 
+ #ifdef DEBUG
+@@ -8016,12 +8016,11 @@
+ 	}
+ #endif
+ 	/*
+-	 * If NFA engine failed, then revert to the backtracking engine.
+-	 * Except when there was a syntax error, which was properly handled by
+-	 * NFA engine.
+-	 */
++	 * If the NFA engine failed, the backtracking engine won't work either.
++	 *
+ 	if (regexp_engine == AUTOMATIC_ENGINE)
+ 	    prog = bt_regengine.regcomp(expr, re_flags);
++	 */
+     }
+ 
+     return prog;
+diff -Naur vim74.orig/src/regexp_nfa.c vim74/src/regexp_nfa.c
+--- vim74.orig/src/regexp_nfa.c	2013-08-01 16:27:51.000000000 +0000
++++ vim74/src/regexp_nfa.c	2013-10-01 16:15:44.288538755 +0000
+@@ -29,11 +29,14 @@
+ # define NFA_REGEXP_DEBUG_LOG	"nfa_regexp_debug.log"
+ #endif
+ 
++/* Added to NFA_ANY - NFA_NUPPER_IC to include a NL. */
++#define NFA_ADD_NL		31
++
+ enum
+ {
+     NFA_SPLIT = -1024,
+     NFA_MATCH,
+-    NFA_SKIP_CHAR,		    /* matches a 0-length char */
++    NFA_EMPTY,			    /* matches 0-length */
+ 
+     NFA_START_COLL,		    /* [abc] start */
+     NFA_END_COLL,		    /* [abc] end */
+@@ -183,6 +186,13 @@
+     NFA_NLOWER,		/*	Match non-lowercase char */
+     NFA_UPPER,		/*	Match uppercase char */
+     NFA_NUPPER,		/*	Match non-uppercase char */
++    NFA_LOWER_IC,	/*	Match [a-z] */
++    NFA_NLOWER_IC,	/*	Match [^a-z] */
++    NFA_UPPER_IC,	/*	Match [A-Z] */
++    NFA_NUPPER_IC,	/*	Match [^A-Z] */
++
++    NFA_FIRST_NL = NFA_ANY + NFA_ADD_NL,
++    NFA_LAST_NL = NFA_NUPPER_IC + NFA_ADD_NL,
+ 
+     NFA_CURSOR,		/*	Match cursor pos */
+     NFA_LNUM,		/*	Match line number */
+@@ -199,9 +209,6 @@
+     NFA_MARK_LT,	/*	Match < mark */
+     NFA_VISUAL,		/*	Match Visual area */
+ 
+-    NFA_FIRST_NL = NFA_ANY + ADD_NL,
+-    NFA_LAST_NL = NFA_NUPPER + ADD_NL,
+-
+     /* Character classes [:alnum:] etc */
+     NFA_CLASS_ALNUM,
+     NFA_CLASS_ALPHA,
+@@ -578,6 +585,8 @@
+  * On failure, return 0 (=FAIL)
+  * Start points to the first char of the range, while end should point
+  * to the closing brace.
++ * Keep in mind that 'ignorecase' applies at execution time, thus [a-z] may
++ * need to be interpreted as [a-zA-Z].
+  */
+     static int
+ nfa_recognize_char_class(start, end, extra_newl)
+@@ -681,7 +690,7 @@
+ 	return FAIL;
+ 
+     if (newl == TRUE)
+-	extra_newl = ADD_NL;
++	extra_newl = NFA_ADD_NL;
+ 
+     switch (config)
+     {
+@@ -710,13 +719,13 @@
+ 	case CLASS_not | CLASS_az | CLASS_AZ:
+ 	    return extra_newl + NFA_NALPHA;
+ 	case CLASS_az:
+-	   return extra_newl + NFA_LOWER;
++	   return extra_newl + NFA_LOWER_IC;
+ 	case CLASS_not | CLASS_az:
+-	    return extra_newl + NFA_NLOWER;
++	    return extra_newl + NFA_NLOWER_IC;
+ 	case CLASS_AZ:
+-	    return extra_newl + NFA_UPPER;
++	    return extra_newl + NFA_UPPER_IC;
+ 	case CLASS_not | CLASS_AZ:
+-	    return extra_newl + NFA_NUPPER;
++	    return extra_newl + NFA_NUPPER_IC;
+     }
+     return FAIL;
+ }
+@@ -733,7 +742,12 @@
+ nfa_emit_equi_class(c)
+     int	    c;
+ {
+-#define EMIT2(c)   EMIT(c); EMIT(NFA_CONCAT);
++#define EMIT2(c)    EMIT(c); EMIT(NFA_CONCAT);
++#ifdef FEAT_MBYTE
++# define EMITMBC(c) EMIT(c); EMIT(NFA_CONCAT);
++#else
++# define EMITMBC(c)
++#endif
+ 
+ #ifdef FEAT_MBYTE
+     if (enc_utf8 || STRCMP(p_enc, "latin1") == 0
+@@ -744,92 +758,338 @@
+ 	{
+ 	    case 'A': case 0300: case 0301: case 0302:
+ 	    case 0303: case 0304: case 0305:
+-		    EMIT2('A');	    EMIT2(0300);    EMIT2(0301);
+-		    EMIT2(0302);    EMIT2(0303);    EMIT2(0304);
+-		    EMIT2(0305);
++	    CASEMBC(0x100) CASEMBC(0x102) CASEMBC(0x104) CASEMBC(0x1cd)
++	    CASEMBC(0x1de) CASEMBC(0x1e0) CASEMBC(0x1ea2)
++		    EMIT2('A');	EMIT2(0300); EMIT2(0301); EMIT2(0302);
++		    EMIT2(0303); EMIT2(0304); EMIT2(0305);
++		    EMITMBC(0x100) EMITMBC(0x102) EMITMBC(0x104)
++		    EMITMBC(0x1cd) EMITMBC(0x1de) EMITMBC(0x1e0)
++		    EMITMBC(0x1ea2)
++		    return OK;
++
++	    case 'B': CASEMBC(0x1e02) CASEMBC(0x1e06)
++		    EMIT2('B'); EMITMBC(0x1e02) EMITMBC(0x1e06)
+ 		    return OK;
+ 
+ 	    case 'C': case 0307:
+-		    EMIT2('C');	    EMIT2(0307);
++	    CASEMBC(0x106) CASEMBC(0x108) CASEMBC(0x10a) CASEMBC(0x10c)
++		    EMIT2('C'); EMIT2(0307); EMITMBC(0x106) EMITMBC(0x108)
++		    EMITMBC(0x10a) EMITMBC(0x10c)
++		    return OK;
++
++	    case 'D': CASEMBC(0x10e) CASEMBC(0x110) CASEMBC(0x1e0a)
++	    CASEMBC(0x1e0e) CASEMBC(0x1e10)
++		    EMIT2('D'); EMITMBC(0x10e) EMITMBC(0x110) EMITMBC(0x1e0a)
++		    EMITMBC(0x1e0e) EMITMBC(0x1e10)
+ 		    return OK;
+ 
+ 	    case 'E': case 0310: case 0311: case 0312: case 0313:
+-		    EMIT2('E');	    EMIT2(0310);    EMIT2(0311);
+-		    EMIT2(0312);    EMIT2(0313);
++	    CASEMBC(0x112) CASEMBC(0x114) CASEMBC(0x116) CASEMBC(0x118)
++	    CASEMBC(0x11a) CASEMBC(0x1eba) CASEMBC(0x1ebc)
++		    EMIT2('E'); EMIT2(0310); EMIT2(0311); EMIT2(0312);
++		    EMIT2(0313);
++		    EMITMBC(0x112) EMITMBC(0x114) EMITMBC(0x116)
++		    EMITMBC(0x118) EMITMBC(0x11a) EMITMBC(0x1eba)
++		    EMITMBC(0x1ebc)
++		    return OK;
++
++	    case 'F': CASEMBC(0x1e1e)
++		    EMIT2('F'); EMITMBC(0x1e1e)
++		    return OK;
++
++	    case 'G': CASEMBC(0x11c) CASEMBC(0x11e) CASEMBC(0x120)
++	    CASEMBC(0x122) CASEMBC(0x1e4) CASEMBC(0x1e6) CASEMBC(0x1f4)
++	    CASEMBC(0x1e20)
++		    EMIT2('G'); EMITMBC(0x11c) EMITMBC(0x11e) EMITMBC(0x120)
++		    EMITMBC(0x122) EMITMBC(0x1e4) EMITMBC(0x1e6)
++		    EMITMBC(0x1f4) EMITMBC(0x1e20)
++		    return OK;
++
++	    case 'H': CASEMBC(0x124) CASEMBC(0x126) CASEMBC(0x1e22)
++	    CASEMBC(0x1e26) CASEMBC(0x1e28)
++		    EMIT2('H'); EMITMBC(0x124) EMITMBC(0x126) EMITMBC(0x1e22)
++		    EMITMBC(0x1e26) EMITMBC(0x1e28)
+ 		    return OK;
+ 
+ 	    case 'I': case 0314: case 0315: case 0316: case 0317:
+-		    EMIT2('I');	    EMIT2(0314);    EMIT2(0315);
+-		    EMIT2(0316);    EMIT2(0317);
++	    CASEMBC(0x128) CASEMBC(0x12a) CASEMBC(0x12c) CASEMBC(0x12e)
++	    CASEMBC(0x130) CASEMBC(0x1cf) CASEMBC(0x1ec8)
++		    EMIT2('I'); EMIT2(0314); EMIT2(0315); EMIT2(0316);
++		    EMIT2(0317); EMITMBC(0x128) EMITMBC(0x12a)
++		    EMITMBC(0x12c) EMITMBC(0x12e) EMITMBC(0x130)
++		    EMITMBC(0x1cf) EMITMBC(0x1ec8)
++		    return OK;
++
++	    case 'J': CASEMBC(0x134)
++		    EMIT2('J'); EMITMBC(0x134)
++		    return OK;
++
++	    case 'K': CASEMBC(0x136) CASEMBC(0x1e8) CASEMBC(0x1e30)
++	    CASEMBC(0x1e34)
++		    EMIT2('K'); EMITMBC(0x136) EMITMBC(0x1e8) EMITMBC(0x1e30)
++		    EMITMBC(0x1e34)
++		    return OK;
++
++	    case 'L': CASEMBC(0x139) CASEMBC(0x13b) CASEMBC(0x13d)
++	    CASEMBC(0x13f) CASEMBC(0x141) CASEMBC(0x1e3a)
++		    EMIT2('L'); EMITMBC(0x139) EMITMBC(0x13b) EMITMBC(0x13d)
++		    EMITMBC(0x13f) EMITMBC(0x141) EMITMBC(0x1e3a)
++		    return OK;
++
++	    case 'M': CASEMBC(0x1e3e) CASEMBC(0x1e40)
++		    EMIT2('M'); EMITMBC(0x1e3e) EMITMBC(0x1e40)
+ 		    return OK;
+ 
+ 	    case 'N': case 0321:
+-		    EMIT2('N');	    EMIT2(0321);
++	    CASEMBC(0x143) CASEMBC(0x145) CASEMBC(0x147) CASEMBC(0x1e44)
++	    CASEMBC(0x1e48)
++		    EMIT2('N'); EMIT2(0321); EMITMBC(0x143) EMITMBC(0x145)
++		    EMITMBC(0x147) EMITMBC(0x1e44) EMITMBC(0x1e48)
+ 		    return OK;
+ 
+ 	    case 'O': case 0322: case 0323: case 0324: case 0325:
+-	    case 0326:
+-		    EMIT2('O');	    EMIT2(0322);    EMIT2(0323);
+-		    EMIT2(0324);    EMIT2(0325);    EMIT2(0326);
++	    case 0326: case 0330:
++	    CASEMBC(0x14c) CASEMBC(0x14e) CASEMBC(0x150) CASEMBC(0x1a0)
++	    CASEMBC(0x1d1) CASEMBC(0x1ea) CASEMBC(0x1ec) CASEMBC(0x1ece)
++		    EMIT2('O'); EMIT2(0322); EMIT2(0323); EMIT2(0324);
++		    EMIT2(0325); EMIT2(0326); EMIT2(0330);
++		    EMITMBC(0x14c) EMITMBC(0x14e) EMITMBC(0x150)
++		    EMITMBC(0x1a0) EMITMBC(0x1d1) EMITMBC(0x1ea)
++		    EMITMBC(0x1ec) EMITMBC(0x1ece)
++		    return OK;
++
++	    case 'P': case 0x1e54: case 0x1e56:
++		    EMIT2('P'); EMITMBC(0x1e54) EMITMBC(0x1e56)
++		    return OK;
++
++	    case 'R': CASEMBC(0x154) CASEMBC(0x156) CASEMBC(0x158)
++	    CASEMBC(0x1e58) CASEMBC(0x1e5e)
++		    EMIT2('R'); EMITMBC(0x154) EMITMBC(0x156) EMITMBC(0x158)
++		    EMITMBC(0x1e58) EMITMBC(0x1e5e)
++		    return OK;
++
++	    case 'S': CASEMBC(0x15a) CASEMBC(0x15c) CASEMBC(0x15e)
++	    CASEMBC(0x160) CASEMBC(0x1e60)
++		    EMIT2('S'); EMITMBC(0x15a) EMITMBC(0x15c) EMITMBC(0x15e)
++		    EMITMBC(0x160) EMITMBC(0x1e60)
++		    return OK;
++
++	    case 'T': CASEMBC(0x162) CASEMBC(0x164) CASEMBC(0x166)
++	    CASEMBC(0x1e6a) CASEMBC(0x1e6e)
++		    EMIT2('T'); EMITMBC(0x162) EMITMBC(0x164) EMITMBC(0x166)
++		    EMITMBC(0x1e6a) EMITMBC(0x1e6e)
+ 		    return OK;
+ 
+ 	    case 'U': case 0331: case 0332: case 0333: case 0334:
+-		    EMIT2('U');	    EMIT2(0331);    EMIT2(0332);
+-		    EMIT2(0333);    EMIT2(0334);
++	    CASEMBC(0x168) CASEMBC(0x16a) CASEMBC(0x16c) CASEMBC(0x16e)
++	    CASEMBC(0x170) CASEMBC(0x172) CASEMBC(0x1af) CASEMBC(0x1d3)
++	    CASEMBC(0x1ee6)
++		    EMIT2('U'); EMIT2(0331); EMIT2(0332); EMIT2(0333);
++		    EMIT2(0334); EMITMBC(0x168) EMITMBC(0x16a)
++		    EMITMBC(0x16c) EMITMBC(0x16e) EMITMBC(0x170)
++		    EMITMBC(0x172) EMITMBC(0x1af) EMITMBC(0x1d3)
++		    EMITMBC(0x1ee6)
++		    return OK;
++
++	    case 'V': CASEMBC(0x1e7c)
++		    EMIT2('V'); EMITMBC(0x1e7c)
++		    return OK;
++
++	    case 'W': CASEMBC(0x174) CASEMBC(0x1e80) CASEMBC(0x1e82)
++	    CASEMBC(0x1e84) CASEMBC(0x1e86)
++		    EMIT2('W'); EMITMBC(0x174) EMITMBC(0x1e80) EMITMBC(0x1e82)
++		    EMITMBC(0x1e84) EMITMBC(0x1e86)
++		    return OK;
++
++	    case 'X': CASEMBC(0x1e8a) CASEMBC(0x1e8c)
++		    EMIT2('X'); EMITMBC(0x1e8a) EMITMBC(0x1e8c)
+ 		    return OK;
+ 
+ 	    case 'Y': case 0335:
+-		    EMIT2('Y');	    EMIT2(0335);
++	    CASEMBC(0x176) CASEMBC(0x178) CASEMBC(0x1e8e) CASEMBC(0x1ef2)
++	    CASEMBC(0x1ef6) CASEMBC(0x1ef8)
++		    EMIT2('Y'); EMIT2(0335); EMITMBC(0x176) EMITMBC(0x178)
++		    EMITMBC(0x1e8e) EMITMBC(0x1ef2) EMITMBC(0x1ef6)
++		    EMITMBC(0x1ef8)
++		    return OK;
++
++	    case 'Z': CASEMBC(0x179) CASEMBC(0x17b) CASEMBC(0x17d)
++	    CASEMBC(0x1b5) CASEMBC(0x1e90) CASEMBC(0x1e94)
++		    EMIT2('Z'); EMITMBC(0x179) EMITMBC(0x17b) EMITMBC(0x17d)
++		    EMITMBC(0x1b5) EMITMBC(0x1e90) EMITMBC(0x1e94)
+ 		    return OK;
+ 
+ 	    case 'a': case 0340: case 0341: case 0342:
+ 	    case 0343: case 0344: case 0345:
+-		    EMIT2('a');	    EMIT2(0340);    EMIT2(0341);
+-		    EMIT2(0342);    EMIT2(0343);    EMIT2(0344);
+-		    EMIT2(0345);
++	    CASEMBC(0x101) CASEMBC(0x103) CASEMBC(0x105) CASEMBC(0x1ce)
++	    CASEMBC(0x1df) CASEMBC(0x1e1) CASEMBC(0x1ea3)
++		    EMIT2('a'); EMIT2(0340); EMIT2(0341); EMIT2(0342);
++		    EMIT2(0343); EMIT2(0344); EMIT2(0345);
++		    EMITMBC(0x101) EMITMBC(0x103) EMITMBC(0x105)
++		    EMITMBC(0x1ce) EMITMBC(0x1df) EMITMBC(0x1e1)
++		    EMITMBC(0x1ea3)
++		    return OK;
++
++	    case 'b': CASEMBC(0x1e03) CASEMBC(0x1e07)
++		    EMIT2('b'); EMITMBC(0x1e03) EMITMBC(0x1e07)
+ 		    return OK;
+ 
+ 	    case 'c': case 0347:
+-		    EMIT2('c');	    EMIT2(0347);
++	    CASEMBC(0x107) CASEMBC(0x109) CASEMBC(0x10b) CASEMBC(0x10d)
++		    EMIT2('c'); EMIT2(0347); EMITMBC(0x107) EMITMBC(0x109)
++		    EMITMBC(0x10b) EMITMBC(0x10d)
++		    return OK;
++
++	    case 'd': CASEMBC(0x10f) CASEMBC(0x111) CASEMBC(0x1d0b)
++	    CASEMBC(0x1e11)
++		    EMIT2('d'); EMITMBC(0x10f) EMITMBC(0x111) EMITMBC(0x1e0b)
++		    EMITMBC(0x01e0f) EMITMBC(0x1e11)
+ 		    return OK;
+ 
+ 	    case 'e': case 0350: case 0351: case 0352: case 0353:
+-		    EMIT2('e');	    EMIT2(0350);    EMIT2(0351);
+-		    EMIT2(0352);    EMIT2(0353);
++	    CASEMBC(0x113) CASEMBC(0x115) CASEMBC(0x117) CASEMBC(0x119)
++	    CASEMBC(0x11b) CASEMBC(0x1ebb) CASEMBC(0x1ebd)
++		    EMIT2('e'); EMIT2(0350); EMIT2(0351); EMIT2(0352);
++		    EMIT2(0353); EMITMBC(0x113) EMITMBC(0x115)
++		    EMITMBC(0x117) EMITMBC(0x119) EMITMBC(0x11b)
++		    EMITMBC(0x1ebb) EMITMBC(0x1ebd)
++		    return OK;
++
++	    case 'f': CASEMBC(0x1e1f)
++		    EMIT2('f'); EMITMBC(0x1e1f)
++		    return OK;
++
++	    case 'g': CASEMBC(0x11d) CASEMBC(0x11f) CASEMBC(0x121)
++	    CASEMBC(0x123) CASEMBC(0x1e5) CASEMBC(0x1e7) CASEMBC(0x1f5)
++	    CASEMBC(0x1e21)
++		    EMIT2('g'); EMITMBC(0x11d) EMITMBC(0x11f) EMITMBC(0x121)
++		    EMITMBC(0x123) EMITMBC(0x1e5) EMITMBC(0x1e7)
++		    EMITMBC(0x1f5) EMITMBC(0x1e21)
++		    return OK;
++
++	    case 'h': CASEMBC(0x125) CASEMBC(0x127) CASEMBC(0x1e23)
++	    CASEMBC(0x1e27) CASEMBC(0x1e29) CASEMBC(0x1e96)
++		    EMIT2('h'); EMITMBC(0x125) EMITMBC(0x127) EMITMBC(0x1e23)
++		    EMITMBC(0x1e27) EMITMBC(0x1e29) EMITMBC(0x1e96)
+ 		    return OK;
+ 
+ 	    case 'i': case 0354: case 0355: case 0356: case 0357:
+-		    EMIT2('i');	    EMIT2(0354);    EMIT2(0355);
+-		    EMIT2(0356);    EMIT2(0357);
++	    CASEMBC(0x129) CASEMBC(0x12b) CASEMBC(0x12d) CASEMBC(0x12f)
++	    CASEMBC(0x1d0) CASEMBC(0x1ec9)
++		    EMIT2('i'); EMIT2(0354); EMIT2(0355); EMIT2(0356);
++		    EMIT2(0357); EMITMBC(0x129) EMITMBC(0x12b)
++		    EMITMBC(0x12d) EMITMBC(0x12f) EMITMBC(0x1d0)
++		    EMITMBC(0x1ec9)
++		    return OK;
++
++	    case 'j': CASEMBC(0x135) CASEMBC(0x1f0)
++		    EMIT2('j'); EMITMBC(0x135) EMITMBC(0x1f0)
++		    return OK;
++
++	    case 'k': CASEMBC(0x137) CASEMBC(0x1e9) CASEMBC(0x1e31)
++	    CASEMBC(0x1e35)
++		    EMIT2('k'); EMITMBC(0x137) EMITMBC(0x1e9) EMITMBC(0x1e31)
++		    EMITMBC(0x1e35)
++		    return OK;
++
++	    case 'l': CASEMBC(0x13a) CASEMBC(0x13c) CASEMBC(0x13e)
++	    CASEMBC(0x140) CASEMBC(0x142) CASEMBC(0x1e3b)
++		    EMIT2('l'); EMITMBC(0x13a) EMITMBC(0x13c) EMITMBC(0x13e)
++		    EMITMBC(0x140) EMITMBC(0x142) EMITMBC(0x1e3b)
++		    return OK;
++
++	    case 'm': CASEMBC(0x1e3f) CASEMBC(0x1e41)
++		    EMIT2('m'); EMITMBC(0x1e3f) EMITMBC(0x1e41)
+ 		    return OK;
+ 
+ 	    case 'n': case 0361:
+-		    EMIT2('n');	    EMIT2(0361);
++	    CASEMBC(0x144) CASEMBC(0x146) CASEMBC(0x148) CASEMBC(0x149)
++	    CASEMBC(0x1e45) CASEMBC(0x1e49)
++		    EMIT2('n'); EMIT2(0361); EMITMBC(0x144) EMITMBC(0x146)
++		    EMITMBC(0x148) EMITMBC(0x149) EMITMBC(0x1e45)
++		    EMITMBC(0x1e49)
+ 		    return OK;
+ 
+ 	    case 'o': case 0362: case 0363: case 0364: case 0365:
+-	    case 0366:
+-		    EMIT2('o');	    EMIT2(0362);    EMIT2(0363);
+-		    EMIT2(0364);    EMIT2(0365);    EMIT2(0366);
++	    case 0366: case 0370:
++	    CASEMBC(0x14d) CASEMBC(0x14f) CASEMBC(0x151) CASEMBC(0x1a1)
++	    CASEMBC(0x1d2) CASEMBC(0x1eb) CASEMBC(0x1ed) CASEMBC(0x1ecf)
++		    EMIT2('o'); EMIT2(0362); EMIT2(0363); EMIT2(0364);
++		    EMIT2(0365); EMIT2(0366); EMIT2(0370);
++		    EMITMBC(0x14d) EMITMBC(0x14f) EMITMBC(0x151)
++		    EMITMBC(0x1a1) EMITMBC(0x1d2) EMITMBC(0x1eb)
++		    EMITMBC(0x1ed) EMITMBC(0x1ecf)
++		    return OK;
++
++	    case 'p': CASEMBC(0x1e55) CASEMBC(0x1e57)
++		    EMIT2('p'); EMITMBC(0x1e55) EMITMBC(0x1e57)
++		    return OK;
++
++	    case 'r': CASEMBC(0x155) CASEMBC(0x157) CASEMBC(0x159)
++	    CASEMBC(0x1e59) CASEMBC(0x1e5f)
++		    EMIT2('r'); EMITMBC(0x155) EMITMBC(0x157) EMITMBC(0x159)
++		    EMITMBC(0x1e59) EMITMBC(0x1e5f)
++		    return OK;
++
++	    case 's': CASEMBC(0x15b) CASEMBC(0x15d) CASEMBC(0x15f)
++	    CASEMBC(0x161) CASEMBC(0x1e61)
++		    EMIT2('s'); EMITMBC(0x15b) EMITMBC(0x15d) EMITMBC(0x15f)
++		    EMITMBC(0x161) EMITMBC(0x1e61)
++		    return OK;
++
++	    case 't': CASEMBC(0x163) CASEMBC(0x165) CASEMBC(0x167)
++	    CASEMBC(0x1e6b) CASEMBC(0x1e6f) CASEMBC(0x1e97)
++		    EMIT2('t'); EMITMBC(0x163) EMITMBC(0x165) EMITMBC(0x167)
++		    EMITMBC(0x1e6b) EMITMBC(0x1e6f) EMITMBC(0x1e97)
+ 		    return OK;
+ 
+ 	    case 'u': case 0371: case 0372: case 0373: case 0374:
+-		    EMIT2('u');	    EMIT2(0371);    EMIT2(0372);
+-		    EMIT2(0373);    EMIT2(0374);
++	    CASEMBC(0x169) CASEMBC(0x16b) CASEMBC(0x16d) CASEMBC(0x16f)
++	    CASEMBC(0x171) CASEMBC(0x173) CASEMBC(0x1b0) CASEMBC(0x1d4)
++	    CASEMBC(0x1ee7)
++		    EMIT2('u'); EMIT2(0371); EMIT2(0372); EMIT2(0373);
++		    EMIT2(0374); EMITMBC(0x169) EMITMBC(0x16b)
++		    EMITMBC(0x16d) EMITMBC(0x16f) EMITMBC(0x171)
++		    EMITMBC(0x173) EMITMBC(0x1b0) EMITMBC(0x1d4)
++		    EMITMBC(0x1ee7)
++		    return OK;
++
++	    case 'v': CASEMBC(0x1e7d)
++		    EMIT2('v'); EMITMBC(0x1e7d)
++		    return OK;
++
++	    case 'w': CASEMBC(0x175) CASEMBC(0x1e81) CASEMBC(0x1e83)
++	    CASEMBC(0x1e85) CASEMBC(0x1e87) CASEMBC(0x1e98)
++		    EMIT2('w'); EMITMBC(0x175) EMITMBC(0x1e81) EMITMBC(0x1e83)
++		    EMITMBC(0x1e85) EMITMBC(0x1e87) EMITMBC(0x1e98)
++		    return OK;
++
++	    case 'x': CASEMBC(0x1e8b) CASEMBC(0x1e8d)
++		    EMIT2('x'); EMITMBC(0x1e8b) EMITMBC(0x1e8d)
+ 		    return OK;
+ 
+ 	    case 'y': case 0375: case 0377:
+-		    EMIT2('y');	    EMIT2(0375);    EMIT2(0377);
++	    CASEMBC(0x177) CASEMBC(0x1e8f) CASEMBC(0x1e99)
++	    CASEMBC(0x1ef3) CASEMBC(0x1ef7) CASEMBC(0x1ef9)
++		    EMIT2('y'); EMIT2(0375); EMIT2(0377); EMITMBC(0x177)
++		    EMITMBC(0x1e8f) EMITMBC(0x1e99) EMITMBC(0x1ef3)
++		    EMITMBC(0x1ef7) EMITMBC(0x1ef9)
+ 		    return OK;
+ 
+-	    default:
+-		    return FAIL;
++	    case 'z': CASEMBC(0x17a) CASEMBC(0x17c) CASEMBC(0x17e)
++	    CASEMBC(0x1b6) CASEMBC(0x1e91) CASEMBC(0x1e95)
++		    EMIT2('z'); EMITMBC(0x17a) EMITMBC(0x17c) EMITMBC(0x17e)
++		    EMITMBC(0x1b6) EMITMBC(0x1e91) EMITMBC(0x1e95)
++		    return OK;
++
++	    /* default: character itself */
+ 	}
+     }
+ 
+-    EMIT(c);
++    EMIT2(c);
+     return OK;
+ #undef EMIT2
++#undef EMITMBC
+ }
+ 
+ /*
+@@ -914,7 +1174,7 @@
+ 		break;
+ 	    }
+ 
+-	    extra = ADD_NL;
++	    extra = NFA_ADD_NL;
+ 
+ 	    /* "\_[" is collection plus newline */
+ 	    if (c == '[')
+@@ -970,7 +1230,7 @@
+ 	    }
+ #endif
+ 	    EMIT(nfa_classcodes[p - classchars]);
+-	    if (extra == ADD_NL)
++	    if (extra == NFA_ADD_NL)
+ 	    {
+ 		EMIT(NFA_NEWL);
+ 		EMIT(NFA_OR);
+@@ -1123,8 +1383,9 @@
+ 			    EMSG2_RET_FAIL(
+ 			       _("E678: Invalid character after %s%%[dxouU]"),
+ 				    reg_magic == MAGIC_ALL);
++			/* A NUL is stored in the text as NL */
+ 			/* TODO: what if a composing character follows? */
+-			EMIT(nr);
++			EMIT(nr == 0 ? 0x0a : nr);
+ 		    }
+ 		    break;
+ 
+@@ -1240,21 +1501,21 @@
+ 	    {
+ 		/*
+ 		 * Try to reverse engineer character classes. For example,
+-		 * recognize that [0-9] stands for  \d and [A-Za-z_] with \h,
++		 * recognize that [0-9] stands for \d and [A-Za-z_] for \h,
+ 		 * and perform the necessary substitutions in the NFA.
+ 		 */
+ 		result = nfa_recognize_char_class(regparse, endp,
+-							    extra == ADD_NL);
++							 extra == NFA_ADD_NL);
+ 		if (result != FAIL)
+ 		{
+-		    if (result >= NFA_DIGIT && result <= NFA_NUPPER)
+-			EMIT(result);
+-		    else	/* must be char class + newline */
++		    if (result >= NFA_FIRST_NL && result <= NFA_LAST_NL)
+ 		    {
+-			EMIT(result - ADD_NL);
++			EMIT(result - NFA_ADD_NL);
+ 			EMIT(NFA_NEWL);
+ 			EMIT(NFA_OR);
+ 		    }
++		    else
++			EMIT(result);
+ 		    regparse = endp;
+ 		    mb_ptr_adv(regparse);
+ 		    return OK;
+@@ -1504,7 +1765,7 @@
+ 			     * collection, add an OR below. But not for negated
+ 			     * range. */
+ 			    if (!negated)
+-				extra = ADD_NL;
++				extra = NFA_ADD_NL;
+ 			}
+ 			else
+ 			{
+@@ -1537,7 +1798,7 @@
+ 		    EMIT(NFA_END_COLL);
+ 
+ 		/* \_[] also matches \n but it's not negated */
+-		if (extra == ADD_NL)
++		if (extra == NFA_ADD_NL)
+ 		{
+ 		    EMIT(reg_string ? NL : NFA_NEWL);
+ 		    EMIT(NFA_OR);
+@@ -1744,8 +2005,8 @@
+ 	    {
+ 		/* Ignore result of previous call to nfa_regatom() */
+ 		post_ptr = post_start + my_post_start;
+-		/* NFA_SKIP_CHAR has 0-length and works everywhere */
+-		EMIT(NFA_SKIP_CHAR);
++		/* NFA_EMPTY is 0-length and works everywhere */
++		EMIT(NFA_EMPTY);
+ 		return OK;
+ 	    }
+ 
+@@ -1909,16 +2170,16 @@
+ 	old_post_pos = (int)(post_ptr - post_start);
+ 	if (nfa_regconcat() == FAIL)
+ 	    return FAIL;
+-	/* if concat is empty, skip a input char. But do emit a node */
++	/* if concat is empty do emit a node */
+ 	if (old_post_pos == (int)(post_ptr - post_start))
+-	    EMIT(NFA_SKIP_CHAR);
++	    EMIT(NFA_EMPTY);
+ 	EMIT(NFA_CONCAT);
+ 	ch = peekchr();
+     }
+ 
+-    /* Even if a branch is empty, emit one node for it */
++    /* if a branch is empty, emit one node for it */
+     if (old_post_pos == (int)(post_ptr - post_start))
+-	EMIT(NFA_SKIP_CHAR);
++	EMIT(NFA_EMPTY);
+ 
+     return OK;
+ }
+@@ -2011,7 +2272,7 @@
+     if (c >= NFA_FIRST_NL && c <= NFA_LAST_NL)
+     {
+ 	addnl = TRUE;
+-	c -= ADD_NL;
++	c -= NFA_ADD_NL;
+     }
+ 
+     STRCPY(code, "");
+@@ -2162,7 +2423,7 @@
+ 	case NFA_STAR_NONGREEDY: STRCPY(code, "NFA_STAR_NONGREEDY "); break;
+ 	case NFA_QUEST:		STRCPY(code, "NFA_QUEST"); break;
+ 	case NFA_QUEST_NONGREEDY: STRCPY(code, "NFA_QUEST_NON_GREEDY"); break;
+-	case NFA_SKIP_CHAR:	STRCPY(code, "NFA_SKIP_CHAR"); break;
++	case NFA_EMPTY:		STRCPY(code, "NFA_EMPTY"); break;
+ 	case NFA_OR:		STRCPY(code, "NFA_OR"); break;
+ 
+ 	case NFA_START_COLL:	STRCPY(code, "NFA_START_COLL"); break;
+@@ -2217,6 +2478,10 @@
+ 	case NFA_NLOWER:STRCPY(code, "NFA_NLOWER"); break;
+ 	case NFA_UPPER:	STRCPY(code, "NFA_UPPER"); break;
+ 	case NFA_NUPPER:STRCPY(code, "NFA_NUPPER"); break;
++	case NFA_LOWER_IC:  STRCPY(code, "NFA_LOWER_IC"); break;
++	case NFA_NLOWER_IC: STRCPY(code, "NFA_NLOWER_IC"); break;
++	case NFA_UPPER_IC:  STRCPY(code, "NFA_UPPER_IC"); break;
++	case NFA_NUPPER_IC: STRCPY(code, "NFA_NUPPER_IC"); break;
+ 
+ 	default:
+ 	    STRCPY(code, "CHAR(x)");
+@@ -2687,6 +2952,10 @@
+ 	    case NFA_NLOWER:
+ 	    case NFA_UPPER:
+ 	    case NFA_NUPPER:
++	    case NFA_LOWER_IC:
++	    case NFA_NLOWER_IC:
++	    case NFA_UPPER_IC:
++	    case NFA_NUPPER_IC:
+ 		/* possibly non-ascii */
+ #ifdef FEAT_MBYTE
+ 		if (has_mbyte)
+@@ -2798,7 +3067,7 @@
+ 	    case NFA_ZSTART:
+ 	    case NFA_ZEND:
+ 	    case NFA_OPT_CHARS:
+-	    case NFA_SKIP_CHAR:
++	    case NFA_EMPTY:
+ 	    case NFA_START_PATTERN:
+ 	    case NFA_END_PATTERN:
+ 	    case NFA_COMPOSING:
+@@ -2996,15 +3265,14 @@
+ 	    PUSH(frag(e1.start, e2.out));
+ 	    break;
+ 
+-	case NFA_SKIP_CHAR:
+-	    /* Symbol of 0-length, Used in a repetition
+-	     * with max/min count of 0 */
++	case NFA_EMPTY:
++	    /* 0-length, used in a repetition with max/min count of 0 */
+ 	    if (nfa_calc_size == TRUE)
+ 	    {
+ 		nstate++;
+ 		break;
+ 	    }
+-	    s = alloc_state(NFA_SKIP_CHAR, NULL, NULL);
++	    s = alloc_state(NFA_EMPTY, NULL, NULL);
+ 	    if (s == NULL)
+ 		goto theend;
+ 	    PUSH(frag(s, list1(&s->out)));
+@@ -3554,6 +3822,7 @@
+ static void clear_sub __ARGS((regsub_T *sub));
+ static void copy_sub __ARGS((regsub_T *to, regsub_T *from));
+ static void copy_sub_off __ARGS((regsub_T *to, regsub_T *from));
++static void copy_ze_off __ARGS((regsub_T *to, regsub_T *from));
+ static int sub_equal __ARGS((regsub_T *sub1, regsub_T *sub2));
+ static int match_backref __ARGS((regsub_T *sub, int subidx, int *bytelen));
+ static int has_state_with_pos __ARGS((nfa_list_T *l, nfa_state_T *state, regsubs_T *subs, nfa_pim_T *pim));
+@@ -3641,6 +3910,29 @@
+ }
+ 
+ /*
++ * Like copy_sub() but only do the end of the main match if \ze is present.
++ */
++    static void
++copy_ze_off(to, from)
++    regsub_T	*to;
++    regsub_T	*from;
++{
++    if (nfa_has_zend)
++    {
++	if (REG_MULTI)
++	{
++	    if (from->list.multi[0].end.lnum >= 0)
++		to->list.multi[0].end = from->list.multi[0].end;
++	}
++	else
++	{
++	    if (from->list.line[0].end != NULL)
++		to->list.line[0].end = from->list.line[0].end;
++	}
++    }
++}
++
++/*
+  * Return TRUE if "sub1" and "sub2" have the same start positions.
+  */
+     static int
+@@ -3765,6 +4057,9 @@
+     if (two_unused)
+ 	/* one is used and two is not: not equal */
+ 	return FALSE;
++    /* compare the state id */
++    if (one->state->id != two->state->id)
++	return FALSE;
+     /* compare the position */
+     if (REG_MULTI)
+ 	return one->end.pos.lnum == two->end.pos.lnum
+@@ -3841,6 +4136,10 @@
+ 	    case NFA_NLOWER:
+ 	    case NFA_UPPER:
+ 	    case NFA_NUPPER:
++	    case NFA_LOWER_IC:
++	    case NFA_NLOWER_IC:
++	    case NFA_UPPER_IC:
++	    case NFA_NUPPER_IC:
+ 	    case NFA_START_COLL:
+ 	    case NFA_START_NEG_COLL:
+ 	    case NFA_NEWL:
+@@ -3933,7 +4232,7 @@
+ 	case NFA_MOPEN:
+ 	case NFA_ZEND:
+ 	case NFA_SPLIT:
+-	case NFA_SKIP_CHAR:
++	case NFA_EMPTY:
+ 	    /* These nodes are not added themselves but their "out" and/or
+ 	     * "out1" may be added below.  */
+ 	    break;
+@@ -4061,7 +4360,7 @@
+ 	    subs = addstate(l, state->out1, subs, pim, off);
+ 	    break;
+ 
+-	case NFA_SKIP_CHAR:
++	case NFA_EMPTY:
+ 	case NFA_NOPEN:
+ 	case NFA_NCLOSE:
+ 	    subs = addstate(l, state->out, subs, pim, off);
+@@ -4096,7 +4395,7 @@
+ 		sub = &subs->norm;
+ 	    }
+ #ifdef FEAT_SYN_HL
+-	    else if (state->c >= NFA_ZOPEN)
++	    else if (state->c >= NFA_ZOPEN && state->c <= NFA_ZOPEN9)
+ 	    {
+ 		subidx = state->c - NFA_ZOPEN;
+ 		sub = &subs->synt;
+@@ -4165,6 +4464,13 @@
+ 	    }
+ 
+ 	    subs = addstate(l, state->out, subs, pim, off);
++	    /* "subs" may have changed, need to set "sub" again */
++#ifdef FEAT_SYN_HL
++	    if (state->c >= NFA_ZOPEN && state->c <= NFA_ZOPEN9)
++		sub = &subs->synt;
++	    else
++#endif
++		sub = &subs->norm;
+ 
+ 	    if (save_in_use == -1)
+ 	    {
+@@ -4178,10 +4484,11 @@
+ 	    break;
+ 
+ 	case NFA_MCLOSE:
+-	    if (nfa_has_zend)
++	    if (nfa_has_zend && (REG_MULTI
++			? subs->norm.list.multi[0].end.lnum >= 0
++			: subs->norm.list.line[0].end != NULL))
+ 	    {
+-		/* Do not overwrite the position set by \ze. If no \ze
+-		 * encountered end will be set in nfa_regtry(). */
++		/* Do not overwrite the position set by \ze. */
+ 		subs = addstate(l, state->out, subs, pim, off);
+ 		break;
+ 	    }
+@@ -4213,7 +4520,7 @@
+ 		sub = &subs->norm;
+ 	    }
+ #ifdef FEAT_SYN_HL
+-	    else if (state->c >= NFA_ZCLOSE)
++	    else if (state->c >= NFA_ZCLOSE && state->c <= NFA_ZCLOSE9)
+ 	    {
+ 		subidx = state->c - NFA_ZCLOSE;
+ 		sub = &subs->synt;
+@@ -4257,6 +4564,13 @@
+ 	    }
+ 
+ 	    subs = addstate(l, state->out, subs, pim, off);
++	    /* "subs" may have changed, need to set "sub" again */
++#ifdef FEAT_SYN_HL
++	    if (state->c >= NFA_ZCLOSE && state->c <= NFA_ZCLOSE9)
++		sub = &subs->synt;
++	    else
++#endif
++		sub = &subs->norm;
+ 
+ 	    if (REG_MULTI)
+ 		sub->list.multi[subidx].end = save_lpos;
+@@ -5018,6 +5332,7 @@
+  * When "nfa_endp" is not NULL it is a required end-of-match position.
+  *
+  * Return TRUE if there is a match, FALSE otherwise.
++ * When there is a match "submatch" contains the positions.
+  * Note: Caller must ensure that: start != NULL.
+  */
+     static int
+@@ -5051,6 +5366,12 @@
+ 	return FALSE;
+     }
+ #endif
++    /* Some patterns may take a long time to match, especially when using
++     * recursive_regmatch(). Allow interrupting them with CTRL-C. */
++    fast_breakcheck();
++    if (got_int)
++	return FALSE;
++
+     nfa_match = FALSE;
+ 
+     /* Allocate memory for the lists of nodes. */
+@@ -5278,7 +5599,10 @@
+ 		log_subsexpr(m);
+ #endif
+ 		nfa_match = TRUE;
+-		break;
++		/* See comment above at "goto nextchar". */
++		if (nextlist->n == 0)
++		    clen = 0;
++		goto nextchar;
+ 
+ 	    case NFA_START_INVISIBLE:
+ 	    case NFA_START_INVISIBLE_FIRST:
+@@ -5304,9 +5628,13 @@
+ 		    {
+ 			int in_use = m->norm.in_use;
+ 
+-			/* Copy submatch info for the recursive call, so that
+-			 * \1 can be matched. */
++			/* Copy submatch info for the recursive call, opposite
++			 * of what happens on success below. */
+ 			copy_sub_off(&m->norm, &t->subs.norm);
++#ifdef FEAT_SYN_HL
++			if (nfa_has_zsubexpr)
++			    copy_sub_off(&m->synt, &t->subs.synt);
++#endif
+ 
+ 			/*
+ 			 * First try matching the invisible match, then what
+@@ -5330,6 +5658,9 @@
+ 			    if (nfa_has_zsubexpr)
+ 				copy_sub_off(&t->subs.synt, &m->synt);
+ #endif
++			    /* If the pattern has \ze and it matched in the
++			     * sub pattern, use it. */
++			    copy_ze_off(&t->subs.norm, &m->norm);
+ 
+ 			    /* t->state->out1 is the corresponding
+ 			     * END_INVISIBLE node; Add its out to the current
+@@ -5413,6 +5744,13 @@
+ #endif
+ 		    break;
+ 		}
++		/* Copy submatch info to the recursive call, opposite of what
++		 * happens afterwards. */
++		copy_sub_off(&m->norm, &t->subs.norm);
++#ifdef FEAT_SYN_HL
++		if (nfa_has_zsubexpr)
++		    copy_sub_off(&m->synt, &t->subs.synt);
++#endif
+ 
+ 		/* First try matching the pattern. */
+ 		result = recursive_regmatch(t->state, NULL, prog,
+@@ -5872,6 +6210,28 @@
+ 		ADD_STATE_IF_MATCH(t->state);
+ 		break;
+ 
++	    case NFA_LOWER_IC:	/* [a-z] */
++		result = ri_lower(curc) || (ireg_ic && ri_upper(curc));
++		ADD_STATE_IF_MATCH(t->state);
++		break;
++
++	    case NFA_NLOWER_IC:	/* [^a-z] */
++		result = curc != NUL
++			  && !(ri_lower(curc) || (ireg_ic && ri_upper(curc)));
++		ADD_STATE_IF_MATCH(t->state);
++		break;
++
++	    case NFA_UPPER_IC:	/* [A-Z] */
++		result = ri_upper(curc) || (ireg_ic && ri_lower(curc));
++		ADD_STATE_IF_MATCH(t->state);
++		break;
++
++	    case NFA_NUPPER_IC:	/* ^[A-Z] */
++		result = curc != NUL
++			  && !(ri_upper(curc) || (ireg_ic && ri_lower(curc)));
++		ADD_STATE_IF_MATCH(t->state);
++		break;
++
+ 	    case NFA_BACKREF1:
+ 	    case NFA_BACKREF2:
+ 	    case NFA_BACKREF3:
+diff -Naur vim74.orig/src/search.c vim74/src/search.c
+--- vim74.orig/src/search.c	2013-07-17 17:20:47.000000000 +0000
++++ vim74/src/search.c	2013-10-01 16:15:44.292538755 +0000
+@@ -1760,6 +1760,9 @@
+ #endif
+ 
+     pos = curwin->w_cursor;
++#ifdef FEAT_VIRTUALEDIT
++    pos.coladd = 0;
++#endif
+     linep = ml_get(pos.lnum);
+ 
+     cpo_match = (vim_strchr(p_cpo, CPO_MATCH) != NULL);
+diff -Naur vim74.orig/src/spell.c vim74/src/spell.c
+--- vim74.orig/src/spell.c	2013-07-17 15:28:28.000000000 +0000
++++ vim74/src/spell.c	2013-10-01 16:15:44.300538755 +0000
+@@ -9479,7 +9479,8 @@
+ 			if (undo)
+ 			{
+ 			    home_replace(NULL, fname, NameBuff, MAXPATHL, TRUE);
+-			    smsg((char_u *)_("Word removed from %s"), NameBuff);
++			    smsg((char_u *)_("Word '%.*s' removed from %s"),
++							 len, word, NameBuff);
+ 			}
+ 		    }
+ 		    fseek(fd, fpos_next, SEEK_SET);
+@@ -9525,7 +9526,7 @@
+ 	    fclose(fd);
+ 
+ 	    home_replace(NULL, fname, NameBuff, MAXPATHL, TRUE);
+-	    smsg((char_u *)_("Word added to %s"), NameBuff);
++	    smsg((char_u *)_("Word '%.*s' added to %s"), len, word, NameBuff);
+ 	}
+     }
+ 
+@@ -10135,7 +10136,7 @@
+ }
+ 
+ /*
+- * "z?": Find badly spelled word under or after the cursor.
++ * "z=": Find badly spelled word under or after the cursor.
+  * Give suggestions for the properly spelled word.
+  * In Visual mode use the highlighted word as the bad word.
+  * When "count" is non-zero use that suggestion.
+@@ -15568,11 +15569,21 @@
+ ex_spelldump(eap)
+     exarg_T *eap;
+ {
++    char_u  *spl;
++    long    dummy;
++
+     if (no_spell_checking(curwin))
+ 	return;
++    get_option_value((char_u*)"spl", &dummy, &spl, OPT_LOCAL);
+ 
+-    /* Create a new empty buffer by splitting the window. */
++    /* Create a new empty buffer in a new window. */
+     do_cmdline_cmd((char_u *)"new");
++
++    /* enable spelling locally in the new window */
++    set_option_value((char_u*)"spell", TRUE, (char_u*)"", OPT_LOCAL);
++    set_option_value((char_u*)"spl",  dummy,         spl, OPT_LOCAL);
++    vim_free(spl);
++
+     if (!bufempty() || !buf_valid(curbuf))
+ 	return;
+ 
+diff -Naur vim74.orig/src/tag.c vim74/src/tag.c
+--- vim74.orig/src/tag.c	2013-06-15 20:26:26.000000000 +0000
++++ vim74/src/tag.c	2013-10-01 16:15:44.304538755 +0000
+@@ -1797,13 +1797,16 @@
+ 	     */
+ 	    if (state == TS_START)
+ 	    {
+-		/* The header ends when the line sorts below "!_TAG_".
+-		 * There may be non-header items before the header though,
+-		 * e.g. "!" itself. When case is folded lower case letters
+-		 * sort before "_". */
++		/* The header ends when the line sorts below "!_TAG_".  When
++		 * case is folded lower case letters sort before "_". */
+ 		if (STRNCMP(lbuf, "!_TAG_", 6) <= 0
+ 				|| (lbuf[0] == '!' && ASCII_ISLOWER(lbuf[1])))
+ 		{
++		    if (STRNCMP(lbuf, "!_TAG_", 6) != 0)
++			/* Non-header item before the header, e.g. "!" itself.
++			 */
++			goto parse_line;
++
+ 		    /*
+ 		     * Read header line.
+ 		     */
+@@ -1898,6 +1901,7 @@
+ #endif
+ 	    }
+ 
++parse_line:
+ 	    /*
+ 	     * Figure out where the different strings are in this line.
+ 	     * For "normal" tags: Do a quick check if the tag matches.
+diff -Naur vim74.orig/src/term.c vim74/src/term.c
+--- vim74.orig/src/term.c	2013-07-04 20:29:28.000000000 +0000
++++ vim74/src/term.c	2013-10-01 16:15:44.308538755 +0000
+@@ -3356,7 +3356,7 @@
+  * it must be called immediately after entering termcap mode.
+  */
+     void
+-may_req_ambiguous_character_width()
++may_req_ambiguous_char_width()
+ {
+     if (u7_status == U7_GET
+ 	    && cur_tmode == TMODE_RAW
+diff -Naur vim74.orig/src/testdir/Make_amiga.mak vim74/src/testdir/Make_amiga.mak
+--- vim74.orig/src/testdir/Make_amiga.mak	2013-07-09 11:40:02.000000000 +0000
++++ vim74/src/testdir/Make_amiga.mak	2013-10-01 16:15:44.308538755 +0000
+@@ -33,7 +33,8 @@
+ 		test76.out test77.out test78.out test79.out test80.out \
+ 		test81.out test82.out test83.out test84.out test88.out \
+ 		test89.out test90.out test91.out test92.out test93.out \
+-		test94.out test95.out test96.out test97.out test98.out
++		test94.out test95.out test96.out test97.out test98.out \
++		test99.out
+ 
+ .SUFFIXES: .in .out
+ 
+@@ -148,3 +149,4 @@
+ test96.out: test96.in
+ test97.out: test97.in
+ test98.out: test98.in
++test99.out: test99.in
+diff -Naur vim74.orig/src/testdir/Make_dos.mak vim74/src/testdir/Make_dos.mak
+--- vim74.orig/src/testdir/Make_dos.mak	2013-07-09 11:40:30.000000000 +0000
++++ vim74/src/testdir/Make_dos.mak	2013-10-01 16:15:44.312538755 +0000
+@@ -32,7 +32,7 @@
+ 		test79.out test80.out test81.out test82.out test83.out \
+ 		test84.out test85.out test86.out test87.out test88.out \
+ 		test89.out test90.out test91.out test92.out test93.out \
+-		test94.out test95.out test96.out test98.out
++		test94.out test95.out test96.out test98.out test99.out
+ 
+ SCRIPTS32 =	test50.out test70.out
+ 
+diff -Naur vim74.orig/src/testdir/Make_ming.mak vim74/src/testdir/Make_ming.mak
+--- vim74.orig/src/testdir/Make_ming.mak	2013-07-09 11:40:38.000000000 +0000
++++ vim74/src/testdir/Make_ming.mak	2013-10-01 16:15:44.312538755 +0000
+@@ -52,7 +52,7 @@
+ 		test79.out test80.out test81.out test82.out test83.out \
+ 		test84.out test85.out test86.out test87.out test88.out \
+ 		test89.out test90.out test91.out test92.out test93.out \
+-		test94.out test95.out test96.out test98.out
++		test94.out test95.out test96.out test98.out test99.out
+ 
+ SCRIPTS32 =	test50.out test70.out
+ 
+diff -Naur vim74.orig/src/testdir/Make_os2.mak vim74/src/testdir/Make_os2.mak
+--- vim74.orig/src/testdir/Make_os2.mak	2013-07-09 11:40:43.000000000 +0000
++++ vim74/src/testdir/Make_os2.mak	2013-10-01 16:15:44.312538755 +0000
+@@ -34,7 +34,7 @@
+ 		test76.out test77.out test78.out test79.out test80.out \
+ 		test81.out test82.out test83.out test84.out test88.out \
+ 		test89.out test90.out test91.out test92.out test93.out \
+-		test94.out test95.out test96.out test98.out
++		test94.out test95.out test96.out test98.out test99.out
+ 
+ .SUFFIXES: .in .out
+ 
+diff -Naur vim74.orig/src/testdir/Make_vms.mms vim74/src/testdir/Make_vms.mms
+--- vim74.orig/src/testdir/Make_vms.mms	2013-07-09 11:40:47.000000000 +0000
++++ vim74/src/testdir/Make_vms.mms	2013-10-01 16:15:44.312538755 +0000
+@@ -4,7 +4,7 @@
+ # Authors:	Zoltan Arpadffy, <arpadffy@polarhome.com>
+ #		Sandor Kopanyi,  <sandor.kopanyi@mailbox.hu>
+ #
+-# Last change:  2013 Jul 09
++# Last change:  2013 Sep 19
+ #
+ # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
+ # Edit the lines in the Configuration section below to select.
+@@ -78,7 +78,7 @@
+ 	 test77.out test78.out test79.out test80.out test81.out \
+ 	 test82.out test83.out test84.out test88.out test89.out \
+ 	 test90.out test91.out test92.out test93.out test94.out \
+-	 test95.out test96.out test97.out test98.out
++	 test95.out test96.out test97.out test98.out test99.out
+ 
+ # Known problems:
+ # Test 30: a problem around mac format - unknown reason
+diff -Naur vim74.orig/src/testdir/Makefile vim74/src/testdir/Makefile
+--- vim74.orig/src/testdir/Makefile	2013-08-10 12:20:20.000000000 +0000
++++ vim74/src/testdir/Makefile	2013-10-01 16:15:44.312538755 +0000
+@@ -29,7 +29,8 @@
+ 		test79.out test80.out test81.out test82.out test83.out \
+ 		test84.out test85.out test86.out test87.out test88.out \
+ 		test89.out test90.out test91.out test92.out test93.out \
+-		test94.out test95.out test96.out test97.out test98.out
++		test94.out test95.out test96.out test97.out test98.out \
++		test99.out
+ 
+ SCRIPTS_GUI = test16.out
+ 
+@@ -57,9 +58,13 @@
+ 	-rm -rf *.out *.failed *.rej *.orig test.log $(RM_ON_RUN) $(RM_ON_START) valgrind.*
+ 
+ test1.out: test1.in
+-	-rm -rf $*.failed $(RM_ON_RUN) $(RM_ON_START)
++	-rm -rf $*.failed $(RM_ON_RUN) $(RM_ON_START) wrongtermsize
+ 	$(RUN_VIM) $*.in
+-	@/bin/sh -c "if diff test.out $*.ok; \
++	@/bin/sh -c "if test -e wrongtermsize; \
++		then echo; \
++		echo test1 FAILED - terminal size must be 80x24 or larger; \
++		echo; exit 1; \
++		elif diff test.out $*.ok; \
+ 		then mv -f test.out $*.out; \
+ 		else echo; \
+ 		echo test1 FAILED - Something basic is wrong; \
+diff -Naur vim74.orig/src/testdir/test1.in vim74/src/testdir/test1.in
+--- vim74.orig/src/testdir/test1.in	2012-04-05 14:37:37.000000000 +0000
++++ vim74/src/testdir/test1.in	2013-10-01 16:15:44.316538754 +0000
+@@ -18,6 +18,10 @@
+ Similar logic is applied to the +lua feature, using lua.vim.
+ 
+ STARTTEST
++:" If columns or lines are too small, create wrongtermsize.
++:" (Some tests will fail. When columns and/or lines are small)
++:if &lines < 24 || &columns < 80 | sp another | w! wrongtermsize | qa! | endif
++:"
+ :" Write a single line to test.out to check if testing works at all.
+ :%d
+ athis is a test:w! test.out
+diff -Naur vim74.orig/src/testdir/test20.in vim74/src/testdir/test20.in
+--- vim74.orig/src/testdir/test20.in	2010-05-15 11:04:10.000000000 +0000
++++ vim74/src/testdir/test20.in	2013-10-01 16:15:44.324538754 +0000
+@@ -9,11 +9,17 @@
+ @auY:quit!
+ GP
+ /start here$
+-jjlld
+-:/here$/,$-1w! test.out
++"by$jjlld
++/456$
++jj"bP
++:/56$/,$-1w! test.out
+ :qa!
+ ENDTEST
+ 
++123456
++234567
++345678
++
+ test text test tex start here
+ 		some text
+ 		test text
+diff -Naur vim74.orig/src/testdir/test20.ok vim74/src/testdir/test20.ok
+--- vim74.orig/src/testdir/test20.ok	2010-05-15 11:04:10.000000000 +0000
++++ vim74/src/testdir/test20.ok	2013-10-01 16:15:44.324538754 +0000
+@@ -1,3 +1,7 @@
++123start here56
++234start here67
++345start here78
++
+ test text test tex rt here
+ 		somext
+ 		tesext
+diff -Naur vim74.orig/src/testdir/test32.in vim74/src/testdir/test32.in
+--- vim74.orig/src/testdir/test32.in	2010-05-15 11:04:10.000000000 +0000
++++ vim74/src/testdir/test32.in	2013-10-01 16:15:44.332538754 +0000
+@@ -36,6 +36,9 @@
+ :w Xtest11.one
+ :w Xtest11.two
+ OIXA
++:" use CTRL-X CTRL-F to complete Xtest11.one, remove it and then use
++:" CTRL-X CTRL-F again to verify this doesn't cause trouble.
++OXddk
+ :se cpt=w
+ OST
+ :se cpt=u nohid
+diff -Naur vim74.orig/src/testdir/test44.in vim74/src/testdir/test44.in
+--- vim74.orig/src/testdir/test44.in	2013-05-26 12:16:31.000000000 +0000
++++ vim74/src/testdir/test44.in	2013-10-01 16:15:44.336538754 +0000
+@@ -1,9 +1,11 @@
+ Tests for regexp with multi-byte encoding and various magic settings.
+ Test matchstr() with a count and multi-byte chars.
++See test99 for exactly the same test with re=2.
+ 
+ STARTTEST
+ :so mbyte.vim
+ :set nocompatible encoding=utf-8 termencoding=latin1 viminfo+=nviminfo
++:set re=1
+ /^1
+ /a*b\{2}c\+/e
+ x/\Md\*e\{2}f\+/e
+diff -Naur vim74.orig/src/testdir/test64.in vim74/src/testdir/test64.in
+--- vim74.orig/src/testdir/test64.in	2013-08-01 15:45:33.000000000 +0000
++++ vim74/src/testdir/test64.in	2013-10-01 16:15:44.352538753 +0000
+@@ -289,15 +289,29 @@
+ :call add(tl, [2, '.a\%$', " a\n "])
+ :call add(tl, [2, '.a\%$', " a\n_a", "_a"])
+ :"
+-:"""" Test recognition of some character classes
+-:call add(tl, [2, '[0-9]', '8', '8'])
+-:call add(tl, [2, '[^0-9]', '8'])
+-:call add(tl, [2, '[0-9a-fA-F]*', '0a7', '0a7'])
+-:call add(tl, [2, '[^0-9A-Fa-f]\+', '0a7'])
+-:call add(tl, [2, '[a-z_A-Z0-9]\+', 'aso_sfoij', 'aso_sfoij'])
+-:call add(tl, [2, '[a-z]', 'a', 'a'])
+-:call add(tl, [2, '[a-zA-Z]', 'a', 'a'])
+-:call add(tl, [2, '[A-Z]', 'a'])
++:"""" Test recognition of character classes
++:call add(tl, [2, '[0-7]\+', 'x0123456789x', '01234567'])
++:call add(tl, [2, '[^0-7]\+', '0a;X+% 897', 'a;X+% 89'])
++:call add(tl, [2, '[0-9]\+', 'x0123456789x', '0123456789'])
++:call add(tl, [2, '[^0-9]\+', '0a;X+% 9', 'a;X+% '])
++:call add(tl, [2, '[0-9a-fA-F]\+', 'x0189abcdefg', '0189abcdef'])
++:call add(tl, [2, '[^0-9A-Fa-f]\+', '0189g;X+% ab', 'g;X+% '])
++:call add(tl, [2, '[a-z_A-Z0-9]\+', ';+aso_SfOij ', 'aso_SfOij'])
++:call add(tl, [2, '[^a-z_A-Z0-9]\+', 'aSo_;+% sfOij', ';+% '])
++:call add(tl, [2, '[a-z_A-Z]\+', '0abyz_ABYZ;', 'abyz_ABYZ'])
++:call add(tl, [2, '[^a-z_A-Z]\+', 'abAB_09;+% yzYZ', '09;+% '])
++:call add(tl, [2, '[a-z]\+', '0abcxyz1', 'abcxyz'])
++:call add(tl, [2, '[a-z]\+', 'AabxyzZ', 'abxyz'])
++:call add(tl, [2, '[^a-z]\+', 'a;X09+% x', ';X09+% '])
++:call add(tl, [2, '[^a-z]\+', 'abX0;%yz', 'X0;%'])
++:call add(tl, [2, '[a-zA-Z]\+', '0abABxzXZ9', 'abABxzXZ'])
++:call add(tl, [2, '[^a-zA-Z]\+', 'ab09_;+ XZ', '09_;+ '])
++:call add(tl, [2, '[A-Z]\+', 'aABXYZz', 'ABXYZ'])
++:call add(tl, [2, '[^A-Z]\+', 'ABx0;%YZ', 'x0;%'])
++:call add(tl, [2, '[a-z]\+\c', '0abxyzABXYZ;', 'abxyzABXYZ'])
++:call add(tl, [2, '[A-Z]\+\c', '0abABxzXZ9', 'abABxzXZ'])
++:call add(tl, [2, '\c[^a-z]\+', 'ab09_;+ XZ', '09_;+ '])
++:call add(tl, [2, '\c[^A-Z]\+', 'ab09_;+ XZ', '09_;+ '])
+ :call add(tl, [2, '\C[^A-Z]\+', 'ABCOIJDEOIFNSD jsfoij sa', ' jsfoij sa'])
+ :"
+ :"""" Tests for \z features
+@@ -314,6 +328,7 @@
+ :call add(tl, [2, 'abc \zsmatch\ze abc', 'abc abc abc match abc abc', 'match'])
+ :call add(tl, [2, '\v(a \zsif .*){2}', 'a if then a if last', 'if last', 'a if last'])
+ :call add(tl, [2, '\>\zs.', 'aword. ', '.'])
++:call add(tl, [2, '\s\+\ze\[/\|\s\zs\s\+', 'is   [a t', '  '])
+ :"
+ :"""" Tests for \@= and \& features
+ :call add(tl, [2, 'abc\@=', 'abc', 'ab'])
+@@ -358,6 +373,7 @@
+ :call add(tl, [2, '\%x20', 'yes no', ' '])
+ :call add(tl, [2, '\%u0020', 'yes no', ' '])
+ :call add(tl, [2, '\%U00000020', 'yes no', ' '])
++:call add(tl, [2, '\%d0', "yes\x0ano", "\x0a"])
+ :"
+ :""""" \%[abc]
+ :call add(tl, [2, 'foo\%[bar]', 'fobar'])
+@@ -407,9 +423,15 @@
+ :call add(tl, [2, '\(foo\)\@<=\>', 'barfoo', '', 'foo'])
+ :call add(tl, [2, '\(foo\)\@<=.*', 'foobar', 'bar', 'foo'])
+ :"
++:" complicated look-behind match
++:call add(tl, [2, '\(r\@<=\|\w\@<!\)\/', 'x = /word/;', '/'])
++:call add(tl, [2, '^[a-z]\+\ze \&\(asdf\)\@<!', 'foo bar', 'foo'])
++:"
+ :""""" \@>
+ :call add(tl, [2, '\(a*\)\@>a', 'aaaa'])
+ :call add(tl, [2, '\(a*\)\@>b', 'aaab', 'aaab', 'aaa'])
++:call add(tl, [2, '^\(.\{-}b\)\@>.', '  abcbd', '  abc', '  ab'])
++:call add(tl, [2, '\(.\{-}\)\(\)\@>$', 'abc', 'abc', 'abc', ''])
+ :" TODO: BT engine does not restore submatch after failure
+ :call add(tl, [1, '\(a*\)\@>a\|a\+', 'aaaa', 'aaaa'])
+ :"
+diff -Naur vim74.orig/src/testdir/test64.ok vim74/src/testdir/test64.ok
+--- vim74.orig/src/testdir/test64.ok	2013-08-01 16:28:56.000000000 +0000
++++ vim74/src/testdir/test64.ok	2013-10-01 16:15:44.356538753 +0000
+@@ -650,30 +650,72 @@
+ OK 0 - .a\%$
+ OK 1 - .a\%$
+ OK 2 - .a\%$
+-OK 0 - [0-9]
+-OK 1 - [0-9]
+-OK 2 - [0-9]
+-OK 0 - [^0-9]
+-OK 1 - [^0-9]
+-OK 2 - [^0-9]
+-OK 0 - [0-9a-fA-F]*
+-OK 1 - [0-9a-fA-F]*
+-OK 2 - [0-9a-fA-F]*
++OK 0 - [0-7]\+
++OK 1 - [0-7]\+
++OK 2 - [0-7]\+
++OK 0 - [^0-7]\+
++OK 1 - [^0-7]\+
++OK 2 - [^0-7]\+
++OK 0 - [0-9]\+
++OK 1 - [0-9]\+
++OK 2 - [0-9]\+
++OK 0 - [^0-9]\+
++OK 1 - [^0-9]\+
++OK 2 - [^0-9]\+
++OK 0 - [0-9a-fA-F]\+
++OK 1 - [0-9a-fA-F]\+
++OK 2 - [0-9a-fA-F]\+
+ OK 0 - [^0-9A-Fa-f]\+
+ OK 1 - [^0-9A-Fa-f]\+
+ OK 2 - [^0-9A-Fa-f]\+
+ OK 0 - [a-z_A-Z0-9]\+
+ OK 1 - [a-z_A-Z0-9]\+
+ OK 2 - [a-z_A-Z0-9]\+
+-OK 0 - [a-z]
+-OK 1 - [a-z]
+-OK 2 - [a-z]
+-OK 0 - [a-zA-Z]
+-OK 1 - [a-zA-Z]
+-OK 2 - [a-zA-Z]
+-OK 0 - [A-Z]
+-OK 1 - [A-Z]
+-OK 2 - [A-Z]
++OK 0 - [^a-z_A-Z0-9]\+
++OK 1 - [^a-z_A-Z0-9]\+
++OK 2 - [^a-z_A-Z0-9]\+
++OK 0 - [a-z_A-Z]\+
++OK 1 - [a-z_A-Z]\+
++OK 2 - [a-z_A-Z]\+
++OK 0 - [^a-z_A-Z]\+
++OK 1 - [^a-z_A-Z]\+
++OK 2 - [^a-z_A-Z]\+
++OK 0 - [a-z]\+
++OK 1 - [a-z]\+
++OK 2 - [a-z]\+
++OK 0 - [a-z]\+
++OK 1 - [a-z]\+
++OK 2 - [a-z]\+
++OK 0 - [^a-z]\+
++OK 1 - [^a-z]\+
++OK 2 - [^a-z]\+
++OK 0 - [^a-z]\+
++OK 1 - [^a-z]\+
++OK 2 - [^a-z]\+
++OK 0 - [a-zA-Z]\+
++OK 1 - [a-zA-Z]\+
++OK 2 - [a-zA-Z]\+
++OK 0 - [^a-zA-Z]\+
++OK 1 - [^a-zA-Z]\+
++OK 2 - [^a-zA-Z]\+
++OK 0 - [A-Z]\+
++OK 1 - [A-Z]\+
++OK 2 - [A-Z]\+
++OK 0 - [^A-Z]\+
++OK 1 - [^A-Z]\+
++OK 2 - [^A-Z]\+
++OK 0 - [a-z]\+\c
++OK 1 - [a-z]\+\c
++OK 2 - [a-z]\+\c
++OK 0 - [A-Z]\+\c
++OK 1 - [A-Z]\+\c
++OK 2 - [A-Z]\+\c
++OK 0 - \c[^a-z]\+
++OK 1 - \c[^a-z]\+
++OK 2 - \c[^a-z]\+
++OK 0 - \c[^A-Z]\+
++OK 1 - \c[^A-Z]\+
++OK 2 - \c[^A-Z]\+
+ OK 0 - \C[^A-Z]\+
+ OK 1 - \C[^A-Z]\+
+ OK 2 - \C[^A-Z]\+
+@@ -710,6 +752,9 @@
+ OK 0 - \>\zs.
+ OK 1 - \>\zs.
+ OK 2 - \>\zs.
++OK 0 - \s\+\ze\[/\|\s\zs\s\+
++OK 1 - \s\+\ze\[/\|\s\zs\s\+
++OK 2 - \s\+\ze\[/\|\s\zs\s\+
+ OK 0 - abc\@=
+ OK 1 - abc\@=
+ OK 2 - abc\@=
+@@ -818,6 +863,9 @@
+ OK 0 - \%U00000020
+ OK 1 - \%U00000020
+ OK 2 - \%U00000020
++OK 0 - \%d0
++OK 1 - \%d0
++OK 2 - \%d0
+ OK 0 - foo\%[bar]
+ OK 1 - foo\%[bar]
+ OK 2 - foo\%[bar]
+@@ -932,12 +980,24 @@
+ OK 0 - \(foo\)\@<=.*
+ OK 1 - \(foo\)\@<=.*
+ OK 2 - \(foo\)\@<=.*
++OK 0 - \(r\@<=\|\w\@<!\)\/
++OK 1 - \(r\@<=\|\w\@<!\)\/
++OK 2 - \(r\@<=\|\w\@<!\)\/
++OK 0 - ^[a-z]\+\ze \&\(asdf\)\@<!
++OK 1 - ^[a-z]\+\ze \&\(asdf\)\@<!
++OK 2 - ^[a-z]\+\ze \&\(asdf\)\@<!
+ OK 0 - \(a*\)\@>a
+ OK 1 - \(a*\)\@>a
+ OK 2 - \(a*\)\@>a
+ OK 0 - \(a*\)\@>b
+ OK 1 - \(a*\)\@>b
+ OK 2 - \(a*\)\@>b
++OK 0 - ^\(.\{-}b\)\@>.
++OK 1 - ^\(.\{-}b\)\@>.
++OK 2 - ^\(.\{-}b\)\@>.
++OK 0 - \(.\{-}\)\(\)\@>$
++OK 1 - \(.\{-}\)\(\)\@>$
++OK 2 - \(.\{-}\)\(\)\@>$
+ OK 0 - \(a*\)\@>a\|a\+
+ OK 2 - \(a*\)\@>a\|a\+
+ OK 0 - \_[^8-9]\+
+diff -Naur vim74.orig/src/testdir/test80.in vim74/src/testdir/test80.in
+--- vim74.orig/src/testdir/test80.in	2013-03-19 16:30:51.000000000 +0000
++++ vim74/src/testdir/test80.in	2013-10-01 16:15:44.368538753 +0000
+@@ -142,6 +142,8 @@
+ :$put =\"\n\nTEST_7:\"
+ :$put =substitute('A
+A', 'A.', '\=submatch(0)', '')
+ :$put =substitute(\"B\nB\", 'B.', '\=submatch(0)', '')
++:$put =substitute('-bb', '\zeb', 'a', 'g')
++:$put =substitute('-bb', '\ze', 'c', 'g')
+ /^TEST_8
+ ENDTEST
+ 
+diff -Naur vim74.orig/src/testdir/test80.ok vim74/src/testdir/test80.ok
+--- vim74.orig/src/testdir/test80.ok	2013-03-19 16:31:45.000000000 +0000
++++ vim74/src/testdir/test80.ok	2013-10-01 16:15:44.368538753 +0000
+@@ -103,6 +103,8 @@
+ A
+A
+ B
+ B
++-abab
++c-cbcbc
+ 
+ 
+ TEST_8:
+diff -Naur vim74.orig/src/testdir/test92.in vim74/src/testdir/test92.in
+--- vim74.orig/src/testdir/test92.in	2013-04-18 21:33:45.000000000 +0000
++++ vim74/src/testdir/test92.in	2013-10-01 16:15:44.376538753 +0000
+@@ -33,7 +33,7 @@
+ :mksession! test.out
+ :new test.out
+ :v/\(^ *normal! 0\|^ *exe 'normal!\)/d
+-:w
++:w! test.out
+ :qa!
+ ENDTEST
+ 
+diff -Naur vim74.orig/src/testdir/test93.in vim74/src/testdir/test93.in
+--- vim74.orig/src/testdir/test93.in	2013-02-26 16:13:01.000000000 +0000
++++ vim74/src/testdir/test93.in	2013-10-01 16:15:44.380538753 +0000
+@@ -33,7 +33,7 @@
+ :mksession! test.out
+ :new test.out
+ :v/\(^ *normal! 0\|^ *exe 'normal!\)/d
+-:w
++:w! test.out
+ :qa!
+ ENDTEST
+ 
+diff -Naur vim74.orig/src/testdir/test99.in vim74/src/testdir/test99.in
+--- vim74.orig/src/testdir/test99.in	1970-01-01 00:00:00.000000000 +0000
++++ vim74/src/testdir/test99.in	2013-10-01 16:15:44.384538752 +0000
+@@ -0,0 +1,68 @@
++Tests for regexp with multi-byte encoding and various magic settings.
++Test matchstr() with a count and multi-byte chars.
++See test44 for exactly the same test with re=1.
++
++STARTTEST
++:so mbyte.vim
++:set nocompatible encoding=utf-8 termencoding=latin1 viminfo+=nviminfo
++:set re=2
++/^1
++/a*b\{2}c\+/e
++x/\Md\*e\{2}f\+/e
++x:set nomagic
++/g\*h\{2}i\+/e
++x/\mj*k\{2}l\+/e
++x/\vm*n{2}o+/e
++x/\V^aa$
++x:set magic
++/\v(a)(b)\2\1\1/e
++x/\V[ab]\(\[xy]\)\1
++x:" Now search for multi-byte without composing char
++/àž¡
++x:" Now search for multi-byte with composing char
++/àž¡à¹
++x:" find word by change of word class
++/ã¡\<ã«ãš\>ã¯
++x:" Test \%u, [\u] and friends
++/\%u20ac
++x/[\u4f7f\u5929]\+
++x/\%U12345678
++x/[\U1234abcd\u1234\uabcd]
++x/\%d21879b
++x/ [[=A=]]* [[=B=]]* [[=C=]]* [[=D=]]* [[=E=]]* [[=F=]]* [[=G=]]* [[=H=]]* [[=I=]]* [[=J=]]* [[=K=]]* [[=L=]]* [[=M=]]* [[=N=]]* [[=O=]]* [[=P=]]* [[=Q=]]* [[=R=]]* [[=S=]]* [[=T=]]* [[=U=]]* [[=V=]]* [[=W=]]* [[=X=]]* [[=Y=]]* [[=Z=]]*/e
++x/ [[=a=]]* [[=b=]]* [[=c=]]* [[=d=]]* [[=e=]]* [[=f=]]* [[=g=]]* [[=h=]]* [[=i=]]* [[=j=]]* [[=k=]]* [[=l=]]* [[=m=]]* [[=n=]]* [[=o=]]* [[=p=]]* [[=q=]]* [[=r=]]* [[=s=]]* [[=t=]]* [[=u=]]* [[=v=]]* [[=w=]]* [[=x=]]* [[=y=]]* [[=z=]]*/e
++x:" Test backwards search from a multi-byte char
++/x
++x?.
++x:let @w=':%s#comb[i]nations#ÅÌá¹£ÌmÌ¥ÌÎ±ÌÌÌ#g'
++:@w
++:?^1?,$w! test.out
++:e! test.out
++G:put =matchstr(\"××××\", \".\", 0, 2) " ×
++:put =matchstr(\"××××\", \"..\", 0, 2) " ××
++:put =matchstr(\"××××\", \".\", 0, 0) " ×
++:put =matchstr(\"××××\", \".\", 4, -1) " ×
++:w!
++:qa!
++ENDTEST
++
++1 a aa abb abbccc
++2 d dd dee deefff
++3 g gg ghh ghhiii
++4 j jj jkk jkklll
++5 m mm mnn mnnooo
++6 x ^aa$ x
++7 (a)(b) abbaa
++8 axx [ab]xx
++9 àž«àž¡à¹x àž­àž¡x
++a àž­àž¡x àž«àž¡à¹x
++b ã¡ã«ãšã¯
++c x Â¬â¬x
++d å€©äœ¿x
++e ü
+žy
++f ü¯z
++g aå·bb
++h AÃÃÃÃÃÃ
+ÄÄÄÇÇÇ áº¢ Bážáž CÃÄÄÄÄ DÄÄážážáž EÃÃÃÃÄÄÄÄÄáººáºŒ Fáž GÄÄÄ Ä¢Ç€ÇŠÇŽáž  HÄ€ÄŠáž¢ážŠážš IÃÃÃÃÄšÄªÄ¬Ä®Ä°Çá» JÄŽ KÄ¶Çšáž°ážŽ LÄ¹Ä»ÄœÄ¿Åážº MážŸá¹ NÃÅÅ
+Åá¹á¹ OÃÃÃÃÃÃÅÅÅÆ ÇÇªÇ¬á» Pá¹á¹ Q RÅÅÅá¹á¹ SÅÅÅÅ á¹  TÅ¢Å€ÅŠá¹ªá¹® UÃÃÃÃÅšÅªÅ¬Å®Å°Å²Æ¯Çá»Š Vá¹Œ WÅŽáºáºáºáº Xáºáº YÃÅ¶Åžáºá»²á»¶á»ž ZÅ¹Å»ÅœÆµáºáº
++i aÃ Ã¡Ã¢Ã£Ã€Ã¥ÄÄÄ
+ÇÇÇ¡áº£ bážáž cÃ§ÄÄÄÄ dÄÄážážáž eÃšÃ©ÃªÃ«ÄÄÄÄÄáº»áºœ fáž gÄÄÄ¡Ä£Ç¥Ç§Çµáž¡ hÄ¥Ä§áž£áž§áž©áº iÃ¬Ã­Ã®Ã¯Ä©Ä«Ä­Ä¯Çá» jÄµÇ° kÄ·Ç©áž±ážµ lÄºÄŒÄŸÅÅáž» máž¿á¹ nÃ±ÅÅÅÅá¹
+á¹ oÃ²Ã³ÃŽÃµÃ¶ÃžÅÅÅÆ¡ÇÇ«Ç­á» pá¹á¹ q rÅÅÅá¹á¹ sÅÅÅÅ¡á¹¡ tÅ£Å¥Å§á¹«á¹¯áº uÃ¹ÃºÃ»ÃŒÅ©Å«Å­Å¯Å±Å³Æ°Çá»§ vá¹œ wÅµáºáºáº
+áºáº xáºáº yÃœÃ¿Å·áºáºá»³á»·á»¹ zÅºÅŒÅŸÆ¶áºáº
++j 0123â€x
++k combinations
+diff -Naur vim74.orig/src/testdir/test99.ok vim74/src/testdir/test99.ok
+--- vim74.orig/src/testdir/test99.ok	1970-01-01 00:00:00.000000000 +0000
++++ vim74/src/testdir/test99.ok	2013-10-01 16:15:44.384538752 +0000
+@@ -0,0 +1,24 @@
++1 a aa abb abbcc
++2 d dd dee deeff
++3 g gg ghh ghhii
++4 j jj jkk jkkll
++5 m mm mnn mnnoo
++6 x aa$ x
++7 (a)(b) abba
++8 axx ab]xx
++9 àž«àž¡à¹x àž­x
++a àž­àž¡x àž«x
++b ã«ãšã¯
++c x Â¬x
++d äœ¿x
++e y
++f z
++g abb
++h AÃÃÃÃÃÃ
+ÄÄÄÇÇÇ áº¢ Bážáž CÃÄÄÄÄ DÄÄážážáž EÃÃÃÃÄÄÄÄÄáººáºŒ Fáž GÄÄÄ Ä¢Ç€ÇŠÇŽáž  HÄ€ÄŠáž¢ážŠážš IÃÃÃÃÄšÄªÄ¬Ä®Ä°Çá» JÄŽ KÄ¶Çšáž°ážŽ LÄ¹Ä»ÄœÄ¿Åážº MážŸá¹ NÃÅÅ
+Åá¹á¹ OÃÃÃÃÃÃÅÅÅÆ ÇÇªÇ¬á» Pá¹á¹ Q RÅÅÅá¹á¹ SÅÅÅÅ á¹  TÅ¢Å€ÅŠá¹ªá¹® UÃÃÃÃÅšÅªÅ¬Å®Å°Å²Æ¯Çá»Š Vá¹Œ WÅŽáºáºáºáº Xáºáº YÃÅ¶Åžáºá»²á»¶á»ž ZÅ¹Å»ÅœÆµáº
++i aÃ Ã¡Ã¢Ã£Ã€Ã¥ÄÄÄ
+ÇÇÇ¡áº£ bážáž cÃ§ÄÄÄÄ dÄÄážážáž eÃšÃ©ÃªÃ«ÄÄÄÄÄáº»áºœ fáž gÄÄÄ¡Ä£Ç¥Ç§Çµáž¡ hÄ¥Ä§áž£áž§áž©áº iÃ¬Ã­Ã®Ã¯Ä©Ä«Ä­Ä¯Çá» jÄµÇ° kÄ·Ç©áž±ážµ lÄºÄŒÄŸÅÅáž» máž¿á¹ nÃ±ÅÅÅÅá¹
+á¹ oÃ²Ã³ÃŽÃµÃ¶ÃžÅÅÅÆ¡ÇÇ«Ç­á» pá¹á¹ q rÅÅÅá¹á¹ sÅÅÅÅ¡á¹¡ tÅ£Å¥Å§á¹«á¹¯áº uÃ¹ÃºÃ»ÃŒÅ©Å«Å­Å¯Å±Å³Æ°Çá»§ vá¹œ wÅµáºáºáº
+áºáº xáºáº yÃœÃ¿Å·áºáºá»³á»·á»¹ zÅºÅŒÅŸÆ¶áº
++j 012â€
++k ÅÌá¹£ÌmÌ¥ÌÎ±ÌÌÌ
++×
++××
++×
++×
+diff -Naur vim74.orig/src/undo.c vim74/src/undo.c
+--- vim74.orig/src/undo.c	2013-06-10 18:13:37.000000000 +0000
++++ vim74/src/undo.c	2013-10-01 16:15:44.388538752 +0000
+@@ -1604,10 +1604,11 @@
+ 
+ #ifdef UNIX
+ 	/* For safety we only read an undo file if the owner is equal to the
+-	 * owner of the text file. */
++	 * owner of the text file or equal to the current user. */
+ 	if (mch_stat((char *)orig_name, &st_orig) >= 0
+ 		&& mch_stat((char *)file_name, &st_undo) >= 0
+-		&& st_orig.st_uid != st_undo.st_uid)
++		&& st_orig.st_uid != st_undo.st_uid
++		&& st_undo.st_uid != getuid())
+ 	{
+ 	    if (p_verbose > 0)
+ 	    {
+diff -Naur vim74.orig/src/version.c vim74/src/version.c
+--- vim74.orig/src/version.c	2013-08-10 11:29:20.000000000 +0000
++++ vim74/src/version.c	2013-10-01 16:15:44.388538752 +0000
+@@ -60,6 +60,11 @@
+ 
+ static char *(features[]) =
+ {
++#ifdef HAVE_ACL
++	"+acl",
++#else
++	"-acl",
++#endif
+ #ifdef AMIGA		/* only for Amiga systems */
+ # ifdef FEAT_ARP
+ 	"+ARP",
+@@ -721,6 +726,12 @@
+ # else
+ 	"-xpm_w32",
+ # endif
++#else
++# ifdef HAVE_XPM
++	"+xpm",
++# else
++	"-xpm",
++# endif
+ #endif
+ 	NULL
+ };
+@@ -728,6 +739,96 @@
+ static int included_patches[] =
+ {   /* Add new patch number below this line */
+ /**/
++    45,
++/**/
++    44,
++/**/
++    43,
++/**/
++    42,
++/**/
++    41,
++/**/
++    40,
++/**/
++    39,
++/**/
++    38,
++/**/
++    37,
++/**/
++    36,
++/**/
++    35,
++/**/
++    34,
++/**/
++    33,
++/**/
++    32,
++/**/
++    31,
++/**/
++    30,
++/**/
++    29,
++/**/
++    28,
++/**/
++    27,
++/**/
++    26,
++/**/
++    25,
++/**/
++    24,
++/**/
++    23,
++/**/
++    22,
++/**/
++    21,
++/**/
++    20,
++/**/
++    19,
++/**/
++    18,
++/**/
++    17,
++/**/
++    16,
++/**/
++    15,
++/**/
++    14,
++/**/
++    13,
++/**/
++    12,
++/**/
++    11,
++/**/
++    10,
++/**/
++    9,
++/**/
++    8,
++/**/
++    7,
++/**/
++    6,
++/**/
++    5,
++/**/
++    4,
++/**/
++    3,
++/**/
++    2,
++/**/
++    1,
++/**/
+     0
+ };
+ 
+diff -Naur vim74.orig/src/window.c vim74/src/window.c
+--- vim74.orig/src/window.c	2013-07-24 15:38:29.000000000 +0000
++++ vim74/src/window.c	2013-10-01 16:15:44.396538752 +0000
+@@ -2172,8 +2172,9 @@
+  * If "free_buf" is TRUE related buffer may be unloaded.
+  *
+  * Called by :quit, :close, :xit, :wq and findtag().
++ * Returns FAIL when the window was not closed.
+  */
+-    void
++    int
+ win_close(win, free_buf)
+     win_T	*win;
+     int		free_buf;
+@@ -2190,21 +2191,21 @@
+     if (last_window())
+     {
+ 	EMSG(_("E444: Cannot close last window"));
+-	return;
++	return FAIL;
+     }
+ 
+ #ifdef FEAT_AUTOCMD
+     if (win->w_closing || (win->w_buffer != NULL && win->w_buffer->b_closing))
+-	return; /* window is already being closed */
++	return FAIL; /* window is already being closed */
+     if (win == aucmd_win)
+     {
+ 	EMSG(_("E813: Cannot close autocmd window"));
+-	return;
++	return FAIL;
+     }
+     if ((firstwin == aucmd_win || lastwin == aucmd_win) && one_window())
+     {
+ 	EMSG(_("E814: Cannot close window, only autocmd window would remain"));
+-	return;
++	return FAIL;
+     }
+ #endif
+ 
+@@ -2212,7 +2213,7 @@
+      * and then close the window and the tab page to avoid that curwin and
+      * curtab are invalid while we are freeing memory. */
+     if (close_last_window_tabpage(win, free_buf, prev_curtab))
+-      return;
++      return FAIL;
+ 
+     /* When closing the help window, try restoring a snapshot after closing
+      * the window.  Otherwise clear the snapshot, it's now invalid. */
+@@ -2240,22 +2241,22 @@
+ 	    win->w_closing = TRUE;
+ 	    apply_autocmds(EVENT_BUFLEAVE, NULL, NULL, FALSE, curbuf);
+ 	    if (!win_valid(win))
+-		return;
++		return FAIL;
+ 	    win->w_closing = FALSE;
+ 	    if (last_window())
+-		return;
++		return FAIL;
+ 	}
+ 	win->w_closing = TRUE;
+ 	apply_autocmds(EVENT_WINLEAVE, NULL, NULL, FALSE, curbuf);
+ 	if (!win_valid(win))
+-	    return;
++	    return FAIL;
+ 	win->w_closing = FALSE;
+ 	if (last_window())
+-	    return;
++	    return FAIL;
+ # ifdef FEAT_EVAL
+ 	/* autocmds may abort script processing */
+ 	if (aborting())
+-	    return;
++	    return FAIL;
+ # endif
+     }
+ #endif
+@@ -2303,7 +2304,7 @@
+      * other window or moved to another tab page. */
+     else if (!win_valid(win) || last_window() || curtab != prev_curtab
+ 	    || close_last_window_tabpage(win, free_buf, prev_curtab))
+-	return;
++	return FAIL;
+ 
+     /* Free the memory used for the window and get the window that received
+      * the screen space. */
+@@ -2383,6 +2384,7 @@
+ #endif
+ 
+     redraw_all_later(NOT_VALID);
++    return OK;
+ }
+ 
+ /*
+diff -Naur vim74.orig/src/xxd/Make_cyg.mak vim74/src/xxd/Make_cyg.mak
+--- vim74.orig/src/xxd/Make_cyg.mak	2010-05-15 11:04:06.000000000 +0000
++++ vim74/src/xxd/Make_cyg.mak	2013-10-01 16:15:44.408538752 +0000
+@@ -8,7 +8,7 @@
+ DEFINES =
+ LIBS    = -lc
+ else
+-DEFINES = -mno-cygwin
++DEFINES =
+ LIBS    =
+ endif
+ 
