1fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com/*
2fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com * Copyright 2013 Google Inc.
3fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com *
4fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com * Use of this source code is governed by a BSD-style license that can be
5fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com * found in the LICENSE file.
6fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com */
7fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com
8fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com#include "SkBitmap.h"
9b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi#include "SkDecodingImageGenerator.h"
10fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com#include "SkForceLinking.h"
118f6884aab8aecd7657cf3f9cdbc682f0deca29c5tfarina@chromium.org#include "SkImageDecoder.h"
12b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi#include "SkPixelRef.h"
13fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com#include "SkStream.h"
14b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi#include "SkTemplates.h"
158f6884aab8aecd7657cf3f9cdbc682f0deca29c5tfarina@chromium.org#include "Test.h"
16fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com
17fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com__SK_FORCE_IMAGE_DECODER_LINKING;
18fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com
19fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com#define JPEG_TEST_WRITE_TO_FILE_FOR_DEBUGGING 0  // do not do this for
20fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com                                                 // normal unit testing.
21ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.orgstatic unsigned char goodJpegImage[] = {
22ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xFF, 0xD8, 0xFF, 0xE0, 0x00, 0x10, 0x4A, 0x46,
23ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x49, 0x46, 0x00, 0x01, 0x01, 0x01, 0x00, 0x8F,
24ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x8F, 0x00, 0x00, 0xFF, 0xDB, 0x00, 0x43,
25ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x05, 0x03, 0x04, 0x04, 0x04, 0x03, 0x05,
26ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x04, 0x04, 0x04, 0x05, 0x05, 0x05, 0x06, 0x07,
27ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0C, 0x08, 0x07, 0x07, 0x07, 0x07, 0x0F, 0x0B,
28ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0B, 0x09, 0x0C, 0x11, 0x0F, 0x12, 0x12, 0x11,
29ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0F, 0x11, 0x11, 0x13, 0x16, 0x1C, 0x17, 0x13,
30ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x14, 0x1A, 0x15, 0x11, 0x11, 0x18, 0x21, 0x18,
31ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1A, 0x1D, 0x1D, 0x1F, 0x1F, 0x1F, 0x13, 0x17,
32ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x22, 0x24, 0x22, 0x1E, 0x24, 0x1C, 0x1E, 0x1F,
33ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1E, 0xFF, 0xDB, 0x00, 0x43, 0x01, 0x05, 0x05,
34ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x05, 0x07, 0x06, 0x07, 0x0E, 0x08, 0x08, 0x0E,
35ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1E, 0x14, 0x11, 0x14, 0x1E, 0x1E, 0x1E, 0x1E,
36ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E,
37ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E,
38ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E,
39ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E,
40ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E,
41ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0xFF, 0xC0,
42ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x11, 0x08, 0x00, 0x80, 0x00, 0x80, 0x03,
43ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x01, 0x22, 0x00, 0x02, 0x11, 0x01, 0x03, 0x11,
44ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x01, 0xFF, 0xC4, 0x00, 0x18, 0x00, 0x01, 0x01,
45ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
46ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00,
47ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x08, 0x06, 0x05, 0xFF, 0xC4, 0x00, 0x4C, 0x10,
48ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x00, 0x01, 0x07, 0x08, 0x05, 0x08, 0x05,
49ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0A, 0x03, 0x09, 0x01, 0x00, 0x00, 0x00, 0x00,
50ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x01, 0x02, 0x03, 0x04, 0x06, 0x07, 0x11,
51ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x05, 0x08, 0x12, 0x13, 0x14, 0x15, 0x38, 0xB4,
52ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x16, 0x17, 0x21, 0x31, 0x84, 0x18, 0x22, 0x23,
53ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x24, 0x58, 0xA5, 0xA6, 0xD2, 0x32, 0x51, 0x56,
54ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x61, 0xD3, 0x28, 0x33, 0x41, 0x48, 0x67, 0x85,
55ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x86, 0xC3, 0xE4, 0xF0, 0x25, 0x49, 0x55, 0x09,
56ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x34, 0x35, 0x36, 0x53, 0x68, 0x72, 0x81, 0xA7,
57ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE2, 0xFF, 0xC4, 0x00, 0x14, 0x01, 0x01, 0x00,
58ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
59ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF,
60ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC4, 0x00, 0x14, 0x11, 0x01, 0x00, 0x00, 0x00,
61ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
62ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xDA, 0x00,
63ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0C, 0x03, 0x01, 0x00, 0x02, 0x11, 0x03, 0x11,
64ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x3F, 0x00, 0xD9, 0x62, 0x10, 0x80, 0x40,
65ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x65, 0xED, 0x62, 0x75, 0xC8, 0x7D, 0xFF, 0x00,
66ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x92, 0x30, 0x33, 0x01, 0x97, 0xB5, 0x89, 0xD7,
67ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x21, 0xF7, 0xFE, 0x48, 0xC0, 0x0C, 0xC2, 0x10,
68ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x80, 0x40, 0x66, 0x64, 0xB8, 0x62, 0x64, 0x78,
69ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xDC, 0xEA, 0x70, 0xCC, 0x06, 0x66, 0x4B, 0x86,
70ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x26, 0x47, 0x8D, 0xCE, 0xA7, 0x00, 0xCC, 0x21,
71ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x08, 0x04, 0x31, 0x9F, 0xF2, 0xC5, 0xFD, 0xFF,
72ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x5A, 0x1B, 0x30, 0x63, 0x3F, 0xE5, 0x8B,
73ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xFB, 0xFE, 0xB4, 0x03, 0x66, 0x01, 0x99, 0x92,
74ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE1, 0x89, 0x91, 0xE3, 0x73, 0xA9, 0xC3, 0x30,
75ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x19, 0x99, 0x2E, 0x18, 0x99, 0x1E, 0x37, 0x3A,
76ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x9C, 0x03, 0x30, 0x84, 0x33, 0x33, 0x92, 0x55,
77ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x7E, 0xCF, 0x29, 0xD8, 0x49, 0x0D, 0xAE, 0xBD,
78ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xAE, 0xAB, 0xC6, 0xBB, 0xAA, 0x68, 0x92, 0x92,
79ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x6A, 0xBA, 0xB4, 0xE9, 0x11, 0x7A, 0x7C, 0xD8,
80ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC6, 0x84, 0x77, 0x12, 0x11, 0x87, 0xBC, 0x07,
81ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x67, 0xAC, 0x47, 0xED, 0xD9, 0xD3, 0xC6, 0xAA,
82ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x5E, 0x51, 0x6B, 0x11, 0xFB, 0x76, 0x74, 0xF1,
83ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xAA, 0x97, 0x94, 0x33, 0x08, 0x00, 0xCE, 0xB1,
84ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1F, 0xB7, 0x67, 0x4F, 0x1A, 0xA9, 0x79, 0x41,
85ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x9B, 0xC4, 0x6C, 0xDE, 0xC2, 0xCB, 0xF6, 0x75,
86ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x92, 0x84, 0xA0, 0xE5, 0xEC, 0x12, 0xB2, 0x9D,
87ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xEF, 0x76, 0xC9, 0xBA, 0x50, 0xAA, 0x92, 0xF1,
88ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA6, 0xAA, 0x69, 0x12, 0xF4, 0xA4, 0x36, 0x8A,
89ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x2A, 0xB3, 0x60, 0x77, 0x3A, 0x34, 0xA3, 0x02,
90ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x6D, 0x1A, 0xC8, 0x0C, 0xBD, 0xAC, 0x4E, 0xB9,
91ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0F, 0xBF, 0xF2, 0x46, 0x00, 0xB5, 0x88, 0xFD,
92ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xBB, 0x3A, 0x78, 0xD5, 0x4B, 0xCA, 0x2D, 0x62,
93ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x3F, 0x6E, 0xCE, 0x9E, 0x35, 0x52, 0xF2, 0x86,
94ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x61, 0x00, 0x19, 0xD6, 0x23, 0xF6, 0xEC, 0xE9,
95ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE3, 0x55, 0x2F, 0x28, 0x33, 0x9A, 0xE3, 0x66,
96ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xF6, 0x24, 0x97, 0x12, 0xCE, 0xC9, 0xEC, 0xCB,
97ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x97, 0xD2, 0x49, 0x25, 0x15, 0xAA, 0xCF, 0x29,
98ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x69, 0x42, 0xAA, 0xA5, 0x7C, 0x56, 0x92, 0x94,
99ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xEE, 0x88, 0xF3, 0x4A, 0x71, 0xB4, 0x4E, 0x29,
100ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC6, 0xED, 0xDF, 0x46, 0x3B, 0x8A, 0x35, 0x90,
101ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x19, 0x99, 0x2E, 0x18, 0x99, 0x1E, 0x37, 0x3A,
102ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x9C, 0x01, 0x9B, 0xE4, 0x79, 0x73, 0x93, 0x59,
103ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x69, 0xD9, 0x36, 0x65, 0x99, 0x62, 0x34, 0x1E,
104ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x56, 0x95, 0xAD, 0x96, 0x75, 0x7B, 0xD6, 0x4F,
105ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x94, 0x6F, 0x1A, 0xA3, 0x0C, 0x3C, 0xEE, 0x71,
106ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE6, 0x51, 0x45, 0x56, 0x6D, 0x22, 0xED, 0x29,
107ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x29, 0x53, 0xFA, 0x4A, 0x41, 0xE2, 0xFC, 0xBB,
108ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x3F, 0x77, 0x28, 0x66, 0x7B, 0x58, 0x9D, 0x72,
109ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1F, 0x7F, 0xE4, 0x8C, 0x0C, 0xC0, 0x31, 0x9F,
110ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xCB, 0xB3, 0xF7, 0x72, 0x8F, 0x19, 0xB6, 0x76,
111ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x8F, 0x61, 0x8B, 0x99, 0xDA, 0xDA, 0x16, 0x99,
112ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xB7, 0xB0, 0x49, 0x2A, 0x74, 0x2D, 0x0C, 0x9D,
113ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD4, 0xAA, 0x92, 0x85, 0x39, 0x40, 0xD2, 0x9B,
114ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD7, 0x0C, 0x3C, 0xA7, 0x16, 0x27, 0x1C, 0x6A,
115ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x5D, 0x91, 0xDF, 0x43, 0x70, 0xDC, 0xA2, 0x01,
116ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x8C, 0xF5, 0xC1, 0xFE, 0xF1, 0x3F, 0xF3, 0x4F,
117ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xFE, 0x07, 0xB5, 0x35, 0xC6, 0x31, 0xEC, 0x4A,
118ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xCE, 0x25, 0x9D, 0x94, 0x19, 0x97, 0xD1, 0xA3,
119ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x72, 0x4A, 0x5B, 0x55, 0x9E, 0x4D, 0xD1, 0x75,
120ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x55, 0xBA, 0x88, 0x2D, 0x25, 0x21, 0xDD, 0x29,
121ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE7, 0x10, 0xE3, 0xA9, 0x1C, 0x43, 0x8E, 0xDB,
122ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xBA, 0x94, 0x37, 0x10, 0x6B, 0x21, 0x00, 0x19,
123ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD5, 0xDB, 0xF6, 0xED, 0x17, 0xE0, 0xA5, 0x2F,
124ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x30, 0x33, 0x9A, 0xE3, 0x18, 0xF6, 0x25, 0x67,
125ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x12, 0xCE, 0xCA, 0x0C, 0xCB, 0xE8, 0xD1, 0xB9,
126ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x25, 0x2D, 0xAA, 0xCF, 0x26, 0xE8, 0xBA, 0xAA,
127ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xDD, 0x44, 0x16, 0x92, 0x90, 0xEE, 0x94, 0xF3,
128ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x88, 0x71, 0xD4, 0x8E, 0x21, 0xC7, 0x6D, 0xDD,
129ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x4A, 0x1B, 0x88, 0x35, 0x90, 0x19, 0x99, 0x2E,
130ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x18, 0x99, 0x1E, 0x37, 0x3A, 0x9C, 0x03, 0x30,
131ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x80, 0x04, 0xDB, 0x99, 0x69, 0x09, 0x8B, 0x7E,
132ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xCF, 0x8D, 0x99, 0x66, 0x54, 0x6C, 0x12, 0x4A,
133ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x9D, 0xC7, 0x67, 0x57, 0xAD, 0x3D, 0x25, 0x0A,
134ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x6A, 0xA9, 0x4F, 0x3B, 0x9C, 0x79, 0x4A, 0x71,
135ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x62, 0x71, 0xC7, 0x17, 0x69, 0x4B, 0xBF, 0xD4,
136ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1F, 0xC0, 0x43, 0x8C, 0x79, 0xAE, 0xB5, 0x84,
137ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x79, 0x57, 0x7E, 0x9A, 0xC8, 0x57, 0xAD, 0xDD,
138ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x5B, 0x64, 0xEB, 0x69, 0xD0, 0xD5, 0xD6, 0x50,
139ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA7, 0xF3, 0x47, 0x9B, 0x18, 0xD0, 0x33, 0x7C,
140ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x61, 0x0D, 0x9F, 0x48, 0xEC, 0xC0, 0x03, 0x12,
141ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xFB, 0x5E, 0xC3, 0x68, 0xCC, 0x2A, 0x34, 0xCC,
142ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xCB, 0x83, 0xB7, 0xC9, 0x2B, 0x94, 0xEC, 0xEB,
143ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1A, 0x5E, 0xAA, 0x8E, 0x9D, 0x03, 0xCE, 0x30,
144ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xEE, 0x69, 0xE8, 0xC8, 0x71, 0x20, 0x71, 0xA7,
145ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x13, 0x69, 0x09, 0xBB, 0xD4, 0x03, 0xD9, 0xE4,
146ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xB8, 0xE2, 0x7D, 0x86, 0xEF, 0x65, 0xDF, 0x8C,
147ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x2E, 0x4B, 0x8E, 0x27, 0xD8, 0x6E, 0xF6, 0x5D,
148ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xF8, 0xC2, 0xD6, 0x23, 0xF6, 0xEC, 0xE9, 0xE3,
149ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x55, 0x2F, 0x28, 0xB5, 0x88, 0xFD, 0xBB, 0x3A,
150ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x78, 0xD5, 0x4B, 0xCA, 0x02, 0xE4, 0xB8, 0xE2,
151ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x7D, 0x86, 0xEF, 0x65, 0xDF, 0x8C, 0x0C, 0xE6,
152ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xB8, 0xE1, 0x1D, 0x3B, 0x68, 0xE2, 0x59, 0xD6,
153ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x99, 0xA6, 0x65, 0x2D, 0xF2, 0xB2, 0xE5, 0xAA,
154ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD0, 0xB1, 0x78, 0x2D, 0x23, 0xA7, 0x41, 0x69,
155ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x29, 0x86, 0xF3, 0x4C, 0x48, 0x43, 0x49, 0x03,
156ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x4D, 0x34, 0x9B, 0x08, 0x4D, 0xDE, 0xB0, 0x99,
157ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xAC, 0x47, 0xED, 0xD9, 0xD3, 0xC6, 0xAA, 0x5E,
158ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x50, 0x67, 0x35, 0xC6, 0xCD, 0xEC, 0x49, 0x2E,
159ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x25, 0x9D, 0x93, 0xD9, 0x97, 0x2F, 0xA4, 0x92,
160ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x4A, 0x2B, 0x55, 0x9E, 0x52, 0xD2, 0x85, 0x55,
161ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x4A, 0xF8, 0xAD, 0x25, 0x29, 0xDD, 0x11, 0xE6,
162ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x94, 0xE3, 0x68, 0x9C, 0x53, 0x8D, 0xDB, 0xBE,
163ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x8C, 0x77, 0x14, 0x04, 0xF1, 0x1C, 0x23, 0xA7,
164ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x92, 0x5F, 0xB3, 0xAC, 0x66, 0x64, 0xF6, 0x52,
165ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA6, 0x49, 0x97, 0xAF, 0x7B, 0xC9, 0x5E, 0xF0,
166ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x5A, 0x3A, 0xBE, 0xA1, 0x54, 0xD3, 0xD1, 0x73,
167ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x8A, 0x90, 0xA7, 0x1B, 0x44, 0xE2, 0x94, 0xBC,
168ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD2, 0x92, 0x3F, 0x4C, 0x48, 0x13, 0x39, 0x2E,
169ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x38, 0x9F, 0x61, 0xBB, 0xD9, 0x77, 0xE3, 0x01,
170ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x97, 0xF4, 0xF7, 0x1B, 0xB6, 0x51, 0xE7, 0xBB,
171ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x76, 0xD5, 0xB5, 0x74, 0xB7, 0x15, 0xCD, 0x7A,
172ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x59, 0x15, 0x34, 0x89, 0x02, 0xCD, 0xBA, 0xB9,
173ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x02, 0x34, 0x47, 0xF3, 0xD1, 0x18, 0x5A, 0xBA,
174ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x14, 0x8C, 0x2E, 0xD2, 0x16, 0x95, 0x28, 0x12,
175ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x10, 0x29, 0x46, 0xCC, 0x00, 0x33, 0xC9, 0x71,
176ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC4, 0xFB, 0x0D, 0xDE, 0xCB, 0xBF, 0x18, 0x5C,
177ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x97, 0x1C, 0x4F, 0xB0, 0xDD, 0xEC, 0xBB, 0xF1,
178ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x83, 0x30, 0x80, 0x0C, 0xF2, 0x5C, 0x71, 0x3E,
179ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC3, 0x77, 0xB2, 0xEF, 0xC6, 0x17, 0x25, 0xC7,
180ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x13, 0xEC, 0x37, 0x7B, 0x2E, 0xFC, 0x60, 0xCC,
181ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x20, 0x03, 0x3C, 0x97, 0x1C, 0x4F, 0xB0, 0xDD,
182ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xEC, 0xBB, 0xF1, 0x81, 0x9C, 0xD7, 0x1C, 0x23,
183ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA7, 0x6D, 0x1C, 0x4B, 0x3A, 0xD3, 0x34, 0xCC,
184ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA5, 0xBE, 0x56, 0x5C, 0xB5, 0x5A, 0x16, 0x2F,
185ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x05, 0xA4, 0x74, 0xE8, 0x2D, 0x25, 0x30, 0xDE,
186ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x69, 0x89, 0x08, 0x69, 0x20, 0x69, 0xA6, 0x93,
187ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x61, 0x09, 0xBB, 0xD6, 0x35, 0x90, 0x19, 0x99,
188ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x2E, 0x18, 0x99, 0x1E, 0x37, 0x3A, 0x9C, 0x07,
189ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x8D, 0x36, 0xE6, 0xA6, 0x42, 0x6D, 0x1F, 0xB3,
190ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE3, 0x69, 0x99, 0x95, 0xEB, 0x7C, 0x92, 0xB9,
191ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x71, 0xD9, 0xD6, 0x2A, 0x8F, 0x47, 0x4E, 0x82,
192ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xAA, 0x53, 0x0E, 0xE6, 0x9E, 0x42, 0x1C, 0x48,
193ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1C, 0x69, 0xC4, 0xDA, 0x42, 0x6E, 0xF5, 0x07,
194ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xF1, 0x08, 0x00, 0xCB, 0x40, 0xF7, 0x1B, 0xBD,
195ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x67, 0xB4, 0xEC, 0x53, 0x14, 0xE9, 0x74, 0xAB,
196ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x47, 0x2C, 0x96, 0xB5, 0xBD, 0x22, 0x40, 0xA5,
197ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xFD, 0xE1, 0x01, 0x12, 0x99, 0xCC, 0x4A, 0x67,
198ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xFC, 0xC9, 0xB0, 0xA5, 0xF4, 0x62, 0x58, 0x44,
199ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x84, 0x06, 0x73, 0x5C, 0x6C, 0xDE, 0xC4, 0x92,
200ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE2, 0x59, 0xD9, 0x3D, 0x99, 0x72, 0xFA, 0x49,
201ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x24, 0xA2, 0xB5, 0x59, 0xE5, 0x2D, 0x28, 0x55,
202ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x54, 0xAF, 0x8A, 0xD2, 0x52, 0x9D, 0xD1, 0x1E,
203ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x69, 0x4E, 0x36, 0x89, 0xC5, 0x38, 0xDD, 0xBB,
204ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE8, 0xC7, 0x71, 0x42, 0x63, 0xA5, 0xC4, 0xEB,
205ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xEF, 0xFB, 0x83, 0x24, 0x78, 0xA6, 0x4B, 0x86,
206ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x26, 0x47, 0x8D, 0xCE, 0xA7, 0x01, 0x6B, 0x11,
207ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xFB, 0x76, 0x74, 0xF1, 0xAA, 0x97, 0x94, 0x5A,
208ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC4, 0x7E, 0xDD, 0x9D, 0x3C, 0x6A, 0xA5, 0xE5,
209ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0C, 0xC2, 0x00, 0x33, 0xAC, 0x47, 0xED, 0xD9,
210ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD3, 0xC6, 0xAA, 0x5E, 0x50, 0x67, 0x35, 0xC6,
211ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xCD, 0xEC, 0x49, 0x2E, 0x25, 0x9D, 0x93, 0xD9,
212ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x97, 0x2F, 0xA4, 0x92, 0x4A, 0x2B, 0x55, 0x9E,
213ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x52, 0xD2, 0x85, 0x55, 0x4A, 0xF8, 0xAD, 0x25,
214ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x29, 0xDD, 0x11, 0xE6, 0x94, 0xE3, 0x68, 0x9C,
215ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x53, 0x8D, 0xDB, 0xBE, 0x8C, 0x77, 0x14, 0x6B,
216ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x20, 0x33, 0x32, 0x5C, 0x31, 0x32, 0x3C, 0x6E,
217ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x75, 0x38, 0x0C, 0xCD, 0x3E, 0x76, 0x89, 0xBB,
218ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x97, 0xF4, 0x3B, 0x4D, 0x5D, 0xD6, 0x86, 0xD4,
219ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x5B, 0xAC, 0x9F, 0xC6, 0x90, 0x2F, 0xDA, 0xA9,
220ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x59, 0xE9, 0xFC, 0xD1, 0x09, 0x42, 0x8C, 0x0C,
221ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xDF, 0xBE, 0x9E, 0xCD, 0xC5, 0x1A, 0x67, 0x58,
222ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x8F, 0xDB, 0xB3, 0xA7, 0x8D, 0x54, 0xBC, 0xA3,
223ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x8C, 0xFE, 0xD0, 0x76, 0x16, 0xFF, 0x00, 0x76,
224ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0A, 0xAD, 0xAD, 0xE9, 0x66, 0xD1, 0x5A, 0x7D,
225ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x52, 0xCF, 0x4E, 0xD5, 0x6A, 0x4E, 0xAC, 0x8B,
226ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD3, 0xA4, 0x4A, 0x14, 0x61, 0x1D, 0xC7, 0x47,
227ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x76, 0xCD, 0xE2, 0x7D, 0xAA, 0xAF, 0xD9, 0xDA,
228ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xBB, 0x09, 0x5D, 0xB5, 0xD7, 0xB5, 0xEB, 0x77,
229ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x54, 0xF5, 0x4D, 0x12, 0x52, 0x43, 0x59, 0x58,
230ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x9D, 0x1A, 0x2F, 0x4F, 0x9D, 0x08, 0x53, 0x8E,
231ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE2, 0xC6, 0x10, 0xF7, 0x80, 0xEC, 0xF5, 0x88,
232ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xFD, 0xBB, 0x3A, 0x78, 0xD5, 0x4B, 0xCA, 0x2D,
233ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x62, 0x3F, 0x6E, 0xCE, 0x9E, 0x35, 0x52, 0xF2,
234ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x8C, 0x67, 0xCA, 0x8D, 0xFB, 0x7B, 0x73, 0xDD,
235ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x2A, 0x5F, 0x04, 0x5C, 0xA8, 0xDF, 0xB7, 0xB7,
236ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x3D, 0xD2, 0xA5, 0xF0, 0x40, 0x6C, 0xCD, 0x62,
237ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x3F, 0x6E, 0xCE, 0x9E, 0x35, 0x52, 0xF2, 0x8B,
238ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x58, 0x8F, 0xDB, 0xB3, 0xA7, 0x8D, 0x54, 0xBC,
239ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA3, 0x33, 0x3B, 0x27, 0xA5, 0x3B, 0x17, 0x95,
240ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x78, 0x68, 0x54, 0xBB, 0x7A, 0xDD, 0xD5, 0x56,
241ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xBE, 0xA9, 0x25, 0xA1, 0xAB, 0xAC, 0xA7, 0x43,
242ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE7, 0x4C, 0x36, 0x31, 0xA0, 0x7E, 0xE8, 0xC2,
243ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1B, 0x7E, 0x81, 0xD9, 0xFC, 0xBB, 0x3F, 0x77,
244ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x28, 0x06, 0x6D, 0x62, 0x3F, 0x6E, 0xCE, 0x9E,
245ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x35, 0x52, 0xF2, 0x83, 0x39, 0xAE, 0x36, 0x6F,
246ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x62, 0x49, 0x71, 0x2C, 0xEC, 0x9E, 0xCC, 0xB9,
247ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x7D, 0x24, 0x92, 0x51, 0x5A, 0xAC, 0xF2, 0x96,
248ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x94, 0x2A, 0xAA, 0x57, 0xC5, 0x69, 0x29, 0x4E,
249ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE8, 0x8F, 0x34, 0xA7, 0x1B, 0x44, 0xE2, 0x9C,
250ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x6E, 0xDD, 0xF4, 0x63, 0xB8, 0xA3, 0xC5, 0xF9,
251ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x76, 0x7E, 0xEE, 0x51, 0xC6, 0x39, 0x2E, 0x56,
252ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x3A, 0xB0, 0x92, 0x35, 0x69, 0xFE, 0x53, 0xE9,
253ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xAC, 0x1F, 0xE1, 0x7F, 0xEB, 0xA4, 0xAC, 0xF9,
254ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xFE, 0x93, 0xE7, 0x2B, 0x3D, 0x2F, 0xFA, 0xD9,
255ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x1B, 0xFC, 0x42, 0x10, 0x0C, 0x9A, 0xD4,
256ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xBE, 0x39, 0x09, 0xCF, 0xBF, 0x67, 0xD5, 0x28,
257ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x4A, 0x08, 0x6D, 0xF2, 0xB2, 0xE5, 0xC3, 0x76,
258ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC9, 0xB4, 0x8F, 0x47, 0x6B, 0xA0, 0xAA, 0x42,
259ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x25, 0xE9, 0x48, 0x8C, 0xF3, 0x4C, 0xA0, 0x6A,
260ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x42, 0x1D, 0xCE, 0x84, 0x61, 0x02, 0x6D, 0xDC,
261ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x64, 0xE4, 0xA7, 0x5B, 0xAB, 0x57, 0x61, 0x24,
262ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x31, 0x5A, 0x05, 0x7A, 0xDD, 0xD5, 0xDD, 0x6E,
263ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xF7, 0xA9, 0xAC, 0xAC, 0x4E, 0x91, 0x2F, 0xA1,
264ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x52, 0x74, 0x21, 0x4E, 0x1B, 0xCB, 0x18, 0x47,
265ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xDC, 0x34, 0xCC, 0xF6, 0xB0, 0xC4, 0xD7, 0x70,
266ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x59, 0xD4, 0x02, 0x99, 0x2E, 0x18, 0x99, 0x1E,
267ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x37, 0x3A, 0x9C, 0x00, 0xCF, 0x2E, 0x7F, 0xB2,
268ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xEE, 0xFF, 0x00, 0xFD, 0x38, 0xB9, 0x73, 0xFD,
269ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x97, 0x77, 0xFF, 0x00, 0xE9, 0xC6, 0xCC, 0x10,
270ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0C, 0x67, 0xCB, 0x9F, 0xEC, 0xBB, 0xBF, 0xFF,
271ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x4E, 0x38, 0xC7, 0x25, 0x3A, 0xDD, 0x5A,
272ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xBB, 0x09, 0x21, 0x8A, 0xD0, 0x2B, 0xD6, 0xEE,
273ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xAE, 0xEB, 0x77, 0xBD, 0x4D, 0x65, 0x62, 0x74,
274ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x89, 0x7D, 0x0A, 0x93, 0xA1, 0x0A, 0x70, 0xDE,
275ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x58, 0xC2, 0x3E, 0xE1, 0xBF, 0xC0, 0xCC, 0xC9,
276ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x70, 0xC4, 0xC8, 0xF1, 0xB9, 0xD4, 0xE0, 0x33,
277ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x33, 0xED, 0x9D, 0x6E, 0xB2, 0x9D, 0x84, 0xAE,
278ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC5, 0x68, 0x15, 0xD5, 0x78, 0xD4, 0xF5, 0xBB,
279ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xDE, 0xBA, 0xAE, 0xAD, 0x3A, 0x34, 0xBE, 0x85,
280ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x49, 0xB1, 0x8D, 0x08, 0x6F, 0x24, 0x23, 0x1F,
281ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x70, 0x9F, 0x6C, 0xEB, 0x75, 0x94, 0xEC, 0x25,
282ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x76, 0x2B, 0x40, 0xAE, 0xAB, 0xC6, 0xA7, 0xAD,
283ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xDE, 0xF5, 0xD5, 0x75, 0x69, 0xD1, 0xA5, 0xF4,
284ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x2A, 0x4D, 0x8C, 0x68, 0x43, 0x79, 0x21, 0x18,
285ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xFB, 0x86, 0x99, 0x9E, 0xD6, 0x18, 0x9A, 0xEE,
286ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0B, 0x3A, 0x80, 0x53, 0xDA, 0xC3, 0x13, 0x5D,
287ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC1, 0x67, 0x50, 0x00, 0xCC, 0xCE, 0x4A, 0x75,
288ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xBA, 0xB5, 0x76, 0x12, 0x43, 0x15, 0xA0, 0x57,
289ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xAD, 0xDD, 0x5D, 0xD6, 0xEF, 0x7A, 0x9A, 0xCA,
290ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC4, 0xE9, 0x12, 0xFA, 0x15, 0x27, 0x42, 0x14,
291ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE1, 0xBC, 0xB1, 0x84, 0x7D, 0xC3, 0xB3, 0xE5,
292ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xCF, 0xF6, 0x5D, 0xDF, 0xFF, 0x00, 0xA7, 0x0C,
293ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD3, 0x25, 0xC3, 0x13, 0x23, 0xC6, 0xE7, 0x53,
294ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x86, 0x60, 0x18, 0x01, 0x92, 0x9D, 0x6D, 0xC0,
295ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xF3, 0xDB, 0x76, 0xD7, 0x40, 0xAD, 0x3A, 0x55,
296ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x60, 0xEA, 0x97, 0xBD, 0x0B, 0x2D, 0x95, 0x01,
297ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x51, 0x7A, 0x75, 0x25, 0xA7, 0x4A, 0x31, 0xDC,
298ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x6C, 0x37, 0x6D, 0xDE, 0x3B, 0x3E, 0x5C, 0xFF,
299ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x65, 0xDD, 0xFF, 0x00, 0xFA, 0x70, 0xCC,
300ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE9, 0x71, 0x3A, 0xFB, 0xFE, 0xE0, 0xC9, 0x1E,
301ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x19, 0x80, 0x63, 0x3E, 0x5C, 0xFF, 0x00, 0x65,
302ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xDD, 0xFF, 0x00, 0xFA, 0x71, 0xC6, 0x39, 0x29,
303ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD6, 0xEA, 0xD5, 0xD8, 0x49, 0x0C, 0x56, 0x81,
304ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x5E, 0xB7, 0x75, 0x77, 0x5B, 0xBD, 0xEA, 0x6B,
305ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x2B, 0x13, 0xA4, 0x4B, 0xE8, 0x54, 0x9D, 0x08,
306ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x53, 0x86, 0xF2, 0xC6, 0x11, 0xF7, 0x0D, 0xFE,
307ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x06, 0x66, 0x4B, 0x86, 0x26, 0x47, 0x8D, 0xCE,
308ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA7, 0x00, 0xCC, 0x21, 0x08, 0x00, 0xCC, 0xF6,
309ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xB0, 0xC4, 0xD7, 0x70, 0x59, 0xD4, 0x02, 0x99,
310ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x2E, 0x18, 0x99, 0x1E, 0x37, 0x3A, 0x9C, 0x53,
311ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xDA, 0xC3, 0x13, 0x5D, 0xC1, 0x67, 0x50, 0x0A,
312ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x64, 0xB8, 0x62, 0x64, 0x78, 0xDC, 0xEA, 0x70,
313ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0C, 0xC2, 0x10, 0x80, 0x40, 0x66, 0x64, 0xB8,
314ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x62, 0x64, 0x78, 0xDC, 0xEA, 0x70, 0xCC, 0x06,
315ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x66, 0x4B, 0x86, 0x26, 0x47, 0x8D, 0xCE, 0xA7,
316ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x01, 0x4F, 0x6B, 0x0C, 0x4D, 0x77, 0x05, 0x9D,
317ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x40, 0x29, 0xED, 0x61, 0x89, 0xAE, 0xE0, 0xB3,
318ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA8, 0x05, 0x3D, 0xAC, 0x31, 0x35, 0xDC, 0x16,
319ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x75, 0x00, 0xA7, 0xB5, 0x86, 0x26, 0xBB, 0x82,
320ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xCE, 0xA0, 0x01, 0x4C, 0x97, 0x0C, 0x4C, 0x8F,
321ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1B, 0x9D, 0x4E, 0x19, 0x86, 0x4D, 0x9A, 0xE3,
322ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xFB, 0x74, 0xEC, 0x5B, 0x89, 0x67, 0x59, 0x96,
323ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x99, 0xAB, 0xB0, 0x4A, 0xCA, 0x76, 0xAB, 0x42,
324ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xBD, 0xDE, 0xB4, 0x92, 0x85, 0x35, 0xA4, 0xA7,
325ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x9B, 0xCE, 0x31, 0x19, 0x4D, 0x2C, 0x4D, 0x38,
326ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD2, 0xEC, 0x29, 0x77, 0xFA, 0xC2, 0x67, 0x2A,
327ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x37, 0x13, 0xED, 0xCF, 0x74, 0xAE, 0xFC, 0x10,
328ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x03, 0x33, 0x80, 0xFA, 0xCE, 0xFE, 0x13, 0xFC,
329ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xB0, 0xCD, 0x32, 0x5C, 0x31, 0x32, 0x3C, 0x6E,
330ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x75, 0x38, 0x00, 0x79, 0x2D, 0x4C, 0x84, 0xDA,
331ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x33, 0x13, 0x91, 0x69, 0x99, 0x95, 0xEB, 0x7C,
332ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x92, 0xB9, 0xA2, 0xF6, 0x75, 0x8A, 0xA3, 0xD1,
333ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD3, 0xA0, 0x79, 0xA6, 0x1D, 0xCD, 0x3C, 0x84,
334ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x38, 0x90, 0x38, 0xD3, 0x89, 0xB4, 0x84, 0xDD,
335ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xEA, 0x0F, 0xF3, 0x25, 0xC3, 0x13, 0x23, 0xC6,
336ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE7, 0x53, 0x80, 0x66, 0x03, 0x33, 0x25, 0xC3,
337ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x13, 0x23, 0xC6, 0xE7, 0x53, 0x86, 0x60, 0x33,
338ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x32, 0x5C, 0x31, 0x32, 0x3C, 0x6E, 0x75, 0x38,
339ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x06, 0x61, 0x08, 0x40, 0x06, 0x67, 0xB5, 0x86,
340ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x26, 0xBB, 0x82, 0xCE, 0xA0, 0x14, 0xC9, 0x70,
341ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC4, 0xC8, 0xF1, 0xB9, 0xD4, 0xE2, 0x9E, 0xD6,
342ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x18, 0x9A, 0xEE, 0x0B, 0x3A, 0x80, 0x53, 0x25,
343ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC3, 0x13, 0x23, 0xC6, 0xE7, 0x53, 0x80, 0x66,
344ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x10, 0x84, 0x02, 0x03, 0x33, 0x25, 0xC3, 0x13,
345ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x23, 0xC6, 0xE7, 0x53, 0x86, 0x60, 0x33, 0x32,
346ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x5C, 0x31, 0x32, 0x3C, 0x6E, 0x75, 0x38, 0x0A,
347ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x7B, 0x58, 0x62, 0x6B, 0xB8, 0x2C, 0xEA, 0x01,
348ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x4F, 0x6B, 0x0C, 0x4D, 0x77, 0x05, 0x9D, 0x40,
349ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x29, 0xED, 0x61, 0x89, 0xAE, 0xE0, 0xB3, 0xA8,
350ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x05, 0x3D, 0xAC, 0x31, 0x35, 0xDC, 0x16, 0x75,
351ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x00, 0x06, 0x61, 0x08, 0x40, 0x31, 0x9C, 0xEB,
352ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x65, 0x86, 0xEE, 0x5F, 0xD7, 0x2C, 0x93, 0xA6,
353ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x36, 0x66, 0x4D, 0x95, 0xB8, 0xFF, 0x00, 0x82,
354ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xDD, 0x88, 0x0F, 0xB5, 0x5A, 0xAA, 0x4E, 0xF9,
355ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xF8, 0x11, 0x21, 0x94, 0x52, 0x12, 0x9E, 0xF3,
356ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA3, 0xBB, 0x61, 0x07, 0xB5, 0x35, 0xC6, 0x31,
357ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xEC, 0x4A, 0xCE, 0x25, 0x9D, 0x94, 0x19, 0x97,
358ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD1, 0xA3, 0x72, 0x4A, 0x5B, 0x55, 0x9E, 0x4D,
359ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD1, 0x75, 0x55, 0xBA, 0x88, 0x2D, 0x25, 0x21,
360ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xDD, 0x29, 0xE7, 0x10, 0xE3, 0xA9, 0x1C, 0x43,
361ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x8E, 0xDB, 0xBA, 0x94, 0x37, 0x10, 0x78, 0xB3,
362ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x80, 0xFA, 0xCE, 0xFE, 0x13, 0xFC, 0xB0, 0xCD,
363ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x32, 0x5C, 0x31, 0x32, 0x3C, 0x6E, 0x75, 0x38,
364ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x0B, 0x57, 0x6F, 0xDB, 0xB4, 0x5F, 0x82, 0x94,
365ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xBC, 0xC0, 0xCE, 0x6B, 0x8C, 0x63, 0xD8, 0x95,
366ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x9C, 0x4B, 0x3B, 0x28, 0x33, 0x2F, 0xA3, 0x46,
367ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE4, 0x94, 0xB6, 0xAB, 0x3C, 0x9B, 0xA2, 0xEA,
368ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xAB, 0x75, 0x10, 0x5A, 0x4A, 0x43, 0xBA, 0x53,
369ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xCE, 0x21, 0xC7, 0x52, 0x38, 0x87, 0x1D, 0xB7,
370ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x75, 0x28, 0x6E, 0x20, 0xD6, 0x40, 0x66, 0x64,
371ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xB8, 0x62, 0x64, 0x78, 0xDC, 0xEA, 0x70, 0x16,
372ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xB1, 0x1F, 0xB7, 0x67, 0x4F, 0x1A, 0xA9, 0x79,
373ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x45, 0xAC, 0x47, 0xED, 0xD9, 0xD3, 0xC6, 0xAA,
374ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x5E, 0x50, 0xCC, 0x20, 0x19, 0x36, 0x74, 0x6D,
375ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x9B, 0xD8, 0x95, 0x9C, 0x4B, 0x45, 0x27, 0xB4,
376ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xCE, 0x5F, 0x46, 0xE4, 0x94, 0xB6, 0x5B, 0x44,
377ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA5, 0xA5, 0x0A, 0xAB, 0x75, 0x10, 0x5A, 0x44,
378ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x53, 0x7A, 0x23, 0x0D, 0x21, 0xC7, 0x52, 0x38,
379ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x86, 0x9B, 0xB3, 0x75, 0x28, 0xEE, 0x20, 0xA6,
380ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xB8, 0xD9, 0xBD, 0x89, 0x25, 0xC4, 0xB3, 0xB2,
381ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x7B, 0x32, 0xE5, 0xF4, 0x92, 0x49, 0x45, 0x6A,
382ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xB3, 0xCA, 0x5A, 0x50, 0xAA, 0xA9, 0x5F, 0x15,
383ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA4, 0xA5, 0x3B, 0xA2, 0x3C, 0xD2, 0x9C, 0x6D,
384ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x13, 0x8A, 0x71, 0xBB, 0x77, 0xD1, 0x8E, 0xE2,
385ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x84, 0xC9, 0xED, 0x61, 0x89, 0xAE, 0xE0, 0xB3,
386ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xA8, 0x05, 0x32, 0x5C, 0x31, 0x32, 0x3C, 0x6E,
387ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x75, 0x38, 0x0B, 0x58, 0x8F, 0xDB, 0xB3, 0xA7,
388ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x8D, 0x54, 0xBC, 0xA2, 0xD6, 0x23, 0xF6, 0xEC,
389ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE9, 0xE3, 0x55, 0x2F, 0x28, 0x66, 0x10, 0x01,
390ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x9D, 0x62, 0x3F, 0x6E, 0xCE, 0x9E, 0x35, 0x52,
391ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xF2, 0x8F, 0x6A, 0x6B, 0x8C, 0xB4, 0xBA, 0xC5,
392ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xB8, 0x96, 0x75, 0x99, 0x69, 0x94, 0x6C, 0x12,
393ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xB2, 0x9D, 0xAA, 0xD0, 0xAF, 0x5A, 0x62, 0x4A,
394ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x14, 0xD6, 0x92, 0x9E, 0x6F, 0x38, 0xC2, 0x94,
395ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD2, 0xC4, 0xD3, 0x8D, 0x2E, 0xC2, 0x97, 0x7F,
396ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xAC, 0x26, 0x08, 0x00, 0xCC, 0xF6, 0xB0, 0xC4,
397ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xD7, 0x70, 0x59, 0xD4, 0x02, 0x9E, 0xD6, 0x18,
398ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x9A, 0xEE, 0x0B, 0x3A, 0x80, 0x53, 0xDA, 0xC3,
399ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x13, 0x5D, 0xC1, 0x67, 0x50, 0x0A, 0x7B, 0x58,
400ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x62, 0x6B, 0xB8, 0x2C, 0xEA, 0x00, 0x0C, 0xC2,
401ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x10, 0x80, 0x63, 0x39, 0xC0, 0x7D, 0x67, 0x7F,
402ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x09, 0xFE, 0x58, 0x66, 0x99, 0x2E, 0x18, 0x99,
403ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1E, 0x37, 0x3A, 0x9C, 0x0C, 0xCE, 0x03, 0xEB,
404ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x3B, 0xF8, 0x4F, 0xF2, 0xC3, 0x34, 0xC9, 0x70,
405ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xC4, 0xC8, 0xF1, 0xB9, 0xD4, 0xE0, 0x19, 0x80,
406ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xCC, 0xC9, 0x70, 0xC4, 0xC8, 0xF1, 0xB9, 0xD4,
407ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0xE1, 0x98, 0x0C, 0xCC, 0x97, 0x0C, 0x4C, 0x8F,
408ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.org0x1B, 0x9D, 0x4E, 0x03, 0xFF, 0xD9};
409ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.orgstatic const int goodJpegImageWidth = 128;
410ddf94cf108ae430877f009bd67b9070341426947commit-bot@chromium.orgstatic const int goodJpegImageHeight = 128;
411fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com
412fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com// https://code.google.com/p/android/issues/detail?id=42382
413fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com// https://code.google.com/p/android/issues/detail?id=9064
414fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com// https://code.google.com/p/skia/issues/detail?id=1649
415fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com
416fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com/**
417fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com  This test will test the ability of the SkImageDecoder to deal with
418fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com  Jpeg files which have been mangled somehow.  We want to display as
419fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com  much of the jpeg as possible.
420fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com*/
421e4fafb146e85cdfcf9d5418597b6818aa0754adatfarina@chromium.orgDEF_TEST(Jpeg, reporter) {
422fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    size_t len = sizeof(goodJpegImage) / 2;
423fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    // I am explicitly not putting the entire image into the
424fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    // DecodeMemory.  This simulates a network error.
425fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com
426fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    SkBitmap bm8888;
427fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    bool imageDecodeSuccess = SkImageDecoder::DecodeMemory(
428fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com        static_cast<void *>(goodJpegImage), len, &bm8888);
429fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    REPORTER_ASSERT(reporter, imageDecodeSuccess);
430fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    REPORTER_ASSERT(reporter, bm8888.width() == goodJpegImageWidth);
431fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    REPORTER_ASSERT(reporter, bm8888.height() == goodJpegImageHeight);
432fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    REPORTER_ASSERT(reporter, !(bm8888.empty()));
433fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com
434fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    // Pick a few pixels and verify that their colors match the colors
435fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    // we expect (given the original image).
436fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    REPORTER_ASSERT(reporter, bm8888.getColor(7, 9) == 0xffffffff);
437fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    REPORTER_ASSERT(reporter, bm8888.getColor(28, 3) == 0xff000000);
438fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    REPORTER_ASSERT(reporter, bm8888.getColor(27, 34) == 0xffffffff);
439fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    REPORTER_ASSERT(reporter, bm8888.getColor(71, 18) == 0xff000000);
440fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com
441936b73424f7393994be832376287da988a52b993caryclark#ifdef SK_BUILD_FOR_IOS  // the iOS jpeg decoder fills to gray
442936b73424f7393994be832376287da988a52b993caryclark    REPORTER_ASSERT(reporter, bm8888.getColor(127, 127) == 0xff808080
443936b73424f7393994be832376287da988a52b993caryclark            || bm8888.getColor(127, 127) == SK_ColorWHITE);
444936b73424f7393994be832376287da988a52b993caryclark#else
445fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    // This is the fill color
446fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    REPORTER_ASSERT(reporter, bm8888.getColor(127, 127) == SK_ColorWHITE);
447936b73424f7393994be832376287da988a52b993caryclark#endif
448fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com
449fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    #if JPEG_TEST_WRITE_TO_FILE_FOR_DEBUGGING
450fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    // Check to see that the resulting bitmap is nice
451fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    bool writeSuccess = (!(bm8888.empty())) && SkImageEncoder::EncodeFile(
452fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com        "HalfOfAJpeg.png", bm8888, SkImageEncoder::kPNG_Type, 100);
453fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    SkASSERT(writeSuccess);
454fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com    #endif
455fed3037217e51ecd2fcd794a4d35fc7f689dd23dhalcanary@google.com}
456b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi
457b227e37eae36ccf630c4baef00b1354d42b40fd1sugoiDEF_TEST(Jpeg_YUV, reporter) {
458b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    size_t len = sizeof(goodJpegImage);
459b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    SkMemoryStream* stream = SkNEW_ARGS(SkMemoryStream, (goodJpegImage, len));
460b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi
461b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    SkBitmap bitmap;
462b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    SkDecodingImageGenerator::Options opts;
463b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    bool pixelsInstalled = SkInstallDiscardablePixelRef(
464b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi                SkDecodingImageGenerator::Create(stream, opts), &bitmap);
465b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    REPORTER_ASSERT(reporter, pixelsInstalled);
466b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi
467b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    if (!pixelsInstalled) {
468b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi        return;
469b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    }
470b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi
471b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    SkPixelRef* pixelRef = bitmap.pixelRef();
472b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    SkISize yuvSizes[3];
473b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    bool sizesComputed = (NULL != pixelRef) && pixelRef->getYUV8Planes(yuvSizes, NULL, NULL, NULL);
474b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    REPORTER_ASSERT(reporter, sizesComputed);
475b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi
476b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    if (!sizesComputed) {
477b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi        return;
478b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    }
479b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi
480b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    // Allocate the memory for YUV
481b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    size_t totalSize(0);
482b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    size_t sizes[3], rowBytes[3];
483b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    const int32_t expected_sizes[] = {128, 64, 64};
484b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    for (int i = 0; i < 3; ++i) {
485b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi        rowBytes[i] = yuvSizes[i].fWidth;
486b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi        totalSize  += sizes[i] = rowBytes[i] * yuvSizes[i].fHeight;
487b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi        REPORTER_ASSERT(reporter, rowBytes[i]         == (size_t)expected_sizes[i]);
488b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi        REPORTER_ASSERT(reporter, yuvSizes[i].fWidth  == expected_sizes[i]);
489b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi        REPORTER_ASSERT(reporter, yuvSizes[i].fHeight == expected_sizes[i]);
490b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    }
491b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    SkAutoMalloc storage(totalSize);
492b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    void* planes[3];
493b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    planes[0] = storage.get();
494b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    planes[1] = (uint8_t*)planes[0] + sizes[0];
495b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    planes[2] = (uint8_t*)planes[1] + sizes[1];
496b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi
497b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    // Get the YUV planes
498b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi    REPORTER_ASSERT(reporter, pixelRef->getYUV8Planes(yuvSizes, planes, rowBytes, NULL));
499b227e37eae36ccf630c4baef00b1354d42b40fd1sugoi}
500