LGTM2

At the API owner meeting, Jeffrey explained to me that the issuers are 
controlled by the top-level, so I'm comfortable with the model (and the 
fact that ad providers won't fight for the 2 slots in ways that the site 
owner can't control).

On Wednesday, November 6, 2024 at 4:15:09 PM UTC+1 Yoav Weiss wrote:

> How likely are we to get multiple 3Ps on the page with each using its own 
> issuer?
>
> On Wednesday, November 6, 2024 at 1:19:49 AM UTC+1 Chris Harrelson wrote:
>
>> LGTM1
>>
>> On Thu, Oct 31, 2024 at 8:59 AM Ari Chivukula <aric...@chromium.org> 
>> wrote:
>>
>>>
>>>>    - In case of the user denies giving consent to X vendors / tech via 
>>>>    the CMP (Consent Management Platform), will the token be shared cross 
>>>> site 
>>>>    if a wildcard is set anyway? The question also works with the Global 
>>>>    privacy control
>>>>
>>>> I think this is unrelated to the work here as that's a question about 
>>> how any permissions policy would work with CMP/GPC, and not this specific 
>>> change.
>>>
>>>
>>>>    - Is there a way to prevent any adtech to redeem the token to 
>>>>    display an ads anywhere outside? (But I think this question is already 
>>>> in 
>>>>    the blink discussion)
>>>>
>>>> I'm having trouble parsing the question, but if the question is whether 
>>> adtech could redeem a token and then later take action based on past 
>>> redemption the answer is yes as long as it's the same context storage wise 
>>> (otherwise there wouldn't be a way to know a past redemption had occured).
>>>
>>>
>>>>    - Not related but somehow related, if the token is considered First 
>>>>    party tracking (Potential risk noted in the spec 
>>>>    
>>>> <https://github.com/WICG/trust-token-api/blob/main/README.md#first-party-tracking-potential>)
>>>>  
>>>>    then combined with the wildcard, you have a cross site tracking : How 
>>>> to 
>>>>    prevent that?
>>>>
>>>> The first-party tracking potential you link to isn't about 
>>> third-parties accessing data but first-parties reading the redemption 
>>> records (this is only available in a top-level frame). The mitigation 
>>> described in the explainer still applies as this change does not impact the 
>>> availability of redemption records.
>>>
>>> ~ Ari Chivukula (Their/There/They're)
>>>
>>>
>>> On Thu, Oct 31, 2024 at 7:04 AM Alexandre Nderagakura <
>>> nderale...@gmail.com> wrote:
>>>
>>>> Trying to understand this discussion, the Issue 990 design revue in 
>>>> w3ctag <https://github.com/w3ctag/design-reviews/issues/990> and the 
>>>> privacy side (I put a comment in the Issue 306 
>>>> <https://github.com/WICG/trust-token-api/pull/306#issuecomment-2449585140> 
>>>> but 
>>>> perhaps talking is here is better) :
>>>>
>>>>    - In case of the user denies giving consent to X vendors / tech via 
>>>>    the CMP (Consent Management Platform), will the token be shared cross 
>>>> site 
>>>>    if a wildcard is set anyway? The question also works with the Global 
>>>>    privacy control
>>>>    - Is there a way to prevent any adtech to redeem the token to 
>>>>    display an ads anywhere outside? (But I think this question is already 
>>>> in 
>>>>    the blink discussion)
>>>>    - Not related but somehow related, if the token is considered First 
>>>>    party tracking (Potential risk noted in the spec 
>>>>    
>>>> <https://github.com/WICG/trust-token-api/blob/main/README.md#first-party-tracking-potential>)
>>>>  
>>>>    then combined with the wildcard, you have a cross site tracking : How 
>>>> to 
>>>>    prevent that?
>>>>
>>>>
>>>> On Wednesday, October 23, 2024 at 1:41:52 AM UTC+2 Jeffrey Yasskin 
>>>> wrote:
>>>>
>>>>> This all makes sense to me. I don't personally have a good sense of 
>>>>> the privacy implications of calling this, but that's a question for the 
>>>>> privacy reviewers, not me. :) I'm torn on the question of when to make it 
>>>>> easier for sites to pick their issuers. The overall TAG sense 
>>>>> <https://github.com/w3ctag/design-reviews/issues/990> was that 
>>>>> because this makes the risk worse, you should add the easier mitigation 
>>>>> before shipping this change. But you have more experience with the 
>>>>> particular users of this API, so it could be that you're right to want to 
>>>>> wait for those users to complain. Is there a good issue for them to 
>>>>> comment 
>>>>> on if they run into this problem, so you can notice and fix it quickly? I 
>>>>> think it'd be reasonable for the API owners to let this ship given a good 
>>>>> way to catch if it breaks anything.
>>>>>
>>>>> The TAG also requested that you ask the Privacy WG to review the PST 
>>>>> API <https://github.com/w3ctag/design-reviews/issues/990>, to get 
>>>>> some non-Google validation that there aren't any privacy reasons to avoid 
>>>>> loosening the permission policy. I wouldn't expect the API owners to 
>>>>> insist 
>>>>> that shipping wait for the Privacy WG.
>>>>>
>>>>> For the thread's information, I also got a request to help PSTs move 
>>>>> into a WG, as the launch process requires we do 
>>>>> <https://www.chromium.org/blink/launching-features/#new-feature-prepare-to-ship:~:text=If%20your%20specification%20is%20still%20in%20an%20incubation%20venue%20and%20not%20a%20working%20group%2C%20propose%20that%20the%20feature%20migrate%20to%20a%20working%20group.>,
>>>>>  
>>>>> and we're figuring out what shape that should take.
>>>>>
>>>>> Jeffrey
>>>>>
>>>>> On Thu, Oct 3, 2024 at 11:37 AM Ari Chivukula <ari...@chromium.org> 
>>>>> wrote:
>>>>>
>>>>>> Divided Jeffrey's email to separate questions verbatim (italic font). 
>>>>>> Our responses are below the question (bold font). 
>>>>>>
>>>>>>
>>>>>> 1. https://github.com/WICG/trust-token-api/issues/106 says that 
>>>>>> adtech services want to redeem tokens without needing to get changes 
>>>>>> made 
>>>>>> on the top-level site. The request seems to say that it's the adtech 
>>>>>> origin 
>>>>>> that's directly called from the top-level site, but I think this change 
>>>>>> would allow redemptions anywhere down the tree of ad-related frames? 
>>>>>>
>>>>>> Yes, this change would allow redemptions anywhere down the tree of 
>>>>>> frames regardless of origin unless explicit 
>>>>>> Permissions-Policies/allow-attributes block them (7).
>>>>>>
>>>>>>   * Is there any risk of an ad redeeming tokens to interfere with 
>>>>>> other ads? 
>>>>>> https://github.com/WICG/trust-token-api?tab=readme-ov-file#private-state-token-exhaustion
>>>>>>  
>>>>>> says only 1 token is redeemed per top-level page visit, which prevents 
>>>>>> the 
>>>>>> ad from deliberately using up the user's tokens, but it could still race 
>>>>>> to 
>>>>>> prevent any other ad from knowing to trust the user.
>>>>>>
>>>>>> Yes, an ad redeeming a token may interfere with other origins' 
>>>>>> capabilities, as that redemption operation associates the issuer 
>>>>>> with the top level origin. And this counts towards the issuer limit. At 
>>>>>> most 2 issuers per top level origin is allowed. See step 4 in algorithm 
>>>>>> (1). Associating an issuer with the top level origin occupies a slot. 
>>>>>> Once 
>>>>>> an ad redeems a token, only one issuer slot is left for all others in 
>>>>>> the 
>>>>>> same top level page.
>>>>>>
>>>>>> Following a successful redemption, a redemption record (3) is stored, 
>>>>>> step 14 in algorithm (2). Redemption records are keyed by (issuer, 
>>>>>> toplevel) origin pair. Any other origin in the page trying to redeem a 
>>>>>> token from the same issuer will get this cached redemption record.
>>>>>>
>>>>>> Put another way, ads can’t ‘use up’ tokens that other ads on the page 
>>>>>> want to redeem, because those other ads would just re-use the same 
>>>>>> redemption record.
>>>>>>
>>>>>> The explainer text is not in the best shape, created issue #307 
>>>>>> <https://github.com/WICG/trust-token-api/issues/307> to fix this. 
>>>>>>
>>>>>> 2. This intent also expands which origins can _issue_ tokens, but I 
>>>>>> don't see the justification for that in the issue. What circumstances 
>>>>>> need 
>>>>>> that?
>>>>>>
>>>>>> Yes, you are correct that the particular request cited here is 
>>>>>> pertaining to redemption operations. However, we are aware that many 
>>>>>> anti-fraud vendors are only embedded in 3p contexts, without necessarily 
>>>>>> having script access on the top-level site. Vendors who currently rely 
>>>>>> on 
>>>>>> third-party cookies to establish and convey trust will need commensurate 
>>>>>> permissions on both redemption and issuance sides.
>>>>>>
>>>>>> There's some privacy impact from using this API. The tight default 
>>>>>> permission policy meant that top-level sites had to explicitly ask to 
>>>>>> expose their users to that privacy impact. Without it, shouldn't we 
>>>>>> expect 
>>>>>> lots of embedded resources to try to learn whatever information they can 
>>>>>> using this API? Why is that extra risk good for users overall?
>>>>>>
>>>>>> We see this is a key tradeoff that many third-party cookie 
>>>>>> replacement APIs have to contend with. Given the widespread reliance on 
>>>>>> third-party cookies, it may not be practical to have anti-fraud vendors 
>>>>>> to 
>>>>>> work with every publisher/page to update their permission policy for the 
>>>>>> frames they have. Usefulness of the signal depends on its availability.
>>>>>>
>>>>>> Further, the extra risk is actually very small: it's not going to 
>>>>>> affect users' privacy if anyone can learn that they've visited 2 
>>>>>> particular 
>>>>>> issuers and the 6 bits those issuers want to convey about them. In fact, 
>>>>>> the privacy risk is decreased by allowing 3p issuers to send that 
>>>>>> information, because it limits the inference about which sites a user 
>>>>>> has 
>>>>>> actively visited.
>>>>>>
>>>>>> Note that the information embedded resources can learn are 
>>>>>> constrained by limiting information content stored in a token (4) and 
>>>>>> limiting the number of issuers per page (5). Additionally, PST issuers 
>>>>>> are 
>>>>>> expected to register on GitHub 
>>>>>> <https://github.com/GoogleChrome/private-tokens/blob/main/PST-Registration.md>
>>>>>>  
>>>>>> with some transparency on how they’re using the tokens.
>>>>>>
>>>>>> I don't find the "the top-level origin could call hasPrivateToken up 
>>>>>> to twice before any other JavaScript is included" mitigation plausible: 
>>>>>> folks often don't control the order of their Javascript that closely. It 
>>>>>> seems more likely that sites would just explicitly set the permission 
>>>>>> policy to the origins they trust to pick their issuers: is there a 
>>>>>> reason 
>>>>>> that's not an adequate defense?
>>>>>>
>>>>>> Permission policy can certainly be used, but it does not prevent 
>>>>>> third-party scripts embedded on the top-level context from picking their 
>>>>>> own issuers. The hasPrivateToken method overcomes that issue. 
>>>>>>
>>>>>> For the general case, the JS API method mitigates most cases, but we 
>>>>>> have heard that folks would like a more explicit way of doing this, 
>>>>>> either 
>>>>>> as a meta tag or header that can be sent by the server since the JS 
>>>>>> inclusion order and complexities with single page sites means that this 
>>>>>> is 
>>>>>> a little fragile if it's not the earliest executed JS.
>>>>>>
>>>>>> While we could add a new meta-tag/header feature to control issuance 
>>>>>> origins and then change the policy to default to *, given the low usage 
>>>>>> and 
>>>>>> (in our estimation) the low risk of changing the policy default we would 
>>>>>> prefer to pursue this change and follow up if requested by clients.
>>>>>>
>>>>>> But then you've still just switched the burden from sites that want 
>>>>>> to delegate use of this API, to sites that need to defend against 
>>>>>> hostile 
>>>>>> use of the API. Can you share any analysis of why you think attacks will 
>>>>>> be 
>>>>>> much less likely than uses, or some other reason that it's good for 
>>>>>> users 
>>>>>> and sites to switch that burden?
>>>>>>
>>>>>> While it could be viewed as a “burden switch”, the fundamental 
>>>>>> privacy properties of PSTs mentioned above are such that the vast 
>>>>>> majority 
>>>>>> of sites shouldn’t have cause to be concerned. For sites that are 
>>>>>> looking 
>>>>>> to prevent any cross site communication, the permission policy remains 
>>>>>> available.  
>>>>>> References
>>>>>>
>>>>>> 1. 
>>>>>> https://wicg.github.io/trust-token-api/#append-private-state-token-redemption-request-headers
>>>>>>
>>>>>> 2. https://wicg.github.io/trust-token-api/#handle-a-redeem-response
>>>>>>
>>>>>> 3. https://wicg.github.io/trust-token-api/#redemption-record
>>>>>>
>>>>>> 4. https://wicg.github.io/trust-token-api/#limit-encoded-info
>>>>>>
>>>>>> 5. https://wicg.github.io/trust-token-api/#per-issuer-limits
>>>>>>
>>>>>> 6. https://github.com/WICG/trust-token-api/issues/106
>>>>>>
>>>>>> 7. 
>>>>>> https://developer.mozilla.org/en-US/docs/Web/HTTP/Permissions_Policy#allowlists
>>>>>>
>>>>>> 8. https://chromestatus.com/metrics/feature/timeline/popularity/3276
>>>>>>
>>>>>> ~ Ari Chivukula (Their/There/They're)
>>>>>>
>>>>>>
>>>>>> On Wed, Oct 2, 2024 at 4:51 PM Ari Chivukula <ari...@chromium.org> 
>>>>>> wrote:
>>>>>>
>>>>>>> These are good questions! Sorry for the delay in replying, now that 
>>>>>>> TPAC has passed we should have something soon.
>>>>>>>
>>>>>>> ~ Ari Chivukula (Their/There/They're)
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Sep 11, 2024 at 3:52 PM Jeffrey Yasskin <
>>>>>>> jyas...@chromium.org> wrote:
>>>>>>>
>>>>>>>> This Intent makes me realize that my mental model of Private State 
>>>>>>>> Tokens wasn't correct. I'd been thinking of users going to a site that 
>>>>>>>> trusts them, having that site issue some tokens, and then going to 
>>>>>>>> another 
>>>>>>>> site which would redeem a token to increase its trust. In both cases, 
>>>>>>>> the 
>>>>>>>> sites could rely on third-parties to handle the tokens, but the sites 
>>>>>>>> have 
>>>>>>>> intentional relationships with their service providers and so could 
>>>>>>>> enable 
>>>>>>>> them in the top-level Permission Policy.
>>>>>>>>
>>>>>>>> This Intent implies that something else is going on, maybe multiple 
>>>>>>>> things.
>>>>>>>>
>>>>>>>> 1. https://github.com/WICG/trust-token-api/issues/106 says that 
>>>>>>>> adtech services want to redeem tokens without needing to get changes 
>>>>>>>> made 
>>>>>>>> on the top-level site. The request seems to say that it's the adtech 
>>>>>>>> origin 
>>>>>>>> that's directly called from the top-level site, but I think this 
>>>>>>>> change 
>>>>>>>> would allow redemptions anywhere down the tree of ad-related frames? 
>>>>>>>>   * Is there any risk of an ad redeeming tokens to interfere with 
>>>>>>>> other ads? 
>>>>>>>> https://github.com/WICG/trust-token-api?tab=readme-ov-file#private-state-token-exhaustion
>>>>>>>>  
>>>>>>>> says only 1 token is redeemed per top-level page visit, which prevents 
>>>>>>>> the 
>>>>>>>> ad from deliberately using up the user's tokens, but it could still 
>>>>>>>> race to 
>>>>>>>> prevent any other ad from knowing to trust the user.
>>>>>>>> 2. This intent also expands which origins can _issue_ tokens, but I 
>>>>>>>> don't see the justification for that in the issue. What circumstances 
>>>>>>>> need 
>>>>>>>> that?
>>>>>>>>
>>>>>>>> There's some privacy impact from using this API. The tight default 
>>>>>>>> permission policy meant that top-level sites had to explicitly ask to 
>>>>>>>> expose their users to that privacy impact. Without it, shouldn't we 
>>>>>>>> expect 
>>>>>>>> lots of embedded resources to try to learn whatever information they 
>>>>>>>> can 
>>>>>>>> using this API? Why is that extra risk good for users overall?
>>>>>>>>
>>>>>>>> I don't find the "the top-level origin could call hasPrivateToken 
>>>>>>>> up to twice before any other JavaScript is included" mitigation 
>>>>>>>> plausible: 
>>>>>>>> folks often don't control the order of their Javascript that closely. 
>>>>>>>> It 
>>>>>>>> seems more likely that sites would just explicitly set the permission 
>>>>>>>> policy to the origins they trust to pick their issuers: is there a 
>>>>>>>> reason 
>>>>>>>> that's not an adequate defense?
>>>>>>>>
>>>>>>>> But then you've still just switched the burden from sites that want 
>>>>>>>> to delegate use of this API, to sites that need to defend against 
>>>>>>>> hostile 
>>>>>>>> use of the API. Can you share any analysis of why you think attacks 
>>>>>>>> will be 
>>>>>>>> much less likely than uses, or some other reason that it's good for 
>>>>>>>> users 
>>>>>>>> and sites to switch that burden?
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> Jeffrey
>>>>>>>>
>>>>>>>> On Mon, Sep 9, 2024 at 5:58 AM Ari Chivukula <ari...@chromium.org> 
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Contact emails
>>>>>>>>>
>>>>>>>>> ari...@chromium.org, kaust...@chromium.org, sva...@chromium.org, 
>>>>>>>>> ayk...@google.com, nic...@google.com
>>>>>>>>>
>>>>>>>>> Specification
>>>>>>>>>
>>>>>>>>> https://github.com/WICG/trust-token-api/pull/306
>>>>>>>>>
>>>>>>>>> Summary
>>>>>>>>>
>>>>>>>>> Access to the Private State Token API 
>>>>>>>>> <https://wicg.github.io/trust-token-api/> is gated by Permissions 
>>>>>>>>> Policy <https://www.w3.org/TR/permissions-policy/> features. We 
>>>>>>>>> proposed to update the default allowlist 
>>>>>>>>> <https://w3c.github.io/webappsec-permissions-policy/#policy-controlled-feature-default-allowlist>
>>>>>>>>>  
>>>>>>>>> for both `private-state-token-issuance 
>>>>>>>>> <https://wicg.github.io/trust-token-api/#policy-controlled-feature-private-state-token-issuance>`
>>>>>>>>>  
>>>>>>>>> and `private-state-token-redemption 
>>>>>>>>> <https://wicg.github.io/trust-token-api/#policy-controlled-feature-private-state-token-redemption>`
>>>>>>>>>  
>>>>>>>>> features from self to * (wildcard).
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Blink component
>>>>>>>>>
>>>>>>>>> Blink>StorageAccessAPI 
>>>>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EStorageAccessAPI>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Motivation
>>>>>>>>>
>>>>>>>>> The Private State Tokens API 
>>>>>>>>> <https://wicg.github.io/trust-token-api/> has received recurring 
>>>>>>>>> feedback from developers 
>>>>>>>>> <https://github.com/WICG/trust-token-api/issues/106> that the 
>>>>>>>>> current requirement to have first-party sites opt-in to allow 
>>>>>>>>> third-parties 
>>>>>>>>> to invoke token issuance and redemption operations is not practical. 
>>>>>>>>> This 
>>>>>>>>> is especially true for use cases where embeds don’t have first-party 
>>>>>>>>> script 
>>>>>>>>> access to either execute the operations directly in first-party 
>>>>>>>>> context, or 
>>>>>>>>> to enable the permission policies on the relevant frames. Current 
>>>>>>>>> default 
>>>>>>>>> requires every site to update permission policy for iframes that 
>>>>>>>>> embed 
>>>>>>>>> invalid traffic (IVT) detection scripts.Since scale and coverage are 
>>>>>>>>> of 
>>>>>>>>> essence for IVT detection that rely on identifying outlier patterns; 
>>>>>>>>> the 
>>>>>>>>> need for coordination with first-parties places a high cost for 
>>>>>>>>> successful 
>>>>>>>>> adoption.
>>>>>>>>>
>>>>>>>>> TAG review
>>>>>>>>>
>>>>>>>>> https://github.com/w3ctag/design-reviews/issues/990
>>>>>>>>>
>>>>>>>>> Compatibility
>>>>>>>>>
>>>>>>>>> This will not break any existing Private State Token API usage as 
>>>>>>>>> it only increases permissiveness. As usage increases, sites may need 
>>>>>>>>> to 
>>>>>>>>> consider the need to mitigate issuer exhaustion 
>>>>>>>>> <https://wicg.github.io/trust-token-api/#issuer-exhaustion>.
>>>>>>>>>
>>>>>>>>> Competing scripts might race to call hasPrivateToken to ensure 
>>>>>>>>> their preferred issuer enters the issuerAssociations 
>>>>>>>>> <https://wicg.github.io/trust-token-api/#issuerassociations> map 
>>>>>>>>> <https://infra.spec.whatwg.org/#ordered-map> before the issuer of 
>>>>>>>>> others given a limit of two per top-level origin 
>>>>>>>>> <https://html.spec.whatwg.org/multipage/webappapis.html#concept-environment-top-level-origin>.
>>>>>>>>>  
>>>>>>>>> To control this process, the top-level origin 
>>>>>>>>> <https://html.spec.whatwg.org/multipage/webappapis.html#concept-environment-top-level-origin>
>>>>>>>>>  
>>>>>>>>> could call hasPrivateToken up to twice before any other JavaScript is 
>>>>>>>>> included to ensure their preferred issuers are available.
>>>>>>>>>
>>>>>>>>> Few enough websites 
>>>>>>>>> <https://chromestatus.com/metrics/feature/timeline/popularity/3277> 
>>>>>>>>> are using the API that we believe we can broaden the default 
>>>>>>>>> permission set 
>>>>>>>>> and not open any concerning new avenues of attack.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Interoperability
>>>>>>>>>
>>>>>>>>> Gecko: Position Requested 
>>>>>>>>> <https://github.com/mozilla/standards-positions/issues/1066>
>>>>>>>>>
>>>>>>>>> WebKit: Position Requested 
>>>>>>>>> <https://github.com/WebKit/standards-positions/issues/391>
>>>>>>>>>
>>>>>>>>> Web developers: Positive 
>>>>>>>>> <https://github.com/WICG/trust-token-api/issues/106>
>>>>>>>>>
>>>>>>>>> Debuggability
>>>>>>>>>
>>>>>>>>> Storage written can be examined in devtools.
>>>>>>>>>
>>>>>>>>> Is this feature fully tested by web-platform-tests?
>>>>>>>>>
>>>>>>>>> Yes 
>>>>>>>>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/external/wpt/trust-tokens/>
>>>>>>>>>
>>>>>>>>> Tracking bug
>>>>>>>>>
>>>>>>>>> https://issues.chromium.org/353738486
>>>>>>>>>
>>>>>>>>> Link to entry on the Chrome Platform Status
>>>>>>>>>
>>>>>>>>> https://chromestatus.com/feature/5205548434456576
>>>>>>>>>
>>>>>>>>> -- 
>>>>>>>>> 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+...@chromium.org.
>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGpy5DL2enC2Q1vYBb%2BKA-O3aYW-a3bcvpWnU12NdAvQT6eUcg%40mail.gmail.com
>>>>>>>>>  
>>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGpy5DL2enC2Q1vYBb%2BKA-O3aYW-a3bcvpWnU12NdAvQT6eUcg%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 visit 
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGpy5DKLGRyeE9SCYuxyRG0DSLvzzX9qT4%3Dz3MtXW37Ki_9JsA%40mail.gmail.com
>>>  
>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGpy5DKLGRyeE9SCYuxyRG0DSLvzzX9qT4%3Dz3MtXW37Ki_9JsA%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 visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/99634aa5-7264-44b3-9eaa-8b1506853126n%40chromium.org.

Reply via email to