On Thu, Jun 22, 2023 at 12:05 PM Rick Byers <rby...@chromium.org> wrote:

> Thanks for the added color!
>
> With WebKit and Gecko opposed on grounds that we're unlikely to ever
> satisfy, it's clear this feature carries a lot of interop risk. Like other
> controversial features we've shipped (eg. WebUSB), API owners are supposed
> <https://www.chromium.org/blink/guidelines/web-platform-changes-guidelines/>
> to evaluate that risk against the benefit of "moving the web forward". I
> personally find it impossible to predict what the future of targeted
> advertising will be on the web in ~5 years (eg. will it largely be replaced
> by paywalls and/or move to users being required to be signed in to view all
> ad-supported content?), but it's clearly important for the industry to
> explore a variety of options to help increase the chances that we can align
> on something good for both user's short term interests (eg. privacy) and
> long-term interests (eg. availability of high-quality free content). So I'm
> looking at this API mostly from a perspective of minimizing the costs to
> the ecosystem across the likely possible outcomes.
>
> On the one hand, if perspectives like that of Gecko's
> <https://github.com/mozilla/standards-positions/issues/622> prove to be
> where the industry converges in time, then the ecosystem risk seems quite
> low. We can probably unship this API without breaking any websites, and
> worst case if we couldn't then we could simply lie and generate random
> topics or something. So future compat risk seems very small and so we
> shouldn't be too afraid of being wrong about the value of this API.
>
> On the other hand, if Topics ends up being successful and other engines
> decide to support it (perhaps because some content providers choose to
> offer free access to users with the API and paywall otherwise), then we
> have to consider the future interop risk. It looks to me like the team has
> done a good job with API design, specs and tests such that future
> interoperability is likely not too hard. Thank you Domenic for your spec
> maturity summary, very helpful!
>



> The only concern I can see is in the large number of open spec issues.
> Given there's at least one open issue
> <https://github.com/patcg-individual-drafts/topics/issues/71> that we'd
> likely be deciding implicitly by shipping (API name/location), Josh could
> you and the team do a bug triage pass and assign a label to it and any
> others in a similar boat of being a substantial breaking change should we
> decide differently in the future? Ideally such issues could be resolved
> now, but if we need to carry them past ship then we should at least be
> aware of the future known compat risk we're creating for ourselves. Even
> something like the API name doesn't seem like a huge compat problem to me -
> I suspect we could simply ship it under a 2nd name for a few months and
> then remove the first, right Josh? Still, I think we should make this
> determination explicitly prior to shipping.
>

Yep, done. That was the only challenging compat issue that I came across,
and I've labeled it as such. Yes, we could do such a rename but yes we'd
wind up having to support both names in the wild for some period of time.

Josh



