Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Side by Side Diff: third_party/WebKit/LayoutTests/media/sources-fallback-codecs.html

Issue 2121383005: Convert video-playback* and sources-fallback* tests to testharness.js (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase and address comments Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <title>Test that fallback among codecs is done correctly regardless of their ord er.</title>
3 <head> 3 <script src="../resources/testharness.js"></script>
4 <!-- TODO(foolip): Convert test to testharness.js. crbug.com/588956 4 <script src="../resources/testharnessreport.js"></script>
5 (Please avoid writing new tests using video-test.js) --> 5 <script>
6 <script src=video-test.js></script> 6 // This could be made far more general, testing all permutations of
7 <script> 7 // (audio|video)Codecs and so on, but in reality we only have these 4
8 var canPlayThroughCount = 0; 8 // test files, so simply enumerating them manually and testing they
9 function onCanPlayThrough() { 9 // all hit canplaythrough is good enough. Someday when many more
10 if (++canPlayThroughCount == document.getElementsByTagName('vide o').length + document.getElementsByTagName('audio').length) { 10 // files are present, consider generalizing this.
11 endTest();
12 return;
13 }
14 }
15 function onError(e) {
16 var type = e.target.type;
17 if (!type) {
18 var src = e.target.src;
19 var semicolon;
20 if ((src.substr(0,5) == "data:") && ((semicolon = src.substr (5).indexOf(';')) > 0))
21 type = src.substr(5).substr(0, semicolon);
22 if (!type) {
23 failTest("Couldn't find type");
24 return;
25 }
26 }
27 11
28 if (e.target.tagName == 'SOURCE' && !e.target.parentNode.canPlay Type(type)) { 12 // The base64'd data below was generated from the corresponding content/test.{mp 4,ogv}files with:
29 // Expected error; ignore. 13 // rm -f test-frame.ogv test-frame.mp4 and
30 return; 14 // ~/tmp/ffmpeg/ffmpeg -i test.mp4 -an -vframes 1 test-frame.png and
31 } 15 // pngtopnm test-frame.png > test-frame.pnm && pnmscale 0.25 test-frame.pnm|pnmt opng > test-frame.png and
32 var id = (e.target.tagName == 'SOURCE' ? e.target.parentNode.id : e.target.id); 16 // ~/tmp/ffmpeg/ffmpeg -i test-frame.png -an -vframes 1 -s 80x60 test-frame.mp4 and
33 failTest("tag: " + e.target.tagName + ", id: " + id + ", src: " + e.target.src); 17 // ffmpeg2theora test-frame.mp4 -o test-frame.ogv && rm test-frame.png test-fram e.pnm
34 } 18 // Followed by [base64 -w 120 test-frame.ogv] and [base64 -w 120 test-frame.mp4] .
35 </script> 19 var mp4DataSrc = "data:video/mp4;base64,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 AQAAAABMYXZmNTQuMC4xMDA=";
36 </head>
37 <body>
38 Test that fallback among codecs is done correctly regardless of their or der.
39 <!-- This could be made far more general, testing all permutations of
40 (audio|video)Codecs and so on, but in reality we only have these 4
41 test files, so simply enumerating them manually and testing they
42 all hit canplaythrough is good enough. Someday when many more
43 files are present, consider generalizing this.
44 -->
45 20
46 <video id='v1' controls oncanplaythrough='onCanPlayThrough()' onerror='o nError(event)'> 21 var ogvDataSrc = "data:video/ogg;base64,T2dnUwACAAAAAAAAAABDt3UdAAAAAG1FPOwBQGZp c2hlYWQAAwAAAAAAAAAAAAAA6AMAAAAAAAAAAAAAAAAAAOgDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AABPZ2dTAAIAAAAAAAAAAKK34ysAAAAAwlsClQEqgHRoZW9yYQMCAQAFAAQAAFAAADwABAAAABkAAAAB AAABAAABAgAAAIDAT2dnUwAAAAAAAAAAAABDt3UdAQAAAFp3fKUBUGZpc2JvbmUALAAAAKK34ysDAAAA GQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAYAAABDb250ZW50LVR5cGU6IHZpZGVvL3RoZW9yYQ0K T2dnUwAAAAAAAAAAAACit+MrAQAAAHoeC5AOWP///////////////5CBdGhlb3JhKwAAAFhpcGguT3Jn IGxpYnRoZW9yYSAxLjEgMjAwOTA4MjIgKFRodXNuZWxkYSkBAAAAGgAAAEVOQ09ERVI9ZmZtcGVnMnRo ZW9yYS0wLjI0gnRoZW9yYb7NKPe5zWsYtalJShBznOYxjFKUpCEIMYxiEIQhCEAAAAAAAAAAAAARba5T Z5LI/FYS/Hg5W2zmKvVoq1QoEykkWhD+eTmbjWZTCXiyVSmTiSSCGQh8PB2OBqNBgLxWKhQJBGIhCHw8 HAyGAsFAiDgVFtrlNnksj8VhL8eDlbbOYq9WirVCgTKSRaEP55OZuNZlMJeLJVKZOJJIIZCHw8HY4Go0 GAvFYqFAkEYiEIfDwcDIYCwUCIOBQLDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw 8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8MDA8SFBQVDQ0OERIVFRQODg8SFBUVFQ4QERMUFRUVEB EUFRUVFRUSExQVFRUVFRQVFRUVFRUVFRUVFRUVFRUQDAsQFBkbHA0NDhIVHBwbDg0QFBkcHBwOEBMWGx 0dHBETGRwcHh4dFBgbHB0eHh0bHB0dHh4eHh0dHR0eHh4dEAsKEBgoMz0MDA4TGjo8Nw4NEBgoOUU4Dh EWHTNXUD4SFiU6RG1nTRgjN0BRaHFcMUBOV2d5eGVIXF9icGRnYxMTExMTExMTExMTExMTExMTExMTEx MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMSEhUZGhoaGhIUFhoaGhoaFR YZGhoaGhoZGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaERIWHyQkJCQSFBgiJC QkJBYYISQkJCQkHyIkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJBESGC9jY2NjEh UaQmNjY2MYGjhjY2NjYy9CY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2MVFRUVFR UVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVEh ISFRcYGRsSEhUXGBkbHBIVFxgZGxwdFRcYGRscHR0XGBkbHB0dHRgZGxwdHR0eGRscHR0dHh4bHB0dHR 4eHhERERQXGhwgEREUFxocICIRFBcaHCAiJRQXGhwgIiUlFxocICIlJSUaHCAiJSUlKRwgIiUlJSkqIC IlJSUpKioQEBAUGBwgKBAQFBgcICgwEBQYHCAoMEAUGBwgKDBAQBgcICgwQEBAHCAoMEBAQGAgKDBAQE BggCgwQEBAYICAB8Xlx0fV7c7D8vrrAaZid8hRvB1RN7csxFuo43wH7lEkS9wbGS+tVSNMyuxdiECcjB 7R1Ml85htasNjKpSvPt3D8k7iGmZXYuxBC+RR4arUGxkvH5y7mJXR7R5Jwn3VUhBiuap91VIrsaCM5TS g9o867khwMrWY2+cP4rwvBLzt/wnHaYe0edSRMYC6tZmU1BrvhktIUf2gXoU8bHMuyNA7lB7R51ym213 sFcFKowIviT/i0Wscg+4RDubX+4haRsMxZWgN05K5FD3bzqS9VSVCPM4TpWs2C43ihFdgaSByeKHu3Xf /2TG8tgpB7PAtOs7jixWYw+Ayo5GjUTSybX/1KW52RxYfB8nBNLJtHgt4DPq6BZWBFpjyZX/1KW5Ca0e vOwG1EX/A9j5fQm5hOz6W2CtcCaWTXTFAeZO71VIgCTX69y9TiaXag3Os2ES1DcLKw0/xR5HfnCqkpQF 0Z1kxKNfhZWLycml2keduHMQh3HubB/pbUUoCK5wxetZRZWPJF/bdyE21H2YjMOhP/pkthqKUCOEWVm6 8+1J5n7ahES5sOhaZPdOC5j4kc91FVIsrF8ofe+A2on/16Z4RiKQZcMU3NouO9N4YAvrWaiA6h4bfLqh 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";
47 <source onerror='onError(event)' type="video/mp4" src="content/test. mp4"/>
48 <source onerror='onError(event)' type="video/ogg" src="content/test. ogv"/>
49 </video>
50 22
51 <video id='v2' controls oncanplaythrough='onCanPlayThrough()' onerror='o nError(event)'> 23 var testInfo = [
52 <source onerror='onError(event)' type="video/ogg" src="content/test. ogv"/> 24 { element: "video", typeArray: ["video/mp4", "video/ogg"], srcArray: ["conte nt/test.mp4", "content/test.ogv"], description: "Test video with ['video/mp4', ' video/ogg']" },
53 <source onerror='onError(event)' type="video/mp4" src="content/test. mp4"/> 25 { element: "video", typeArray: ["video/ogg", "video/mp4"], srcArray: ["conte nt/test.ogv", "content/test.mp4"], description: "Test video with ['video/ogg', ' video/mp4']" },
54 </video> 26 { element: "audio", typeArray: ["audio/wav", "audio/ogg"], srcArray: ["conte nt/test.wav", "content/test.oga"], description: "Test audio with ['audio/wav', ' audio/ogg']" },
27 { element: "audio", typeArray: ["audio/ogg", "audio/wav"], srcArray: ["conte nt/test.oga", "content/test.wav"], description: "Test audio with ['audio/ogg', ' audio/wav']" },
28 { element: "video", srcArray: [mp4DataSrc, ogvDataSrc], description: "Test v ideo with ['data:video/mp4;base64', 'data:video/ogg;base64']" },
29 { element: "video", srcArray: [ogvDataSrc, mp4DataSrc], description: "Test v ideo with ['data:video/ogg;base64', 'data:video/mp4;base64']" }
30 ];
55 31
56 <audio id='a1' controls oncanplaythrough='onCanPlayThrough()' onerror='o nError(event)'> 32 testInfo.forEach(function(test) {
57 <source onerror='onError(event)' type="audio/wav" src="content/test. wav"/> 33 async_test(function(t) {
58 <source onerror='onError(event)' type="audio/ogg" src="content/test. oga"/> 34 var media = document.createElement(test.element);
59 </audio> 35 for (var i = 0; i < test.srcArray.length; i++) {
60 36 var source = document.createElement("source");
61 <audio id='a2' controls oncanplaythrough='onCanPlayThrough()' onerror='o nError(event)'> 37 if (test.typeArray)
62 <source onerror='onError(event)' type="audio/ogg" src="content/test. oga"/> 38 source.type = test.typeArray[i];
63 <source onerror='onError(event)' type="audio/wav" src="content/test. wav"/> 39 source.src = test.srcArray[i];
64 </audio> 40 media.appendChild(source);
65 41 }
66 <!-- The base64'd data below was generated from the corresponding conten t/test.{mp4,ogv} files with: 42 media.oncanplaythrough = t.step_func_done();
67 rm -f test-frame.ogv test-frame.mp4 && \ 43 }, test.description);
68 ~/tmp/ffmpeg/ffmpeg -i test.mp4 -an -vframes 1 test-frame.png && \ 44 });
69 pngtopnm test-frame.png > test-frame.pnm && pnmscale 0.25 test-fr ame.pnm|pnmtopng > test-frame.png && \ 45 </script>
70 ~/tmp/ffmpeg/ffmpeg -i test-frame.png -an -vframes 1 -s 80x60 tes t-frame.mp4 && \
71 ffmpeg2theora test-frame.mp4 -o test-frame.ogv && rm test-frame.p ng test-frame.pnm
72 Followed by [base64 -w 120 test-frame.ogv] and [base64 -w 120 test- frame.mp4].
73 -->
74 <video id="v3" controls oncanplaythrough='onCanPlayThrough()' onerror='o nError(event)'>
75 <source onerror='onError(event)'
76 src="data:video/mp4;base64,
77 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
108 AQAAAABMYXZmNTQuMC4xMDA="/>
109 <source onerror='onError(event)'
110 src="data:video/ogg;base64,
111 T2dnUwACAAAAAAAAAABDt3UdAAAAAG1FPOwBQGZpc2hlYWQAAwAAAAAAAAAAAAAA6AMAAAAAAAAAAAAA AAAAAOgDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
112 AABPZ2dTAAIAAAAAAAAAAKK34ysAAAAAwlsClQEqgHRoZW9yYQMCAQAFAAQAAFAAADwABAAAABkAAAAB AAABAAABAgAAAIDAT2dnUwAAAAAAAAAAAABDt3Ud
113 AQAAAFp3fKUBUGZpc2JvbmUALAAAAKK34ysDAAAAGQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAYA AABDb250ZW50LVR5cGU6IHZpZGVvL3RoZW9yYQ0K
114 T2dnUwAAAAAAAAAAAACit+MrAQAAAHoeC5AOWP///////////////5CBdGhlb3JhKwAAAFhpcGguT3Jn IGxpYnRoZW9yYSAxLjEgMjAwOTA4MjIgKFRodXNu
115 ZWxkYSkBAAAAGgAAAEVOQ09ERVI9ZmZtcGVnMnRoZW9yYS0wLjI0gnRoZW9yYb7NKPe5zWsYtalJShBz nOYxjFKUpCEIMYxiEIQhCEAAAAAAAAAAAAARba5T
116 Z5LI/FYS/Hg5W2zmKvVoq1QoEykkWhD+eTmbjWZTCXiyVSmTiSSCGQh8PB2OBqNBgLxWKhQJBGIhCHw8 HAyGAsFAiDgVFtrlNnksj8VhL8eDlbbOYq9WirVC
117 gTKSRaEP55OZuNZlMJeLJVKZOJJIIZCHw8HY4Go0GAvFYqFAkEYiEIfDwcDIYCwUCIOBQLDw8PDw8PDw 8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw
118 8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8MDA8SFBQVDQ0OERIVFRQODg8SFBUVFQ4QERMUFRUVEB EUFRUVFRUSExQVFRUVFRQVFRUVFRUVFRUVFRUVFR
119 UQDAsQFBkbHA0NDhIVHBwbDg0QFBkcHBwOEBMWGx0dHBETGRwcHh4dFBgbHB0eHh0bHB0dHh4eHh0dHR 0eHh4dEAsKEBgoMz0MDA4TGjo8Nw4NEBgoOUU4Dh
120 EWHTNXUD4SFiU6RG1nTRgjN0BRaHFcMUBOV2d5eGVIXF9icGRnYxMTExMTExMTExMTExMTExMTExMTEx MTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
121 MTExMTExMTExMTExMSEhUZGhoaGhIUFhoaGhoaFRYZGhoaGhoZGhoaGhoaGhoaGhoaGhoaGhoaGhoaGh oaGhoaGhoaGhoaGhoaGhoaERIWHyQkJCQSFBgiJC
122 QkJBYYISQkJCQkHyIkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJBESGC9jY2NjEh UaQmNjY2MYGjhjY2NjYy9CY2NjY2NjY2NjY2NjY2
123 NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2MVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFR UVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVEh
124 ISFRcYGRsSEhUXGBkbHBIVFxgZGxwdFRcYGRscHR0XGBkbHB0dHRgZGxwdHR0eGRscHR0dHh4bHB0dHR 4eHhERERQXGhwgEREUFxocICIRFBcaHCAiJRQXGh
125 wgIiUlFxocICIlJSUaHCAiJSUlKRwgIiUlJSkqICIlJSUpKioQEBAUGBwgKBAQFBgcICgwEBQYHCAoME AUGBwgKDBAQBgcICgwQEBAHCAoMEBAQGAgKDBAQE
126 BggCgwQEBAYICAB8Xlx0fV7c7D8vrrAaZid8hRvB1RN7csxFuo43wH7lEkS9wbGS+tVSNMyuxdiECcjB 7R1Ml85htasNjKpSvPt3D8k7iGmZXYuxBC+RR4ar
127 UGxkvH5y7mJXR7R5Jwn3VUhBiuap91VIrsaCM5TSg9o867khwMrWY2+cP4rwvBLzt/wnHaYe0edSRMYC 6tZmU1BrvhktIUf2gXoU8bHMuyNA7lB7R51ym213
128 sFcFKowIviT/i0Wscg+4RDubX+4haRsMxZWgN05K5FD3bzqS9VSVCPM4TpWs2C43ihFdgaSByeKHu3Xf /2TG8tgpB7PAtOs7jixWYw+Ayo5GjUTSybX/1KW5
129 2RxYfB8nBNLJtHgt4DPq6BZWBFpjyZX/1KW5Ca0evOwG1EX/A9j5fQm5hOz6W2CtcCaWTXTFAeZO71VI gCTX69y9TiaXag3Os2ES1DcLKw0/xR5HfnCqkpQF
130 0Z1kxKNfhZWLycml2keduHMQh3HubB/pbUUoCK5wxetZRZWPJF/bdyE21H2YjMOhP/pkthqKUCOEWVm6 8+1J5n7ahES5sOhaZPdOC5j4kc91FVIsrF8ofe+A
131 2on/16Z4RiKQZcMU3NouO9N4YAvrWaiA6h4bfLqhTitbnnJ2iPSVRNJH+aZGE+YXzq7Ah/OncW2K59AK amlocOUYTSvaJPNcjDfMGrmG9pOV2MbgI9v3B3EC
132 Z7RLJ51UpzMn0C1huA87Ngom9lkiaw3t5yvFZmDl1HpkuP+PiqlawgD69jAT5Nxr2i6cwiytcwHhK2KJ vZI9C1m/4VUil8RvO/ydxmgsFdzdgGpMbUeyyRNO
133 i1k5hMb6hVSMuTrOE/xuDhGExQ219l07sV2kG5fOEnkWHwgqUkbvC0P2KTytY4nHLqJDc3DMGlDbX2aX K/4UuJxizaIkZITS7a3HN5374PrVlYKIcP9xl1BU
134 KqQ7aAml2k1o5uGcN8A+tPz1HF1YVnmE7cyx4FIiUA2ml1k0hX9HB7l4tMO+R9YrMWcf5Anub1BZXUp3 Ce4jBM21l0kyhcF/vg6FGeHa345MYv4BVSciTJhj
135 5AbuD2K0dfIXc4jKAbazaS53rv1lYqpIVr2fcgcPox4u/WVnRfJ25GGING2s2cqjKIVUtwGbRtrljLd9 CQOHhewUTfiKxWk7Olr2dHyIKlLgejEbasmmdGF/
136 dhuhVrU9xGi6Hksgm/+5Bw813T3mJyRNqIYGdYspVZFzQ6dhNLJ7H+fYWh8Q+cMbzLc/O0evM4srXGjp ECaXaT2jApqM4LRavgPnH7ecDRQSErabX3zC4EcX
137 fOVZZUpYs3UIfMsKVR+6hgFzHhvWWWl4EqZtrJpHnyeO0T2icPrqVRyyDRKmbayexv7wdolGfh1hwtsK 4G5jDOIHz/lTULUM47PaBmNJm2ssmTq+ssXeHBjg
138 ij3G5P+u5QVFIGQ21TNM5aGOHbqKssQ/HiM9kvcWjdCtF6gZNMzbXFhNP2gV2FNQi+OpOR+S+3RvOBVS Or+E5hjyPrQho7/QDNEG2qRNLpHl6WVl3m4p3POF
139 vwEWUN0ByvCQTSttdM48H7tjQWVk73qoUvhiSDbVK0mzyohbuHXofmEaK/xXYJ+Vq7tBUN6lMAdrouC3 p96IS8kMzbVK0myY4f+HKdRGsrG9SlDwEfQkXsGL
140 Ibapmmcv/sA5TrqC36t4sRdjylU4JC9KwG2plM0zxuT2iFFzAPXyj9ZWRu+tx5UpFv0jn0gQrKyMF5My aZsDbXG7/qIdp0tHG4jOQumLzBliaZttaLfZFUBS
141 Ou7FaUn/+IXETfwUj2E0o6gJ2HB/l8N7jFnzWWBESErabWPvy9bUKqS4y78CME0rbXSTNFRf8H7r1wwx Qbltish5nFVIRkhKaTNtc6L3LHAh8+B2yi/tHvXG
142 4nusVwAKMb/0/MCmoWrvASDM0mbay5YRI+7CtC96OPtxudDEyTGmbbWVRgkvR8qaiA8+rLCft7cW8H8U I3E8nzmJVSQIT3+0srHfUbgKA21ZNM8WEy+W7wbj
143 9OuBpm21MKGWN80kaA5PZfoSqkRPLa1h31wIEjiUhcnX/e5VSWVkQnPhtqoYXrjLFpn7M8tjB17xSqfW goA21StJpM48eSG+5A/dsGUQn8sV7impA4dQjxPy
144 rsBfHd8tUGBIJWkxtrnljE3eu/xTUO/nVsA9I4uVlZ5uQvy9IwYjbWUmaZ5XE9HAWVkXUKmoI3y4vDKZ pnKNtccJHK2iA83ej+fvgI3KR9P6qpG/kBCUdxHF
145 isLkq8aZttTCZlj/b0G8XoLX/3fHhZWCVcMsWmZtqmYXz0cpOiBHCqpKUZu76iICRxYVuSULpmF/421M sWmfyhbP4ew1FVKAjFlY437JXImUTm2r/4ZYtMy6
146 1hf16RPJIRA8tU1BDc5/JzAkEzTM21lyx7sK9wojRX/OHXoOv05IDbUymaZyscL7qlMA8c/CiK3csceq zuOEU1EPpbz4QEahIShpm21MJmWN924f98WKyf51
147 EEYBli0zNtUzC+6X9P9ysrU1CHyA3RJFFr1w67HpyULT+YMsWmZtquYXz97oKil44sI1bpL8hRSDeMkh iIBwOgxwZ5Fs6+5M+NdH+3Kjv0sreSqqRvGSQxEA
148 4HQY4M8i2dfcmfGuj/blR36WVvJVVI3jJIYiAcDoMcGeRbOvuTPjXR/tyo79LK3kqqkVUnCfqAES8EzT M21lykY4Q+LKxby+9F3ZHR/uC2OGpS9cv6BZXAeb
149 hckMGIymaZm2st8/B38i6A/n58pVLKwfURet4UBwSF6UaZttSZljhd2jW9BZWcrX0/hG4Sdt/SBCdH6U MJmWK80zba3URKaik8iB9PR2459CuyOAbi0/GWLT
150 MmYXm2t0vUkNQhRPVldKpAN5HgHyZfdOtGuj/YxwZ5S8u3CjqMgQoyQJRdawvJlE530/+sVg21c8GWLT Pf3yJVSVUoCMWVjjfslciZRObav/hli0zLrWF/Xp
151 E8khT2dnUwAEAAAAAAAAAABDt3UdAgAAAAzIIuQBAE9nZ1MABEAAAAAAAAAAorfjKwIAAABgTJAeBf// //+/IK2oPwLwetDyEoOnddpgLM7J5tdTLMgoKCgs
152 2quQe7o7SkFBQfQK1d3nTvIG8WYJg+kQTYyKcCBTI2uld4Ck3ITAiUxzwCDzbvEz4RL4jH2GES+Ix2gj joZkfroYD2Rxe50JehL0UdqOhDasSshteOirUpDV
153 6cdCD6ZJksRwtMAehrVhPC2k8aZU2c9cac+Z9PmWWWX4+Pj4BEssvCb4TfCZNG9wSOUm6QGyfTX2kmyp yN8xrVMPuq146O3o6OjorWtdevXrGK1qWvX08a6R
154 q0xLLxJJJTaDmSCHcNKfdSi8+/01vmG83m83ns7OzsErzebyPYtBJ0iEFRa8Nk7BZXXvaD9HsioatlKU tt6FxDflKUpxFWLa06Gy9Fa73KyurjJRShhHP3rK
155 Pc1/8e9M4svw7z9/y5hmd6tC/+c2BGWkiRIkSMOWLESxaepEN5HCA8fbnt2c+oiWh3nDTVDj5GpecOZ6 Pej2HglzRu77Ha7NevXrw9mr17Ge0nSP3nJ+/u8Q
156 hEvP/jNd8EFWSIRATu7oooou7uijwzeQQSuISlxl4fNRTj4fl3hrIGCibpjzMyqyFWQqyFWQBMyJVkKP wSJe+CRxuoEF/gEU2CHC4E9tYgQEIgLbW21ttbbW
157 21ttbbW3VRNfeEUjw5p+43Jszx9/+J9Xq/cPHkNoGheXKleIvTLu7iOchCVRx4+8YZD/8eO7wQfAz3YR //ArgZPYDA4O/j0JZ8SBCyNGQJAoyBIGM3Nszg65
158 /dg9KU0ZAssfyut/18FfOYHejZoiN64XH3AV8+A+MZAbifeO46k45f/YwcgIrj/v0lKe/O7777/urfwD uRL4vnLC2W8VNKmlTXI85zhb9Tzg5Pq3b4MHGJys
159 A0vsJbIsiyLIsEXpf8Fvh9ve5rMuDmsFkgjCv6z0V/RCArnWZw2pL3cs2uKgHydecWhDe3OxQXkRfRz3 haf8V7+0/u7FiQDyfSCDxnf/uIhzK8RYGDCXYRMY
160 qVpiJEi6iqzlnq91PbMvN7rqyqfI2QlKUpAgQIcDeBvA3afsV8/MqBxcDH6z8DKVq+fDeHyLb9bk1SlL LSZV5sj6vR9c+ZoSzmUe7nFIY77Io1uY7TGlp67W
161 1xSRjyffmuz+ZZnIo6iK81o5jPqjLad2pJVNlxcrFNTU1NxMGZmYZLw9FOO1MMyzMZOXW2i5f+SZOTWv XrxbvWtF9F/qpM8k7VWZ1srpVdmc/rNt5671q/4o
162 aPLioDn63vKe+3TsR1QdT3cbbX29dJhFWxGfPji8uow/RvEdxN26QXd3d3dmltxmvn9xX41q7lJ+EyZM mTJk5d7e2lt4T80idGzp5p4ZOwcwt9MfSg2px6rr
163 OjC7dunTLPnPm37py9tZjaU10a2lujlPd5ZYZbWZmZmYa7t76epZjI6IyFSpUiRI6tO81MJ+FSshXxUN o2qCYteb6DTfQ7eWHcYqrx8q3N+WmphpSJJJJM/j
164 1au8t2/m25K9evXr169fcx23mLqG6yrVvctNSdG9PTPz32j10DtUeJJJCiPs2L3slpLcg3LLLJJJQaTf R9IalPOLMvdptttts9C1Q35jwWm306Lp06dOnTp0
165 aWtuFpwSSSSHPcIguQA="/>
166 </video>
167
168 <video id="v4" controls oncanplaythrough='onCanPlayThrough()' onerror='o nError(event)'>
169 <source onerror='onError(event)'
170 src="data:video/ogg;base64,
171 T2dnUwACAAAAAAAAAABDt3UdAAAAAG1FPOwBQGZpc2hlYWQAAwAAAAAAAAAAAAAA6AMAAAAAAAAAAAAA AAAAAOgDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
172 AABPZ2dTAAIAAAAAAAAAAKK34ysAAAAAwlsClQEqgHRoZW9yYQMCAQAFAAQAAFAAADwABAAAABkAAAAB AAABAAABAgAAAIDAT2dnUwAAAAAAAAAAAABDt3Ud
173 AQAAAFp3fKUBUGZpc2JvbmUALAAAAKK34ysDAAAAGQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAYA AABDb250ZW50LVR5cGU6IHZpZGVvL3RoZW9yYQ0K
174 T2dnUwAAAAAAAAAAAACit+MrAQAAAHoeC5AOWP///////////////5CBdGhlb3JhKwAAAFhpcGguT3Jn IGxpYnRoZW9yYSAxLjEgMjAwOTA4MjIgKFRodXNu
175 ZWxkYSkBAAAAGgAAAEVOQ09ERVI9ZmZtcGVnMnRoZW9yYS0wLjI0gnRoZW9yYb7NKPe5zWsYtalJShBz nOYxjFKUpCEIMYxiEIQhCEAAAAAAAAAAAAARba5T
176 Z5LI/FYS/Hg5W2zmKvVoq1QoEykkWhD+eTmbjWZTCXiyVSmTiSSCGQh8PB2OBqNBgLxWKhQJBGIhCHw8 HAyGAsFAiDgVFtrlNnksj8VhL8eDlbbOYq9WirVC
177 gTKSRaEP55OZuNZlMJeLJVKZOJJIIZCHw8HY4Go0GAvFYqFAkEYiEIfDwcDIYCwUCIOBQLDw8PDw8PDw 8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw
178 8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8MDA8SFBQVDQ0OERIVFRQODg8SFBUVFQ4QERMUFRUVEB EUFRUVFRUSExQVFRUVFRQVFRUVFRUVFRUVFRUVFR
179 UQDAsQFBkbHA0NDhIVHBwbDg0QFBkcHBwOEBMWGx0dHBETGRwcHh4dFBgbHB0eHh0bHB0dHh4eHh0dHR 0eHh4dEAsKEBgoMz0MDA4TGjo8Nw4NEBgoOUU4Dh
180 EWHTNXUD4SFiU6RG1nTRgjN0BRaHFcMUBOV2d5eGVIXF9icGRnYxMTExMTExMTExMTExMTExMTExMTEx MTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
181 MTExMTExMTExMTExMSEhUZGhoaGhIUFhoaGhoaFRYZGhoaGhoZGhoaGhoaGhoaGhoaGhoaGhoaGhoaGh oaGhoaGhoaGhoaGhoaGhoaERIWHyQkJCQSFBgiJC
182 QkJBYYISQkJCQkHyIkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJBESGC9jY2NjEh UaQmNjY2MYGjhjY2NjYy9CY2NjY2NjY2NjY2NjY2
183 NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2MVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFR UVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVEh
184 ISFRcYGRsSEhUXGBkbHBIVFxgZGxwdFRcYGRscHR0XGBkbHB0dHRgZGxwdHR0eGRscHR0dHh4bHB0dHR 4eHhERERQXGhwgEREUFxocICIRFBcaHCAiJRQXGh
185 wgIiUlFxocICIlJSUaHCAiJSUlKRwgIiUlJSkqICIlJSUpKioQEBAUGBwgKBAQFBgcICgwEBQYHCAoME AUGBwgKDBAQBgcICgwQEBAHCAoMEBAQGAgKDBAQE
186 BggCgwQEBAYICAB8Xlx0fV7c7D8vrrAaZid8hRvB1RN7csxFuo43wH7lEkS9wbGS+tVSNMyuxdiECcjB 7R1Ml85htasNjKpSvPt3D8k7iGmZXYuxBC+RR4ar
187 UGxkvH5y7mJXR7R5Jwn3VUhBiuap91VIrsaCM5TSg9o867khwMrWY2+cP4rwvBLzt/wnHaYe0edSRMYC 6tZmU1BrvhktIUf2gXoU8bHMuyNA7lB7R51ym213
188 sFcFKowIviT/i0Wscg+4RDubX+4haRsMxZWgN05K5FD3bzqS9VSVCPM4TpWs2C43ihFdgaSByeKHu3Xf /2TG8tgpB7PAtOs7jixWYw+Ayo5GjUTSybX/1KW5
189 2RxYfB8nBNLJtHgt4DPq6BZWBFpjyZX/1KW5Ca0evOwG1EX/A9j5fQm5hOz6W2CtcCaWTXTFAeZO71VI gCTX69y9TiaXag3Os2ES1DcLKw0/xR5HfnCqkpQF
190 0Z1kxKNfhZWLycml2keduHMQh3HubB/pbUUoCK5wxetZRZWPJF/bdyE21H2YjMOhP/pkthqKUCOEWVm6 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 Pf3yJVSVUoCMWVjjfslciZRObav/hli0zLrWF/Xp
211 E8khT2dnUwAEAAAAAAAAAABDt3UdAgAAAAzIIuQBAE9nZ1MABEAAAAAAAAAAorfjKwIAAABgTJAeBf// //+/IK2oPwLwetDyEoOnddpgLM7J5tdTLMgoKCgs
212 2quQe7o7SkFBQfQK1d3nTvIG8WYJg+kQTYyKcCBTI2uld4Ck3ITAiUxzwCDzbvEz4RL4jH2GES+Ix2gj joZkfroYD2Rxe50JehL0UdqOhDasSshteOirUpDV
213 6cdCD6ZJksRwtMAehrVhPC2k8aZU2c9cac+Z9PmWWWX4+Pj4BEssvCb4TfCZNG9wSOUm6QGyfTX2kmyp yN8xrVMPuq146O3o6OjorWtdevXrGK1qWvX08a6R
214 q0xLLxJJJTaDmSCHcNKfdSi8+/01vmG83m83ns7OzsErzebyPYtBJ0iEFRa8Nk7BZXXvaD9HsioatlKU tt6FxDflKUpxFWLa06Gy9Fa73KyurjJRShhHP3rK
215 Pc1/8e9M4svw7z9/y5hmd6tC/+c2BGWkiRIkSMOWLESxaepEN5HCA8fbnt2c+oiWh3nDTVDj5GpecOZ6 Pej2HglzRu77Ha7NevXrw9mr17Ge0nSP3nJ+/u8Q
216 hEvP/jNd8EFWSIRATu7oooou7uijwzeQQSuISlxl4fNRTj4fl3hrIGCibpjzMyqyFWQqyFWQBMyJVkKP wSJe+CRxuoEF/gEU2CHC4E9tYgQEIgLbW21ttbbW
217 21ttbbW3VRNfeEUjw5p+43Jszx9/+J9Xq/cPHkNoGheXKleIvTLu7iOchCVRx4+8YZD/8eO7wQfAz3YR //ArgZPYDA4O/j0JZ8SBCyNGQJAoyBIGM3Nszg65
218 /dg9KU0ZAssfyut/18FfOYHejZoiN64XH3AV8+A+MZAbifeO46k45f/YwcgIrj/v0lKe/O7777/urfwD uRL4vnLC2W8VNKmlTXI85zhb9Tzg5Pq3b4MHGJys
219 A0vsJbIsiyLIsEXpf8Fvh9ve5rMuDmsFkgjCv6z0V/RCArnWZw2pL3cs2uKgHydecWhDe3OxQXkRfRz3 haf8V7+0/u7FiQDyfSCDxnf/uIhzK8RYGDCXYRMY
220 qVpiJEi6iqzlnq91PbMvN7rqyqfI2QlKUpAgQIcDeBvA3afsV8/MqBxcDH6z8DKVq+fDeHyLb9bk1SlL LSZV5sj6vR9c+ZoSzmUe7nFIY77Io1uY7TGlp67W
221 1xSRjyffmuz+ZZnIo6iK81o5jPqjLad2pJVNlxcrFNTU1NxMGZmYZLw9FOO1MMyzMZOXW2i5f+SZOTWv XrxbvWtF9F/qpM8k7VWZ1srpVdmc/rNt5671q/4o
222 aPLioDn63vKe+3TsR1QdT3cbbX29dJhFWxGfPji8uow/RvEdxN26QXd3d3dmltxmvn9xX41q7lJ+EyZM mTJk5d7e2lt4T80idGzp5p4ZOwcwt9MfSg2px6rr
223 OjC7dunTLPnPm37py9tZjaU10a2lujlPd5ZYZbWZmZmYa7t76epZjI6IyFSpUiRI6tO81MJ+FSshXxUN o2qCYteb6DTfQ7eWHcYqrx8q3N+WmphpSJJJJM/j
224 1au8t2/m25K9evXr169fcx23mLqG6yrVvctNSdG9PTPz32j10DtUeJJJCiPs2L3slpLcg3LLLJJJQaTf R9IalPOLMvdptttts9C1Q35jwWm306Lp06dOnTp0
225 aWtuFpwSSSSHPcIguQA="/>
226 <source onerror='onError(event)'
227 src="data:video/mp4;base64,
228 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
259 AQAAAABMYXZmNTQuMC4xMDA="/>
260 </video>
261
262 </body>
263 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698