Per today's API OWNERs meeting, a dumb question: is the XSS risk here 
largely down to script execution triggered by this pattern? Or non-script 
content in the inline'd SVG?

Thanks

On Tuesday, January 17, 2023 at 10:52:29 PM UTC-8 Jun Kokatsu wrote:

> On Tue, Jan 17, 2023 at 11:36 AM Brandon Heenan <bhee...@google.com> 
> wrote:
>
>> Thanks for adding me. Yes, this definitely seems like the pattern where 
>> we'd want a temporary enterprise policy to re-enable support for ~3 
>> milestones after we remove support by default.  
>> go/chrome-enterprise-friendly 
>> <https://goto.google.com/chrome-enterprise-friendly> gets into the 
>> details of the why, 
>> https://source.chromium.org/chromium/chromium/src/+/main:docs/enterprise/add_new_policy.md
>>  
>> is the step-by-step, and the enterprise team is always happy to advise as 
>> well.
>>
>  
> Thank you for the details on enterprise policy! I'll make sure to follow 
> those steps when I plan to remove the feature by default! 
>
>> On Tue, Jan 17, 2023 at 10:51 AM Rick Byers <rby...@chromium.org> wrote:
>>
>>> On Tue, Jan 17, 2023 at 4:48 AM Yoav Weiss <yoavwe...@chromium.org> 
>>> wrote:
>>>
>>>> Would it be possible to turn 
>>>> <https://source.chromium.org/chromium/chromium/src/+/main:components/page_load_metrics/browser/observers/use_counter/ukm_features.cc;l=30?q=ukm%20usecounter&ss=chromium>
>>>>  
>>>> the usecounter into a UKM to get a better view of the number of impacted 
>>>> origins, beyond just the homepage?
>>>>
>>>
>>> Yeah that could be useful. But we've also got some leads already so 
>>> getting more leads may not be critical until we follow up on the ones we 
>>> have. Can we find a developer for one of those sites who will talk to us 
>>> about where that pattern is coming from in their toolchain and how they'd 
>>> migrate off it? Having the UKM data will also help in selecting the sites 
>>> that will have the most impact on our users (and hence our UseCounter 
>>> stats). Maybe we'll get lucky and find that, despite the long tail, 90% of 
>>> the usage is from just a few sites we can work with.
>>>
>>  
> Added UKM at https://crrev.com/c/4171733.
>
>>
>>> I wonder if this would be a good candidate for a deprecation trial + 
>>>> enterprise policy. That would solve this injection vector for the broader 
>>>> web, while giving impacted folks some more time to move away from this 
>>>> pattern.
>>>>
>>>
>>> Good idea. Impacting a large number of small sites is still problematic 
>>> for a deprecation trial. Just reaching enough to make any change at all is 
>>> the hard part. Perhaps we can make replacing the usage easier than the 
>>> overhead of getting an applying an OT token? Still a deprecation trial 
>>> would probably be useful. Enterprise policy, certainly. +Brandon Heenan 
>>> <bhee...@google.com> can help advise on that. I'd also advise leaving 
>>> this enabled for WebView (at least to start), it feels like the sort of 
>>> chromium rendering quirk we've found Android apps to rely on 
>>> disproportionately in the past.
>>>
>>> On Fri, Jan 13, 2023 at 9:11 PM 'Jun Kokatsu' via blink-dev <
>>>> blink-dev@chromium.org> wrote:
>>>>
>>>>> Thank you Rick for the detailed explanation!
>>>>>
>>>>> On Fri, Jan 13, 2023 at 10:30 AM Rick Byers <rby...@chromium.org> 
>>>>> wrote:
>>>>>
>>>>>> Eliminating this makes sense to me given the security benefit. Thank 
>>>>>> you for pushing it! But it does seem somewhat risky from a web compat 
>>>>>> perspective. 0.005% is above our "small but non-trivial risk 
>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.mqfkui78vo5z>"
>>>>>>  
>>>>>> rule of thumb. Here's a bit of an analysis according to our other compat 
>>>>>> principles <http://bit.ly/blink-compat>:
>>>>>>
>>>>>>    - Severity of breakage 
>>>>>>    
>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.u5ya6jvru7dl>:
>>>>>>  
>>>>>>    lower given this is likely only about some visualis, but this site 
>>>>>>    <https://jobs.nzz.ch/> is a good example of non-trivial UI 
>>>>>>    breakage. This pattern of putting a base64-encoded SVG into an SVG 
>>>>>> <use> 
>>>>>>    element with nothing else in the <svg> is weird, isn't it? Why would 
>>>>>>    someone do that rather than just put the SVG in directly, or put the 
>>>>>> data 
>>>>>>    URL into an img tag?
>>>>>>
>>>>>> I've looked into that site. And it seems like they are reusing a 
>>>>> single SVG image (i.e. data: URL SVG image) which contains several 
>>>>> images, 
>>>>> and changing which image should be rendered by combination of symbol 
>>>>> <https://developer.mozilla.org/en-US/docs/Web/SVG/Element/symbol> + 
>>>>> id (which is only possible in use element, and not in img tag). Migration 
>>>>> can be done by hosting the same image in the same-origin endpoint, 
>>>>> converting it to blob: URL and assigning that to the <use> element, or 
>>>>> inlining each SVG image.
>>>>>
>>>>
>>> Interesting. So could we write a tool which, given the source html, 
>>> transforms it to simply inline the selected SVG? That would save some bytes 
>>> too, right? We've found in the past that when we give developers easy tools 
>>> to trivially adapt their code, then it makes moderate-risk deprecations go 
>>> quite smoother. I.e. when we get to the point of having a deprecation 
>>> warning (and report <https://wicg.github.io/deprecation-reporting/>) 
>>> for the usage, if we can simply say "for most cases we've found you can 
>>> just run your html through this tool to adapt it automatically", then that 
>>> would help a LOT in having the comfort to make the breaking change. Someone 
>>> from the devrel or tooling teams with experience in how developers approach 
>>> images in practice (eg. +Addy Osmani <ad...@chromium.org>) might be 
>>> able to advise on a pragmatic and helpful path. 
>>>
>>
> I've created a site to convert data: URLs in SVGUseElement to inline SVG.
> https://data-urls-in-svg-converter.glitch.me/ 
>
>>
>>>>>>    - I don't suppose there's some creative way to allow this 
>>>>>>    specific odd pattern while still getting the security benefit, is 
>>>>>> there?
>>>>>>    
>>>>>> Unfortunately, no. While we could read the href value of <use> 
>>>>> elements and convert the data: URL to blob: URL, we won't know if the 
>>>>> data: 
>>>>> URL was set by the site owner, or a malicious attacker (through HTML 
>>>>> injection). So while we could provide such a library, it does not provide 
>>>>> the security benefit that we are seeking.
>>>>>
>>>>>>
>>>>>>    - Unique sites impacted 
>>>>>>    
>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.4k9u8ddizqrq>:
>>>>>>  
>>>>>>    Finding a variety of small sites is actually a lot worse than if we 
>>>>>> had 
>>>>>>    found only a few bigger sites. It means there's probably some common 
>>>>>> tool 
>>>>>>    or pattern leading different designers/developers to do this and so 
>>>>>> likely 
>>>>>>    a relatively large number of individuals who would need to be 
>>>>>> involved in 
>>>>>>    fixing the breakage. Of course our HTTP Archive list of sites is just 
>>>>>> a 
>>>>>>    subset of who's fully impacted, so if the problem is a long-tail one 
>>>>>> as it 
>>>>>>    seems, HTTP archive data shows us only the tip of that long tail.
>>>>>>    - Security 
>>>>>>    
>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.iklh96dxj81w>:
>>>>>>  
>>>>>>    it's definitely worth taking some comapt risk to reduce XSS surface 
>>>>>> area. I 
>>>>>>    don't fully understand the threat model though. Is this mainly a risk 
>>>>>> for 
>>>>>>    sites who are programmatically putting (potentially 
>>>>>> attacker-controlled) 
>>>>>>    strings into SVGUseElement hrefs? Or are you more worried about cases 
>>>>>> where 
>>>>>>    the attacker controls the HTML and can take advantage of this oddity 
>>>>>> in the 
>>>>>>    platform on any normal site? I'm just trying to gauge the magnitude 
>>>>>> of the 
>>>>>>    security benefit here to weigh it against the comapt risk, any help 
>>>>>> is 
>>>>>>    appreciated.
>>>>>>
>>>>>> We are worried about both (i.e. Server-side injection and DOM XSS). 
>>>>> The fact that this has led to several browser security feature bypasses 
>>>>> (e.g. Sanitizer API and Trusted Types) suggests that it's not a commonly 
>>>>> known XSS sink, and therefore we believe that it's common for security 
>>>>> mechanisms (e.g. sanitizers, linters) to miss this odd feature.
>>>>>
>>>>>>
>>>>>>    - Ease of adaptation 
>>>>>>    
>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.x5bhg5grhfeo>:
>>>>>>  
>>>>>>    seems like it should be easy to use an alternative, at least for 
>>>>>> these 
>>>>>>    image cases, but I guess it's hard to say without knowing why people 
>>>>>> are 
>>>>>>    doing this. Is there perhaps some website design tool which is 
>>>>>> generating 
>>>>>>    this and will need to change?
>>>>>>
>>>>>> I think it is easy to migrate by hosting the same image to the 
>>>>> same-origin endpoint. However, I do understand that it's just less work 
>>>>> to 
>>>>> use data: URL than using same-origin image or blob: URL.
>>>>>
>>>>>>
>>>>>>    - Interop 
>>>>>>    
>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.4hjbxw7513sw>:
>>>>>>  
>>>>>>    The fact that this doesn't work in Safari is a vote in favor of 
>>>>>> breaking it 
>>>>>>    in chromium to achieve interop. It does work in Firefox though.
>>>>>>
>>>>>>  For the interop, it's best to use a same-origin URL or blob: URL. 
>>>>> And since both Mozilla and Webkit are supportive, I believe it's positive.
>>>>>
>>>>>>
>>>>>>    - Standards conformance 
>>>>>>    
>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.xcsa26ortrmi>:
>>>>>>  
>>>>>>    This is allowed by spec today, so breaking it requires some more 
>>>>>> diligence
>>>>>>
>>>>>> Note that the PR <https://github.com/w3c/svgwg/pull/901> to SVG spec 
>>>>> got merged.
>>>>>
>>>>
>>> Right, yes, sorry. What I meant was we took the initiative to make a 
>>> breaking change to long established behavior - IMHO that makes the bar 
>>> higher than if Chrome had just had a bug in allowing something that was 
>>> never spec'd or allowed by other browsers. Still I think we can use this 
>>> positively in our outreach - say something like "the spec has changed to 
>>> not allow this, all the major browser engines agree that for security 
>>> reasons it should be disallowed. It already doesn't work in Safari and 
>>> other WebKit browsers, we want to help you fix your site to work in all 
>>> browsers". 
>>>
>>>>
>>>>>>    - Enterprise 
>>>>>>    
>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.axcg738lzcs9>:
>>>>>>  
>>>>>>    Being broken in Safari is an indication the risk will be higher in 
>>>>>>    enterprise software which is often chromium-only. We may need to go 
>>>>>> through 
>>>>>>    the enterprise breaking change process 
>>>>>>    <https://www.chromium.org/developers/enterprise-changes/>.
>>>>>>    - Outreach 
>>>>>>    
>>>>>> <https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpSpNJ96U8trhNkfV0v9fk/edit#heading=h.t9ade4ywppcg>:
>>>>>>  
>>>>>>    Given the relatively high usage, if we want to proceed with this plan 
>>>>>> I 
>>>>>>    think this is the main opportunity for mitigations. Can we try 
>>>>>> contacting 
>>>>>>    some of these sites we've identified to understand why they're using 
>>>>>> this 
>>>>>>    pattern? Is there a tool generating this pattern which we can get 
>>>>>> updated 
>>>>>>    before we make the change? I think we'd need a blog post capturing 
>>>>>> what 
>>>>>>    we've learned from talking with a few customers who have done this 
>>>>>> and how 
>>>>>>    they fixed it for their UI design flow.
>>>>>>
>>>>>> Sorry it's not looking to be an easy decision, but I hope this gives 
>>>>>> you some ideas for how we might be able to reduce the risk to a point 
>>>>>> that 
>>>>>> we could proceed. WDYT?
>>>>>>
>>>>>
>>>>> Yes, it sounds good to me! I will check what has to be done and do 
>>>>> those step by step 🙂
>>>>>
>>>>
>>> Ok, good luck! Sorry this isn't as straightforward as a clear recipe.  
>>> But if we can get a couple developers telling us they were easily able to 
>>> fix their issue by using a tool or straightforward instructions we can 
>>> point other to, and we see the UseCounter drop significantly (say by half 
>>> or so) without major new red flags, then I'd personally be OK approving a 
>>> removal attempt. Of course it's common to learn during beta (or, worst 
>>> case, upon stable release) that the compat issue is worse than we thought 
>>> and so the change needs to be reverted (or flagged off with finch) in a 
>>> hurry. But I think we've learned a lot over the years about how to predict 
>>> and avoid that failure mode. Let me know if I can do anything else to help, 
>>> happy to meet to brainstorm further for example. Good luck!
>>>
>>
> Thanks! I'll start outreach for a couple of sites we already know are 
> affected, and go from there! 
>
>>
>>>
>>>>>> Rick
>>>>>>
>>>>>> On Thu, Jan 12, 2023 at 3:11 PM 'Jun Kokatsu' via blink-dev <
>>>>>> blink-dev@chromium.org> wrote:
>>>>>>
>>>>>>> On Thu, Jan 12, 2023 at 10:44 AM Mike Taylor <miketa...@chromium.org> 
>>>>>>> wrote:
>>>>>>>
>>>>>>>> On 1/11/23 6:49 PM, 'Jun Kokatsu' via blink-dev wrote:
>>>>>>>>
>>>>>>>> Contact emails 
>>>>>>>>
>>>>>>>> jkoka...@google.com
>>>>>>>>
>>>>>>>> Specification 
>>>>>>>>
>>>>>>>> https://svgwg.org/svg2-draft/struct.html#UseElementHrefAttribute
>>>>>>>>
>>>>>>>> https://github.com/w3c/svgwg/pull/901/files
>>>>>>>>
>>>>>>>> Summary 
>>>>>>>>
>>>>>>>> Assigning a data: URL in SVGUseElement can cause XSS. And this also 
>>>>>>>> led to a Trusted Types bypass.
>>>>>>>>
>>>>>>>> Therefore, we plan to deprecate and remove support for it.
>>>>>>>>
>>>>>>>>
>>>>>>>> Blink component 
>>>>>>>>
>>>>>>>> Blink>SVG 
>>>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ESVG>
>>>>>>>>
>>>>>>>> Motivation 
>>>>>>>>
>>>>>>>> Assigning an attacker controlled string to SVGUseElement.href 
>>>>>>>> causes XSS and a Trusted Types bypass 
>>>>>>>> <https://github.com/w3c/trusted-types/issues/357> because of data: 
>>>>>>>> URLs. If we fix this bug by requiring TrustedScriptURL assignment to 
>>>>>>>> SVGUseElement.href under Trusted Types enforcement, many sites would 
>>>>>>>> need 
>>>>>>>> to refactor code (even for same-origin URL or Blob URL assignment).
>>>>>>>>
>>>>>>>> Since Webkit does not support data: URLs in SVGUseElement and both 
>>>>>>>> Mozilla and Webkit are supportive for the removal, we think that 
>>>>>>>> removing 
>>>>>>>> support for data: URLs in SVGUseElement is the right way to solve this 
>>>>>>>> problem.
>>>>>>>>
>>>>>>>> Additionally, data: URLs can only trigger script execution in 
>>>>>>>> script loaders such as HTMLScriptElement.src or dynamic import 
>>>>>>>> <https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/import>.
>>>>>>>>  
>>>>>>>> However, SVGUseElement is an exception to this, which also caused a 
>>>>>>>> bypass 
>>>>>>>> <https://bugs.chromium.org/p/chromium/issues/detail?id=1306450#c10> 
>>>>>>>> in the Sanitizer API. We believe that this also led to several other 
>>>>>>>> bugs 
>>>>>>>> in sanitizers and linters missing a check for this special case.
>>>>>>>>
>>>>>>>> The usage 
>>>>>>>> <https://chromestatus.com/metrics/feature/timeline/popularity/4356> 
>>>>>>>> of data: URLs in SVGUseElement is about 0.005%.
>>>>>>>>
>>>>>>>> Digging into the HTTP Archive shows usages in ~50 sites. There are 
>>>>>>>> 2 major sites (slickdeals.net and hunter.104.com.tw) which use 
>>>>>>>> data: URLs in SVGUseElement.
>>>>>>>>
>>>>>>>> The use in slickdeals.net is invisible (i.e. used in the footer 
>>>>>>>> but doesn't appear), and hunter.104.com.tw is using it for a 
>>>>>>>> single icon in the footer (which is already broken when rendered in 
>>>>>>>> Webkit). Rest of the usages seems to be in individual small sites.
>>>>>>>>
>>>>>>>> I poked around the 10 sample sites at the bottom of the use 
>>>>>>>> counter: 
>>>>>>>>
>>>>>>>> https://www.aspareanord.it/, https://www.umbria.camcom.it, 
>>>>>>>> https://www.bisenzio.it/, https://www.comune.vernio.po.it/, 
>>>>>>>> https://appaltinnovativi.gov.it/, https://www.gdf.gov.it/, 
>>>>>>>> https://www.us.schott.com/, https://shop.wavin.com/, 
>>>>>>>> https://jobs.nzz.ch/, https://www.learnapp.com/
>>>>>>>>
>>>>>>>> For the 6 Italian sites (I guess the same agency made them?), the 
>>>>>>>> right arrow icon next to "Vedi" would disappear. For a site like 
>>>>>>>> https://jobs.nzz.ch - there's a number of visually significant 
>>>>>>>> design icons that would be gone towards the bottom (and yes, it looks 
>>>>>>>> sort 
>>>>>>>> of broken today in Safari). 
>>>>>>>>
>>>>>>>> It's not the end of the world, looking at these 10 sites, but I 
>>>>>>>> wonder how a developer would know how to fix this. Have you considered 
>>>>>>>> a 
>>>>>>>> DevTools issue?
>>>>>>>>
>>>>>>>
>>>>>>> Thank you for the suggestion! Yes, I do plan to follow Deprecation 
>>>>>>> steps 
>>>>>>> <https://chromium.googlesource.com/chromium/src/+/HEAD/third_party/blink/renderer/core/frame/deprecation/README.md>
>>>>>>>  and 
>>>>>>> add a Devtools issue 🙂
>>>>>>>
>>>>>>>> Initial public proposal 
>>>>>>>>
>>>>>>>> TAG review 
>>>>>>>>
>>>>>>>> TAG review status 
>>>>>>>>
>>>>>>>> Not applicable.
>>>>>>>>
>>>>>>>> Because this intent removes part of a feature, and it is already 
>>>>>>>> shipped in Webkit (i.e. never supported).
>>>>>>>>
>>>>>>>> Risks 
>>>>>>>>
>>>>>>>> Interoperability and Compatibility 
>>>>>>>>
>>>>>>>> Gecko: Positive 
>>>>>>>> <https://github.com/mozilla/standards-positions/issues/718>
>>>>>>>>
>>>>>>>> WebKit: Positive 
>>>>>>>> <https://github.com/WebKit/standards-positions/issues/108>
>>>>>>>>
>>>>>>>> Web developers: No signals
>>>>>>>>
>>>>>>>>
>>>>>>>> Debuggability 
>>>>>>>>
>>>>>>>> Is this feature fully tested by web-platform-tests 
>>>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>>>>>>> ? 
>>>>>>>>
>>>>>>>> Yes <https://github.com/web-platform-tests/wpt/pull/37511>
>>>>>>>>
>>>>>>>> Flag name 
>>>>>>>>
>>>>>>>> RemoveDataUrlInSvgUse
>>>>>>>>
>>>>>>>>
>>>>>>>> Requires code in //chrome? 
>>>>>>>>
>>>>>>>> False
>>>>>>>>
>>>>>>>> Tracking bug 
>>>>>>>>
>>>>>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1300195
>>>>>>>>
>>>>>>>> Estimated milestones 
>>>>>>>>
>>>>>>>> Deprecate for 2 milestones, then remove depending on breakages.
>>>>>>>>
>>>>>>>> Can you say more about what the deprecation looks like (i.e., blog 
>>>>>>>> post, deprecation reports, devtools issue, etc)? 
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Link to entry on the Chrome Platform Status 
>>>>>>>>
>>>>>>>> https://chromestatus.com/feature/5128825141198848
>>>>>>>>
>>>>>>>> This intent message was generated by Chrome Platform Status 
>>>>>>>> <https://chromestatus.com/>.
>>>>>>>> -- 
>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>> Groups "blink-dev" group.
>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>> send an email to blink-dev+unsubscr...@chromium.org.
>>>>>>>> To view this discussion on the web visit 
>>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF6VXw7jmQoZM47i3ybzn%3D5Pc4mw26Khv9U9aP_UzBt-dg%40mail.gmail.com
>>>>>>>>  
>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF6VXw7jmQoZM47i3ybzn%3D5Pc4mw26Khv9U9aP_UzBt-dg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>> .
>>>>>>>>
>>>>>>>>
>>>>>>>> -- 
>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>> Groups "blink-dev" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>> send an email to blink-dev+unsubscr...@chromium.org.
>>>>>>> To view this discussion on the web visit 
>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF5KQOG5R8baUM41T4fR01QbGFjvvEsf629h%2BzASCn_F0Q%40mail.gmail.com
>>>>>>>  
>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF5KQOG5R8baUM41T4fR01QbGFjvvEsf629h%2BzASCn_F0Q%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>>
>>>>>> -- 
>>>>> You received this message because you are subscribed to the Google 
>>>>> Groups "blink-dev" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>> an email to blink-dev+unsubscr...@chromium.org.
>>>>> To view this discussion on the web visit 
>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF65KcSCkzVupRw4n8ZG%3DKKbG5GY62HzwNSZW4Z78ZYd_w%40mail.gmail.com
>>>>>  
>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOWKMF65KcSCkzVupRw4n8ZG%3DKKbG5GY62HzwNSZW4Z78ZYd_w%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>>
>>>>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/d63c3823-20b6-457c-bff9-f85429421bf0n%40chromium.org.

Reply via email to