>
> Thanks,
>     Rick
>
>
> On Thu, Jun 22, 2023 at 10:26 AM 'Michael Kleber' via blink-dev <
> blink-dev@chromium.org> wrote:
>
>> A little more color here:
>>
>> When we first began work on (the respective predecessors of) Topics and
>> Protected Audience, our best guess was that Topics would be more easily
>> adopted, based on its vastly simpler API surface, but that Protected
>> Audience would allow the advertising industry much more power in exchange
>> for the hard work of living within its privacy boundaries.  And as Josh
>> said, the two APIs are also best suited to different levels of detail in
>> targeting.
>>
>> Over the course of the Origin Trial, I would say much of this expectation
>> has been borne out.  Topics is becoming available to many ads buyers, for
>> example, as described by Google Ad Manager at
>> https://support.google.com/admanager/answer/12270543?hl=en, while
>> Protected Audience so far only includes a narrower slice of early
>> adopters.  On the other hand, the lists of self-declared testers for the
>> two APIs, here
>> <https://github.com/patcg-individual-drafts/topics/blob/main/topics-tester-list.md>
>> and here
>> <https://github.com/WICG/turtledove/blob/main/fledge-tester-list.md>
>> respectively, are the same length — so perhaps the Protected Audience
>> barrier to entry is not as high as we feared.  The OT feedback has
>> indicated that both APIs are of interest to the same parties, neither one
>> clearly dominating the other, at least for now.
>>
>> I think the real answer to the question will only be known over time, as
>> the ad tech industry tries out the two different APIs and see what best
>> suits each use case.  We can certainly add some cross-references to the two
>> explainers, but I don't think it will rise to the level of guidance to
>> developers on how to choose one vs. the other.
>>
>> --Michael
>>
>>
>> On Thu, Jun 22, 2023 at 10:15 AM Yoav Weiss <yoavwe...@chromium.org>
>> wrote:
>>
>>>
>>>
>>> On Thu, Jun 22, 2023 at 4:05 PM Josh Karlin <jkar...@chromium.org>
>>> wrote:
>>>
>>>>
>>>>
>>>> On Thu, Jun 22, 2023 at 7:49 AM Yoav Weiss <yoavwe...@chromium.org>
>>>> wrote:
>>>>
>>>>> Thanks for working on this important problem!
>>>>>
>>>>> This API is an interesting one to think through, as it's quite
>>>>> different from other APIs, even Privacy Sandbox ones. While most Privacy
>>>>> Sandbox APIs carve out specific bits of entropy from 3P cookies to enable
>>>>> web functionality to continue to work, only with more targeted data, 
>>>>> Topics
>>>>> seems to enable a use-case (targeted advertising) by moving some of the
>>>>> targeting work from the server onto the user agent itself.
>>>>>
>>>>> In my view it makes sense to include "ecosystem health" into a broad &
>>>>> holistic view of the user's needs, and hence it makes sense for the user
>>>>> agent to take on such work in order to enable ecosystem monetization, 
>>>>> *while
>>>>> ensuring the user's agency*. Therefore, I think this is a fine
>>>>> precedent to make, under the assumption the user indeed has agency and is
>>>>> making an informed decision about enabling this API and controlling their
>>>>> choice of Topics. At the same time, API owners are not UX experts, and the
>>>>> UX of whatever consent flow browsers end up shipping is a product 
>>>>> decision,
>>>>> rather than a part of the Blink intent process. As a result, approving 
>>>>> this
>>>>> API requires a certain amount of faith that different user-agents will do
>>>>> the right thing with it. But I guess that's already true for
>>>>> permission-bound features, where we trust the UA's UX team to provide
>>>>> appropriate mitigations for security and privacy risks.
>>>>>
>>>>>
>>>>> On Wed, Jun 21, 2023 at 8:57 PM Josh Karlin <jkar...@chromium.org>
>>>>> wrote:
>>>>>
>>>>>> Thanks for the questions Alex. Responses inline:
>>>>>>
>>>>>>
>>>>>> > I don't see a full "considered alternatives" section in the
>>>>>> Explainer. What other options were explored for this API and/or design?
>>>>>>
>>>>>>
>>>>>> Yes. Before Topics we had another API, FLoC <https://web.dev/floc/>.
>>>>>> We learned early on in the OT process that we did not want to move 
>>>>>> forward
>>>>>> with it. Discussion of how FLoC migrated into Topics can be seen in this
>>>>>> section
>>>>>> <https://github.com/patcg-individual-drafts/topics#evolution-from-floc>
>>>>>> of the explainer.
>>>>>>
>>>>>
>>>>> I highly appreciate the evolution of the API and the many learnings
>>>>> incorporated from the FLoC experiments.
>>>>>
>>>>>
>>>>>> Another alternative would be to provide this sort of cross-site data
>>>>>> only within a worklet, as Protected Audiences and Shared Storage do, and
>>>>>> require that the ad be rendered within a fenced frame. An API like that 
>>>>>> is
>>>>>> not off the table in the future, but at this stage we felt it prudent to
>>>>>> make a simple API that could offer value in this space that has high 
>>>>>> levels
>>>>>> of privacy in addition to the more complex and capable APIs that require
>>>>>> private rendering.
>>>>>>
>>>>>>
>>>>>>
>>>>>> > Does this naturally need to live on `document`? Was `navigator` (or
>>>>>> some other root object) considered?
>>>>>>
>>>>>>
>>>>>> There is an issue
>>>>>> <https://github.com/patcg-individual-drafts/topics/issues/71> for
>>>>>> this, and I asked for advice
>>>>>> <https://github.com/w3ctag/design-reviews/issues/726#issuecomment-1137279345>
>>>>>> on this on the TAG review but did not receive a response. We chose 
>>>>>> document
>>>>>> at the time because the topics returned are conditional on the caller, 
>>>>>> and
>>>>>> changing didn’t seem particularly compelling (e.g., it wasn’t abundantly
>>>>>> clear where it should rightfully go).
>>>>>>
>>>>>>
>>>>>>
>>>>>> > Is the name `browsingTopics` meant to signify that other sorts of
>>>>>> topics may become available? If no, why not just `topics`? And if so,
>>>>>> should that be a flag that's passed instead?
>>>>>>
>>>>>>
>>>>>> We do not anticipate other *Topics APIs. At this point I honestly
>>>>>> can’t remember how we landed on browsingTopics instead, but I know there
>>>>>> was discussion. FWIW, it’s less likely to conflict with expando
>>>>>> properties
>>>>>> <https://github.com/search?q=document.topics+language%3AJavaScript&type=code>.
>>>>>> Do you feel strongly about this?
>>>>>>
>>>>>>
>>>>>>
>>>>>> What feedback (if any) came from the OT?
>>>>>>
>>>>>>
>>>>>> Lots! Criteo
>>>>>> <https://medium.com/criteo-engineering/is-googles-topics-api-a-viable-replacement-for-interest-based-advertising-297076192bd>
>>>>>> pointed out ~5 different things in their link that I have above that 
>>>>>> they’d
>>>>>> like to see improved for utility, many of which are part of our future
>>>>>> non-breaking plans. Others pointed out
>>>>>> <https://github.com/patcg-individual-drafts/topics/issues/73> that
>>>>>> the ratio of noised Topics was proportionate to reach, which wasn’t
>>>>>> appropriate, so we fixed that. Yet others pointed out
>>>>>> <https://github.com/patcg-individual-drafts/topics/issues/75> that
>>>>>> it was easy to detect the random topic, so we fixed that. For more, 
>>>>>> please
>>>>>> see the response to the “Web developers” section in “Risks” above.
>>>>>>
>>>>>> Josh
>>>>>>
>>>>>>
>>>>>> On Wed, Jun 21, 2023 at 12:06 PM Alex Russell <
>>>>>> slightly...@chromium.org> wrote:
>>>>>>
>>>>>>> The spec looks well-written, and I'm dissapointed by the lack of
>>>>>>> technical feedback from the TAG.
>>>>>>>
>>>>>>> Because the TAG doesn't seem to be engaging at the level of platform
>>>>>>> consistency and quality in this review, I have some questions of the 
>>>>>>> sort I
>>>>>>> try not to ask (in the hopes that the TAG has those bases covered):
>>>>>>>
>>>>>>>
>>>>>>>    - I don't see a full "considered alternatives" section in the
>>>>>>>    Explainer. What other options were explored for this API and/or 
>>>>>>> design?
>>>>>>>    - Does this naturally need to live on `document`? Was
>>>>>>>    `navigator` (or some other root object) considered?
>>>>>>>    - Is the name `browsingTopics` meant to signify that other sorts
>>>>>>>    of topics may become available? If no, why not just `topics`? And if 
>>>>>>> so,
>>>>>>>    should that be a flag that's passed instead?
>>>>>>>    - What feedback (if any) came from the OT?
>>>>>>>
>>>>>>> Best,
>>>>>>>
>>>>>>> Alex
>>>>>>>
>>>>>>>
>>>>>>> On Tuesday, June 20, 2023 at 8:33:41 PM UTC-7 Domenic Denicola wrote:
>>>>>>>
>>>>>>>> I was the spec mentor for Yao's work on this feature, and am
>>>>>>>> chiming in to provide the requested spec maturity summary
>>>>>>>> <https://www.chromium.org/blink/launching-features/#:~:text=If%20your%20specification%20isn%27t%20a%20modification%20of%20an%20existing%20specification%2C%20include%20a%20one%2Dline%20spec%20maturity%20summary%20from%20someone%20outside%20your%20team%20(like%20your%20spec%20mentor)%20who%20has%20done%20a%20review.>
>>>>>>>> .
>>>>>>>>
>>>>>>>> I am very happy with the rigor of this specification. The
>>>>>>>> algorithms and APIs are given in full detail, and I am as confident as 
>>>>>>>> I
>>>>>>>> can be that another implementer would be able to follow and create an
>>>>>>>> interoperable implementation. I'm also happy with how some of the 
>>>>>>>> design
>>>>>>>> discussions went, e.g. we recently made changes to the 
>>>>>>>> Sec-Browsing-Topics
>>>>>>>> HTTP request header which improved its parse-ability and robustness.
>>>>>>>>
>>>>>>>> The slicing of the specification into implementation-defined vs.
>>>>>>>> interoperable behavior is tricky, and as Josh notes, can evolve over 
>>>>>>>> time.
>>>>>>>> E.g. this PR
>>>>>>>> <https://github.com/patcg-individual-drafts/topics/pull/203> proposes
>>>>>>>> making the "top 5 topics" algorithm implementation-defined. (But, it 
>>>>>>>> keeps
>>>>>>>> Chrome's version in a non-normative note, which I think is really 
>>>>>>>> helpful!)
>>>>>>>> And there are browser vendor identifiers and version numbers baked 
>>>>>>>> into the
>>>>>>>> return values of the spec. It's hard to say whether this setup will
>>>>>>>> *guarantee* us the ability to evolve the API going forward, but I
>>>>>>>> think the team has done a good job setting up the infrastructure to 
>>>>>>>> avoid
>>>>>>>> any known failure modes.
>>>>>>>>
>>>>>>>> I will note that the open issues list
>>>>>>>> <https://github.com/patcg-individual-drafts/topics/issues?q=is%3Aopen> 
>>>>>>>> for
>>>>>>>> the specification is enormous, but my experience with Privacy Sandbox
>>>>>>>> specifications is that their issues list turn into discussion forums 
>>>>>>>> pretty
>>>>>>>> easily. I'm happy to trust the team's appraisal (under "Anticipate spec
>>>>>>>> changes") that there aren't any open issues which will be significant
>>>>>>>> disruptions to the specification.
>>>>>>>>
>>>>>>>> On Wed, Jun 21, 2023 at 2:40 AM Josh Karlin <jkar...@chromium.org>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Contact emails
>>>>>>>>>
>>>>>>>>> jkar...@chromium.org, yao...@chromium.org, leeronisr...@google.com
>>>>>>>>>
>>>>>>>>> Explainer
>>>>>>>>>
>>>>>>>>> https://github.com/patcg-individual-drafts/topics
>>>>>>>>>
>>>>>>>>
>>>>> That's a great explainer! One thing I found a bit lacking in it is an
>>>>> outline of the use cases that this API tackles. Another question that came
>>>>> to mind while reviewing other intents was around the differences in
>>>>> use-cases between this and Protected Audience. Are they destined for
>>>>> different kinds of advertisers? Different use cases? Something else?
>>>>>
>>>>
>>>> They are indeed different use cases. Interest based advertising
>>>> (Topics) is much broader (larger number of ads to choose from) than
>>>> retargeting (Protected Audience). Interest based advertising allows an
>>>> advertiser to say, "I'd like to advertise my product to people interested
>>>> in these categories" whereas retargeting allows an advertiser to say, "this
>>>> user was interested in some products on my page, I'd like to show them some
>>>> more". You can imagine how it might be tractable to store metadata for the
>>>> retargeting type ads on the users device, whereas it's less practical for
>>>> interest based ads (easily millions of possible ads to select between).
>>>> That is why Topics is quite limited in the information it can share since
>>>> it needs to be made available to the caller, whereas Protected Audiences
>>>> allows for more specific ad selection, but from a limited set of ads, and
>>>> the ad must leverage private rendering.
>>>>
>>>
>>> That's extremely useful, thanks!! (Maybe this can be added to the
>>> explainer?)
>>>
>>>
>>>>
>>>>
>>>>>
>>>>>
>>>>>>>>> Specification
>>>>>>>>>
>>>>>>>>> https://patcg-individual-drafts.github.io/topics/
>>>>>>>>>
>>>>>>>>> Summary
>>>>>>>>>
>>>>>>>>> The intent of the Topics API is to provide callers (including
>>>>>>>>> third-party ad-tech or advertising providers on the page that run 
>>>>>>>>> script)
>>>>>>>>> with coarse-grained advertising topics that the page visitor might
>>>>>>>>> currently be interested in for the purposes of advertising. These 
>>>>>>>>> topics
>>>>>>>>> will supplement the contextual signals from the current page and can 
>>>>>>>>> be
>>>>>>>>> combined to help find an appropriate advertisement for the visitor 
>>>>>>>>> without
>>>>>>>>> the advertiser having to track the user’s detailed browsing history 
>>>>>>>>> as is
>>>>>>>>> done with third-party cookies and fingerprinting today.
>>>>>>>>>
>>>>>>>>> Blink Component
>>>>>>>>>
>>>>>>>>> Blink>TopicsAPI
>>>>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ETopicsAPI>
>>>>>>>>>
>>>>>>>>> TAG Review
>>>>>>>>>
>>>>>>>>> Early design review for the Topics API · Issue #726
>>>>>>>>> <https://github.com/w3ctag/design-reviews/issues/726#issuecomment-1379908459>
>>>>>>>>>
>>>>>>>>> TAG review status
>>>>>>>>>
>>>>>>>>> Pending
>>>>>>>>>
>>>>>>>>> Risks
>>>>>>>>>
>>>>>>>>> Interoperability and Compatibility
>>>>>>>>>
>>>>>>>>> Gecko: Negative (
>>>>>>>>> https://github.com/mozilla/standards-positions/issues/622)
>>>>>>>>>
>>>>>>>>> WebKit: Negative (
>>>>>>>>> https://github.com/WebKit/standards-positions/issues/111
>>>>>>>>> <https://github.com/WebKit/standards-positions/issues/111#issuecomment-1359609317>
>>>>>>>>> )
>>>>>>>>>
>>>>>>>>> To reduce risk in the event that we later decide to replace this
>>>>>>>>> API with one that has more browser support, the API can be effectively
>>>>>>>>> disabled without breaking pages by rejecting the promise or returning 
>>>>>>>>> empty
>>>>>>>>> lists of topics.
>>>>>>>>>
>>>>>>>>> Web developers: We’ve had significant OT participation
>>>>>>>>> <https://github.com/patcg-individual-drafts/topics/blob/main/topics-tester-list.md>
>>>>>>>>> and feedback in our periodic W3C PATCG calls
>>>>>>>>> <https://github.com/patcg-individual-drafts/topics/tree/24c87897e32974c1328b74438feb97bf2ec43375/meetings>,
>>>>>>>>> discussions on various GitHub issues
>>>>>>>>> <https://github.com/patcg-individual-drafts/topics/issues>,
>>>>>>>>> Chrome-facilitated office hours, discussion with industry trade groups
>>>>>>>>> representing a variety of stakeholder groups, and more. Some initial
>>>>>>>>> feedback on utility has been published by Criteo
>>>>>>>>> <https://medium.com/criteo-engineering/is-googles-topics-api-a-viable-replacement-for-interest-based-advertising-297076192bd>,
>>>>>>>>> Google Ads
>>>>>>>>> <https://github.com/google/ads-privacy/blob/master/Testing%20IBA%20with%20Privacy%20Preserving%20Signals.pdf>
>>>>>>>>> and Retargetly
>>>>>>>>> <https://retargetly.com/blog-en/a-brief-dive-into-retargetlys-experience-testing-googles-privacy-sandbox>.
>>>>>>>>> We recently announced
>>>>>>>>> <https://developer.chrome.com/blog/topics-enhancements/> upcoming
>>>>>>>>> improvements to utility (not API surface changing) based on that 
>>>>>>>>> initial
>>>>>>>>> feedback.
>>>>>>>>>
>>>>>>>>> Activation
>>>>>>>>>
>>>>>>>>> Starting in August 2023, enrollment
>>>>>>>>> <https://developer.chrome.com/en/blog/announce-enrollment-privacy-sandbox/>
>>>>>>>>> will be required to use the API. This is not a compat risk in the 
>>>>>>>>> sense
>>>>>>>>> that the API will simply reject for callers if they are not enrolled.
>>>>>>>>>
>>>>>>>>> Other signals:
>>>>>>>>>
>>>>>>>>> WebView application risks
>>>>>>>>>
>>>>>>>>> None
>>>>>>>>>
>>>>>>>>> Debuggability
>>>>>>>>>
>>>>>>>>> There is a useful internals page: chrome://topics-internals, which
>>>>>>>>> shows the user’s current topics, allows for querying the API’s 
>>>>>>>>> classifier,
>>>>>>>>> and provides developer experimentation tooling.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Will this feature be supported on all six Blink platforms
>>>>>>>>> (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
>>>>>>>>>
>>>>>>>>> All but WebView
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Is this feature fully tested by web-platform-tests
>>>>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>>>>>>>> ?
>>>>>>>>>
>>>>>>>>> IDL surface is tested
>>>>>>>>> <https://wpt.fyi/results/browsing-topics?label=experimental&label=master&aligned>,
>>>>>>>>> the actual returned topics are not as they are browser dependent.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Note for the failing tests: Chrome will roll out this feature via 
>>>>>>>>> Chrome
>>>>>>>>> Variations
>>>>>>>>> <https://developer.chrome.com/docs/web-platform/chrome-variations/>,
>>>>>>>>> rather than enabling the runtime features
>>>>>>>>> <https://chromium.googlesource.com/chromium/src/+/HEAD/third_party/blink/renderer/platform/RuntimeEnabledFeatures.md>
>>>>>>>>> directly. This means related WPTs need to be virtual, and it isn't
>>>>>>>>> supported in wpt.fyi.
>>>>>>>>>
>>>>>>>>> Requires code in //chrome?
>>>>>>>>>
>>>>>>>>> No
>>>>>>>>>
>>>>>>>>> Launch bug
>>>>>>>>>
>>>>>>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1286877
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Anticipated spec changes
>>>>>>>>>
>>>>>>>>> As mentioned above, we anticipate changes to the classification
>>>>>>>>> model, the taxonomy, the top topics selection algorithm, and possibly 
>>>>>>>>> some
>>>>>>>>> parameters in the future as we try to improve the API’s utility over 
>>>>>>>>> time.
>>>>>>>>> The API already provides version numbers with each returned topic for 
>>>>>>>>> each
>>>>>>>>> of these features, as changes of this nature were anticipated from the
>>>>>>>>> beginning. These changes will not break sites. Developers may need to
>>>>>>>>> retrain their models and adapt to the new underlying algorithms, so 
>>>>>>>>> we will
>>>>>>>>> announce the changes via channels such as blink-dev FYI as well as on 
>>>>>>>>> the
>>>>>>>>> various support mailing lists.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Link to entry on the Chrome Platform Status
>>>>>>>>>
>>>>>>>>> https://chromestatus.com/feature/5680923054964736
>>>>>>>>>
>>>>>>>>> Links to previous Intent discussions
>>>>>>>>>
>>>>>>>>> Intent to prototype:
>>>>>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/59uTw_dxM3M/m/vF9lF9BVAgAJ
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Intent to experiment:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/oTwd6VwCwqs/m/pk7JPbXLAQAJ
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Intent to extend origin trial:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/SD8Ot2gpz4g/m/A9uA-_cGAwAJ
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/gpmaOi3of_w/m/SyMclFhMAAAJ
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/CBrV-2DrYFI/m/RTojC6kHAgAJ
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> 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/CAANMuaNc94moaqPPWepai4THP1rOvXoxvixS%3Dostu2QGMLPtvA%40mail.gmail.com
>>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAANMuaNc94moaqPPWepai4THP1rOvXoxvixS%3Dostu2QGMLPtvA%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/fae46cf2-dbf8-41bf-8e64-c7cfb6844c01n%40chromium.org
>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/fae46cf2-dbf8-41bf-8e64-c7cfb6844c01n%40chromium.org?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/CAANMuaM1RZP4tKq4x7UvADOhYemyqtOhH5dgKUJK131sLWoS%3DA%40mail.gmail.com
>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAANMuaM1RZP4tKq4x7UvADOhYemyqtOhH5dgKUJK131sLWoS%3DA%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/CAL5BFfVbQDFhz_zmLHbm3DdN0nn8EtdmhfxFXbd4kYb%3DwOLmSQ%40mail.gmail.com
>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfVbQDFhz_zmLHbm3DdN0nn8EtdmhfxFXbd4kYb%3DwOLmSQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>>
>>>>
>>
>> --
>> Forewarned is worth an octopus in the bush.
>>
>> --
>> 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/CAA6DcCfwqzyUNRW_f3JJCA_WtdJu036fSjphOp%2Bm4x3fmra6xQ%40mail.gmail.com
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAA6DcCfwqzyUNRW_f3JJCA_WtdJu036fSjphOp%2Bm4x3fmra6xQ%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/CAFUtAY86BwABa2WTbf0_houXFuLaCWjVfHxWAmZ6nV4LFwb4KA%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY86BwABa2WTbf0_houXFuLaCWjVfHxWAmZ6nV4LFwb4KA%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/CAANMuaN5HD77S8DPt5TRe-Ys8Yq9JcF9RQuzNHwXwoHWyCjZKg%40mail.gmail.com.

Reply via email to