diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index 4225564..4c88569 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -147,7 +147,7 @@ jobs: # real people's names and profile ids into a public artefact. python3 playwright_scraper.py \ --mode reviews --app-id com.whatsapp --pages 2 \ - --reviews-per-call 100 --no-authors \ + --reviews-per-call 100 --sort newest --no-authors \ --format json --out canary_reviews echo "exit_code=$?" >> "$GITHUB_OUTPUT" @@ -168,10 +168,21 @@ jobs: ok &= require("exit code is 0", rc == 0, f"got {rc}") ok &= require("status is complete", meta["status"] == "complete", meta["status"]) - # Page 1 is embedded in the app page and page 2 comes from - # batchexecute, so clearing 100 rows proves BOTH routes worked. - ok &= require("both review routes produced rows", len(rows) >= 100, - str(len(rows))) + # Both pages come from batchexecute, page 2 with page 1's token, so + # each carries close to the 100 asked for. The old floor was + # `>= 100` over the whole run and passed by accident: 20 embedded + # reviews plus the 80 a TOKENLESS page 2 had left after dedupe. + # A per-page floor is what fails when page 2 restarts the list. + per_page = [sum(1 for r in rows if r["page"] == n) for n in (1, 2)] + ok &= require("each page carries a full page of reviews", + all(n >= 95 for n in per_page), str(per_page)) + # --sort newest must come back newest first ACROSS the page + # boundary. Counting rows could not see that it did not. + dates = [r["posted_at"] for r in rows] + ok &= require("newest first, end to end", + all(dates[i] >= dates[i + 1] + for i in range(len(dates) - 1)), + str(dates[:4])) ok &= require("review ids are unique", len({r["review_id"] for r in rows}) == len(rows)) ok &= require("scores are real stars", diff --git a/CHANGELOG.md b/CHANGELOG.md index 7fbcb41..c8a1993 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,40 @@ discovered from a bill or a diff. ## [Unreleased] +> **Correction to 0.1.0 and 0.2.0: `--sort newest` did not sort, and the +> README's account of the store's orderings was wrong.** Both releases sent +> the sort key in the wrong slot of the request. The store then answered +> "newest" in its relevance order — dates like 08-28, 08-31, 09-18, 07-26 — +> and answered "relevant" and "rating" with nothing at all, which the README +> reported as "the store's other two keys return an empty payload". That was +> a measurement of this repository's own request, not of the store: in the +> request shape the store's front end uses, all three orderings work. +> Reviews runs will now come back in a different order, and `--sort` takes +> two more values. + +### Fixed + +- **`--sort` reaches the store.** The key now goes in the second slot of the + sort block (`[2, , [count, null, token], null, []]`). `newest` is + newest first and stays so across pages; `relevant` and `rating` are + offered. An unknown value is refused rather than silently replaced. +- **Page 2 of a reviews run no longer restarts the list.** Page 1 used to be + the handful of reviews embedded in the app page, which carry no + continuation token, so page 2 went out without one, came back as the start + of the list, and was mostly removed as duplicates — 20 / 1 / 19 rows over + three pages in one reported run, and `end_of_listing` after a single page + in another. Every page now comes from the reviews endpoint, each asked for + with the previous page's token. That costs one request more than before. +- `--url --mode reviews` runs a reviews run. It used to be refused + as a mode conflict, contradicting `--help`. +- With a proxy pool, a reviews run logs that it keeps one exit for the run + (the continuation token belongs to the session) instead of claiming the + per-page rotation it never applies. +- The canary's reviews job asserts a full page of rows on EACH page and + newest-first order across the run. Its previous floor of 100 rows over two + pages passed by accident: 20 embedded reviews plus the 80 a tokenless page + 2 left after dedupe. + ### Changed - CI only: the canary now runs weekly (Mondays 06:17 UTC) instead of daily, and on a manual dispatch. diff --git a/README.md b/README.md index e260764..db188cb 100644 --- a/README.md +++ b/README.md @@ -168,16 +168,28 @@ capped there. Measured 2026-09-22 on one app: **100 → 100, 200 → 200, continuation token. No ceiling was found. The default here is 200; `--reviews-per-call` raises it. -Page 1 costs no extra request at all — the app page already embeds it. - -Only `--sort newest` is implemented. The store's front end also offers "most -relevant" and "rating", and in this request shape both return an empty -payload: measured on two apps, sort key 1 → 0 reviews, key 2 → 40 and a -token, key 3 → 0. That is a TODO about this request shape, not a limit of the -store, and the flag offers only what was measured to work. There is likewise -no score filter: the payload has a slot for one and setting it changes -nothing (asking for score 1 and for score 5 each returned forty reviews -spanning all five). +Every page comes from that endpoint, page 2 onward asked for with the +previous page's continuation token. The app page is still fetched first — +to confirm the app exists in that market, which Play answers with a clean +404 when it does not — but its own embedded handful of reviews is not used +as page 1: those come in relevance order whatever `--sort` says and carry no +token to continue from. + +`--sort` takes the store's three orderings: + +| `--sort` | what comes back | +|---|---| +| `newest` (default) | posted date descending, kept across pages | +| `relevant` | the store's own ranking | +| `rating` | grouped by score | + +Measured 2026-10-22 on `com.whatsapp`: `newest` returned two pages of 40 +with no review shared between them and `posted_at` non-increasing across the +page boundary; `relevant` and `rating` each returned their own ordering. + +This repository does not implement a score filter. The store's front end has +one; the request forms tried so far either changed nothing or returned no +rows, so no flag is offered until one is measured to filter. **Reviews are about identifiable people.** Play publishes a reviewer's display name, avatar and a stable 21-digit profile id beside their words. diff --git a/captures/README.md b/captures/README.md index 8cbc8e2..a3e3ec5 100644 --- a/captures/README.md +++ b/captures/README.md @@ -5,6 +5,10 @@ address (netcup, Nuremberg) with plain `curl` and no cookies. Every number in the README and in `product_parser.py`'s comments can be re-measured from these. +The two `reviews_*.txt` files were re-taken on 2026-10-22, after the request +`make_fixtures.py` sends was corrected to put the sort key where the store +reads it; the earlier pair was in relevance order. + | file | route | what it is for | |---|---|---| | `cat_game_us.html` | `/store/apps/category/GAME` | the grid, and seven named shelves | @@ -19,8 +23,8 @@ these. | `apps_home_us.html` | `/store/apps` | the store front, with the chart shelves | | `cluster_us.html` | `/store/apps/collection/cluster?gsr=…` | an expanded shelf — what `--pages` follows | | `notfound.html` | a package id that does not exist | HTTP 404, and the control for the asset-count signal | -| `reviews_p1.txt` | `batchexecute` RPC `UsvDTd` | 40 reviews and a continuation token | -| `reviews_p2.txt` | the same, with that token | 40 more, sharing none of page 1's ids | +| `reviews_p1.txt` | `batchexecute` RPC `UsvDTd`, `--sort newest` | 40 reviews, newest first, and a continuation token | +| `reviews_p2.txt` | the same, with that token | 40 more, sharing none of page 1's ids and continuing the date order | ## What is NOT verbatim diff --git a/captures/reviews_p1.txt b/captures/reviews_p1.txt index 57173bd..f17fd40 100644 --- a/captures/reviews_p1.txt +++ b/captures/reviews_p1.txt @@ -1,3 +1,3 @@ )]}' -[["wrb.fr","UsvDTd","[[[\"d40bb75a-d1a5-44b3-863d-c8624445efe9\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1787949615,284000000],9,null,null,[\"100000000000000000000\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.33.74\",null,null,null,null,null,1],[\"df162a51-d54f-4f64-9973-ef00cc5f2e37\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1788204424,113000000],19,null,null,[\"100000000000000000001\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.33.76\",null,[[[\"vaf_uploading_photos\",[1]],[\"vaf_phase1_search_messages\",[1]],[\"vaf_video_calling\",[1]]]],null,[true,false],null,1],[\"ad1e7e0f-1cfd-45e4-ad84-dfafb7d51c23\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789737863,521000000],0,null,null,[\"100000000000000000002\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.35.75\",null,null,null,null,null,1],[\"18f79504-e09f-4529-82a4-0b75d6aebd59\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1785100506,608000000],24,null,null,[\"100000000000000000003\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.28.77\",null,null,null,[true,false],null,1],[\"39c8e86a-3b41-4999-b182-3feeae691d1b\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1784864170,796000000],27,null,null,[\"100000000000000000004\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.28.77\",null,null,null,[true,false],null,1],[\"5164053f-93a1-4377-bb62-4f052aef0062\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1785166135,815000000],20,null,null,[\"100000000000000000005\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.28.77\",null,[[[\"vaf_app_quality_battery_heat\",[1]]]],null,null,null,1],[\"ea408e0c-697a-4ecd-b991-026ec7ff0e58\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1784807875,313000000],21,null,null,[\"100000000000000000006\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.27.85\",null,null,null,[true,false],null,1],[\"da1c2d72-5619-42d6-b0ee-a7501e8eafb1\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1786984173,736000000],23,null,null,[\"100000000000000000007\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.31.77\",null,null,null,null,null,1],[\"8fffa264-8e00-4757-91db-c417e70fc8c5\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1787130427,376000000],12,null,null,[\"100000000000000000008\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.30.97\",null,null,null,null,null,1],[\"81e48729-b9c3-41ba-8c0f-653b9125e9bb\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1786113629,554000000],19,null,null,[\"100000000000000000009\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.29.73\",null,null,null,null,null,1],[\"9552e62b-7096-4042-9714-e391976de215\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1786901929,621000000],14,null,null,[\"100000000000000000010\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.30.97\",null,null,null,null,null,1],[\"b1d14f3f-082c-4135-921b-1afc5fc819e7\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1786359350,149000000],14,null,null,[\"100000000000000000011\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.30.97\",null,null,null,null,null,1],[\"32b652de-efc2-45f9-8598-63ebf908fd4a\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1783090435,58000000],46,null,null,[\"100000000000000000012\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.25.80\",null,null,null,[true,false],null,1],[\"8e070962-84fe-4fab-90e1-1c9c0d2fc568\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1782412382,199000000],37,null,null,[\"100000000000000000013\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.23.74\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_phase1_file_sharing\",[1]],[\"vaf_app_quality_ads_presence\",[2]]]],null,null,null,1],[\"a2e8fc6e-2530-4235-a6a0-207f925b2989\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1783544301,215000000],26,null,null,[\"100000000000000000014\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.23.74\",null,[[[\"vaf_app_quality_stability\",[1]],[\"vaf_app_quality_battery_heat\",[3]],[\"vaf_app_quality_performance\",[1]]]],null,null,null,1],[\"65c2929d-fa3f-47ca-b2a8-17f6f545dc27\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1777514021,556000000],61,null,null,[\"100000000000000000015\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.16.72\",null,[[[\"vaf_phase1_file_sharing\",[1]],[\"vaf_phase1_voice_messaging\",[1]]]],null,null,null,1],[\"fb3128b3-8960-4f9b-8b2e-88fbdbccffe5\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1775673066,821000000],66,null,null,[\"100000000000000000016\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.12.72\",null,null,null,null,null,1],[\"5785471f-9975-4cab-b5f7-bc6c8516ff93\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1777972377,641000000],58,null,null,[\"100000000000000000017\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.16.72\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_phase1_file_sharing\",[1]]]],null,null,null,1],[\"950f6937-bbeb-4879-bd57-41618d82cb59\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1751400096,114000000],931,null,null,[\"100000000000000000018\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.25.18.80\",null,null,null,null,null,3],[\"60711e3f-82f4-42dd-b58a-26f9c0ba15e6\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1771696319,604000000],3763,null,null,[\"100000000000000000019\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.6.72\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_phase1_file_sharing\",[3]]]],null,null,null,1],[\"d792a9ea-14ab-49c8-998a-7b81e4eb14e2\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1748129194,85000000],55019,null,null,[\"100000000000000000020\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.25.15.80\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_phase1_file_sharing\",[1]]]],null,null,null,1],[\"4e57fe69-13cd-4437-8d42-d0fd94bbe807\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1772279137,874000000],83,null,null,[\"100000000000000000021\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"3fb2d63f-9d1a-4a57-abed-e4bdfa45ef0c\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1771327902,513000000],3044,null,null,[\"100000000000000000022\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.5.74\",null,[[[\"vaf_uploading_photos\",[1]],[\"vaf_see_your_posting_history\",[1]],[\"vaf_group_messaging\",[1]]]],null,null,null,1],[\"c096c6d7-4c82-4c55-8d4e-226181b265bd\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1772026823,734000000],81,null,null,[\"100000000000000000023\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,2],[\"8e717708-500e-42e1-9d13-8a9be53d6969\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1771552657,965000000],665,null,null,[\"100000000000000000024\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.5.74\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_never_display_visually_good\",[1]],[\"vaf_phase1_file_sharing\",[1]]]],null,null,null,2],[\"bd39b7cf-62ec-480b-a3b5-f2fb3e60eeed\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1741957342,970000000],20586,null,null,[\"100000000000000000025\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.24.2.76\",null,null,null,null,null,1],[\"f62c7bee-4edd-4018-8fab-f81a51b907ed\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1751054246,5000000],42555,null,null,[\"100000000000000000026\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.25.18.80\",null,null,null,[true,false],null,1],[\"15bc7422-1846-4ae1-81b0-4a1c8846067b\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1749284001,194000000],27517,null,null,[\"100000000000000000027\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.25.16.84\",null,null,null,null,null,1],[\"8029ffe2-ac8a-4615-a5f3-87457ac42e61\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1753312869,352000000],793267,null,null,[\"100000000000000000028\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.25.19.83\",null,[[[\"vaf_phase1_file_sharing\",[1]],[\"vaf_phase1_voice_messaging\",[1]]]],null,null,null,1],[\"072b86a0-efb5-4e1c-9fe5-7b0f6b8988f5\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1751398704,477000000],15116,null,null,[\"100000000000000000029\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.23.12.78\",null,null,null,null,null,1],[\"a22dd873-5750-4ba6-acf0-2aa6e2c4608d\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/EGemoI2NTXmTsBVtJqk8jxF9rh8ApRWfsIMQSt2uE4OcpQqbFu7f7NbTK05lx80nuSijCz7sc3a277R67g\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1735559476,826000000],28088,null,null,[\"100000000000000000030\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/EGemoI2NTXmTsBVtJqk8jxF9rh8ApRWfsIMQSt2uE4OcpQqbFu7f7NbTK05lx80nuSijCz7sc3a277R67g\"]]],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.24.24.79\",null,null,null,null,null,1],[\"7296f38c-7010-4274-b58e-17afa8281d10\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1727999408,963000000],10873,null,null,[\"100000000000000000031\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.24.19.86\",null,[[[\"vaf_phase1_file_sharing\",[1]],[\"vaf_phase1_voice_messaging\",[1]]]],null,null,null,1],[\"9b040475-9315-468e-89f9-0dd13c21afab\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1758060619,974000000],32645,null,null,[\"100000000000000000032\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.25.24.78\",null,null,null,null,null,1],[\"00bbd529-7943-49a6-8546-642626388138\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1753522129,278000000],32463,null,null,[\"100000000000000000033\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.25.20.82\",null,null,null,null,null,1],[\"9ca1f6b3-d9da-4b72-a4fc-09e5d78dd1e8\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1753464384,594000000],39675,null,null,[\"100000000000000000034\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.25.19.83\",null,null,null,null,null,1],[\"70acd4fb-4f64-4f9d-951e-cb3b9732bd10\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1739389710,684000000],239644,null,null,[\"100000000000000000035\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.24.23.78\",null,[[[\"vaf_phase1_file_sharing\",[1]],[\"vaf_phase1_voice_messaging\",[1]]]],null,[true,false],null,1],[\"4e7bbf00-123c-410c-8c09-918ba33afb18\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1742401527,126000000],32939,null,null,[\"100000000000000000036\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.25.6.74\",null,[[[\"vaf_phase1_file_sharing\",[1]],[\"vaf_phase1_voice_messaging\",[1]]]],null,[true,false],null,1],[\"ec3f204f-20ad-48a2-b495-664a8827e630\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1733158716,414000000],498533,null,null,[\"100000000000000000037\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.24.23.78\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_phase1_file_sharing\",[1]]]],null,null,null,1],[\"218e3ff3-4776-4136-baa7-af00ff42c41a\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789726313,777000000],1,null,null,[\"100000000000000000038\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.36.74\",null,null,null,null,null,2],[\"856389e7-af6d-4667-8ed6-082a0b3402f3\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789740395,283000000],2,null,null,[\"100000000000000000039\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.36.74\",null,null,null,null,null,1]],[null,\"CqwBIqMBAXtFU-vbgpKwWK8Fw1cL37D_enI9bgF18Vz8FXzFiCcPQRrOnD6M5jYh3c4SZHSSSJSXBNPumfHyJxFqfPDbj5o8cTz5OVS-63te7ol-W5Zr5el5O0sYuZlxbA9QXkdwRxDmQUkXTejgoc8CGZuA-zXE8oejAD3yirjWs8u3a40dx4W9kGWv0cDhQNtbsbOzog84ca_zXXZR131GQDLr9YJYESjHnsnVBg\"]]",null,null,null,"generic"],["di",73],["af.httprm",73,"-4902461767409440375",3]] \ No newline at end of file +[["wrb.fr","UsvDTd","[[[\"55799e68-4a7d-4d63-9a75-cc002276de43\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792618131,63000000],0,null,null,[\"100000000000000000000\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"2e2da188-6935-4fa7-9fbc-58e1e7186272\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792618082,250000000],0,null,null,[\"100000000000000000001\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,null,null,null,null,1],[\"21a8e9ca-2c0f-4423-bf9c-37bb5f5f2587\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617969,830000000],0,null,null,[\"100000000000000000002\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,[[[\"vaf_app_quality_ads_presence\",[1]]]],null,[true,false],null,1],[\"1971713d-f406-4cea-ae91-29a1b9ab184b\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617963,668000000],0,null,null,[\"100000000000000000003\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,[[[\"vaf_app_quality_usability\"],[\"vaf_app_quality_ads_intrusiveness\"],[\"vaf_app_quality_battery_efficiency\"]]],null,null,null,1],[\"5a4a4459-e287-4841-a9ca-ab292f2425fc\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617888,177000000],0,null,null,[\"100000000000000000004\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.19.244\",null,[[[\"vaf_app_quality_performance\",[3]],[\"vaf_app_quality_battery_heat\",[3]],[\"vaf_app_quality_usability\",[3]]]],null,[true,false],null,1],[\"8c0d2ab5-c832-4087-927f-bb7f48192352\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617878,225000000],0,null,null,[\"100000000000000000005\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"8f19dd97-d367-42b4-b9a7-0a2c92ac069f\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617869,856000000],0,null,null,[\"100000000000000000006\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"466f0dd7-de2d-4edf-99ae-db1c8fe0f806\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617863,858000000],0,null,null,[\"100000000000000000007\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,[[[\"vaf_app_quality_ads_frequency\"],[\"vaf_phase1_voice_messaging\"],[\"vaf_app_quality_performance\"]]],null,null,null,1],[\"57ea8eab-9f05-4c5c-b53a-b6404b744425\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617813,385000000],0,null,null,[\"100000000000000000008\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,[[[\"vaf_app_quality_ads_frequency\",[2]]]],null,null,null,1],[\"cc596dfe-74b6-4095-a7f3-e81883b67299\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617811,937000000],0,null,null,[\"100000000000000000009\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,[true,false],null,1],[\"b33e27a4-89cb-48fc-8c1d-ea0a10dac678\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617783,945000000],0,null,null,[\"100000000000000000010\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"bebd0349-eb37-426f-a438-bffeffa7dd2c\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617645,846000000],0,null,null,[\"100000000000000000011\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_app_quality_battery_efficiency\",[2]],[\"vaf_app_quality_ads_intrusiveness\"]]],null,[true,false],null,1],[\"101191a0-f571-4ac7-bc2a-600985024d27\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617577,196000000],0,null,null,[\"100000000000000000012\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.29.73\",null,null,null,null,null,1],[\"5f7d5057-7746-48d1-9322-6b3e97836574\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617529,554000000],0,null,null,[\"100000000000000000013\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"fa21296a-ea03-470b-a8ea-e60e122be541\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617354,291000000],0,null,null,[\"100000000000000000014\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"a03fd16c-315e-4d59-ba27-adb4760887fe\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617346,932000000],0,null,null,[\"100000000000000000015\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.30.97\",null,null,null,null,null,1],[\"32ae7ccf-1cec-45aa-8b71-ad627bf550f2\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617325,951000000],0,null,null,[\"100000000000000000016\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"f0c8b881-72f3-473e-a289-c750c2dbedeb\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617243,728000000],0,null,null,[\"100000000000000000017\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.38.73\",null,null,null,null,null,1],[\"12aae702-1d73-4f2f-b75d-4c676587816f\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617225,981000000],0,null,null,[\"100000000000000000018\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.23.74\",null,[[[\"vaf_app_quality_ads_presence\",[1]],[\"vaf_app_quality_battery_efficiency\",[1]],[\"vaf_app_quality_visual_appeal\",[1]]]],null,null,null,1],[\"de844288-58b7-4d2b-b74a-8d7786e93063\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617175,437000000],0,null,null,[\"100000000000000000019\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.34.81\",null,null,null,null,null,1],[\"09048637-17bd-4d8c-9d86-10cb95154e01\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617093,898000000],0,null,null,[\"100000000000000000020\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.37.73\",null,[[[\"vaf_app_quality_visual_appeal\"],[\"vaf_phase1_file_sharing\"],[\"vaf_app_quality_usability\"]]],null,null,null,1],[\"1fe3aee3-56d8-4099-a312-3f7b1ed5f62b\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617068,901000000],0,null,null,[\"100000000000000000021\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"95f8469a-d0f2-43a0-b332-79d52d6a1b19\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617059,995000000],0,null,null,[\"100000000000000000022\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,[[[\"vaf_app_quality_ads_presence\",[2]],[\"vaf_app_quality_ads_intrusiveness\",[3]],[\"vaf_app_quality_battery_heat\"]]],null,null,null,1],[\"3304410c-6e70-42dd-92f0-1b5c72d5bde1\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792617046,370000000],1,null,null,[\"100000000000000000023\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"1febd80c-1fa4-4228-b106-26936fccef57\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616982,938000000],0,null,null,[\"100000000000000000024\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.39.79\",null,null,null,null,null,1],[\"fbba2634-4e7a-48af-90fe-9c2973cdcb16\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616870,774000000],0,null,null,[\"100000000000000000025\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,[[[\"vaf_phase1_sending_emails\",[2]],[\"vaf_phase1_making_phone_calls\",[1]],[\"vaf_profile_management\",[3]]]],null,[true,false],null,1],[\"4640fabe-311f-4b73-ae89-cd402419295a\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,\"Whatsapps\",\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616869,534000000],0,null,null,[\"100000000000000000026\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,[[[\"vaf_app_quality_stability\",[1]],[\"vaf_app_quality_usability\",[1]],[\"vaf_app_quality_battery_efficiency\",[2]]]],null,null,null,1],[\"b00edeec-d80f-4a71-a317-ea95b1707cd7\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616765,305000000],1,null,null,[\"100000000000000000027\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"831e7886-8bb4-4b7a-9e93-3a4ccb0c3eb6\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616678,370000000],0,null,null,[\"100000000000000000028\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"b8b470a7-b8c5-4bf3-875b-4338187e1876\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616641,119000000],0,null,null,[\"100000000000000000029\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"a30813fc-2fe9-470b-8dd3-df53a5d72389\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616625,674000000],0,null,null,[\"100000000000000000030\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"b824a553-6704-44d8-b967-14fdb054d39e\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616601,545000000],0,null,null,[\"100000000000000000031\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"a83a464c-9a99-4358-9a96-b8caa22490d6\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616569,589000000],0,null,null,[\"100000000000000000032\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"d0808235-2fbd-434b-ba21-8c6c486bf252\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616560,886000000],0,null,null,[\"100000000000000000033\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,[[[\"vaf_app_quality_ads_presence\",[2]],[\"vaf_app_quality_ads_frequency\",[2]],[\"vaf_app_quality_visual_appeal\",[3]]]],null,null,null,1],[\"efa93507-fcf7-4926-a7c6-3353dc69787e\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616552,722000000],0,null,null,[\"100000000000000000034\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,[[[\"vaf_app_quality_visual_appeal\",[1]],[\"vaf_app_quality_battery_heat\",[1]],[\"vaf_app_quality_ads_intrusiveness\",[3]]]],null,null,null,1],[\"47f75d30-2ece-4483-9441-d3b028f4f3f7\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616535,281000000],0,null,null,[\"100000000000000000035\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"9c94f452-c4b5-4d74-b3d8-80516c2d50ac\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616489,614000000],1,null,null,[\"100000000000000000036\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,[[[\"vaf_phase1_voice_messaging\"],[\"vaf_phase1_file_sharing\",[1]]]],null,null,null,1],[\"07ae699e-442a-41b7-878b-18314b9619ff\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616447,188000000],0,null,null,[\"100000000000000000037\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.39.79\",null,null,null,null,null,1],[\"30537b1e-6822-4448-bb64-7c5b4082e2a4\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616323,780000000],0,null,null,[\"100000000000000000038\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,[[[\"vaf_phase1_file_sharing\",[1]],[\"vaf_app_quality_ads_intrusiveness\",[1]],[\"vaf_app_quality_usability\",[1]]]],null,null,null,1],[\"732a01a2-764c-4b3c-b90f-7b90a73ef201\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616061,111000000],0,null,null,[\"100000000000000000039\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.27.85\",null,[[[\"vaf_phase1_file_sharing\"],[\"vaf_app_quality_ads_intrusiveness\"],[\"vaf_phase1_voice_messaging\"]]],null,null,null,1]],[null,\"CscBIr4BAV8d1P0YN8ysd4ER3yLt9Y1yplS3naM0iJck0i10-taKtjGTmUUqC7v9Hfrq6Lo85PdQOIZwnuut68d4UrYj7LdRWixw6JK63sy-PW4smFm7KyYhBbEPC1h9lIi9lNV4W1ATGCufcBwi1DOo9qk7hmiTPT_yYUSyM717nVQ7ud6mZTvkZs_3phGXqbfCnmjktfhyOla2lz9MOCR8euuehtUsrEQaoYPO23E2NwmGTXxOvv91tzLClzPhHL-BZyidgOrWBg\"]]",null,null,null,"generic"],["di",38],["af.httprm",37,"1526970100491088222",3]] \ No newline at end of file diff --git a/captures/reviews_p2.txt b/captures/reviews_p2.txt index d7e4581..ddfbb13 100644 --- a/captures/reviews_p2.txt +++ b/captures/reviews_p2.txt @@ -1,3 +1,3 @@ )]}' -[["wrb.fr","UsvDTd","[[[\"e3486623-ea56-409c-b4d6-aaa68c8d7cd7\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1788059769,976000000],9,null,null,[\"100000000000000000000\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.33.74\",null,[[[\"vaf_app_quality_visual_appeal\",[2]],[\"vaf_app_quality_battery_efficiency\",[1]],[\"vaf_app_quality_performance\",[2]]]],null,null,null,1],[\"1858c8ed-0a40-42e1-91ed-aebccdc27ff4\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789244428,933000000],4,null,null,[\"100000000000000000001\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.35.75\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_phase1_file_sharing\",[3]]]],null,[true,false],null,1],[\"86478a55-1044-45c2-857c-b86e1b275731\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789143471,955000000],1,null,null,[\"100000000000000000002\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.34.81\",null,null,null,null,null,1],[\"6b953024-2e29-4930-ba4d-8427868b3b2e\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1788129897,730000000],9,null,null,[\"100000000000000000003\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.33.76\",null,null,null,null,null,1],[\"2a7483c1-10ef-4b70-ad45-3e7543fd570a\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789249074,314000000],5,null,null,[\"100000000000000000004\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.34.81\",null,[[[\"vaf_app_quality_battery_heat\",[1]],[\"vaf_app_quality_ads_presence\",[2]],[\"vaf_app_quality_ads_intrusiveness\",[2]]]],null,[true,false],null,1],[\"5b715746-285a-4706-9fca-41ab5af7ffd5\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1788691926,189000000],6,null,null,[\"100000000000000000005\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.34.81\",null,null,null,null,null,1],[\"ae576c05-880d-4a7b-96dc-02780fbeca86\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1788290410,727000000],7,null,null,[\"100000000000000000006\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.33.76\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_phase1_file_sharing\",[1]],[\"vaf_app_quality_performance\",[1]]]],null,null,null,1],[\"8a5adbe2-9598-4103-be77-cb9d45d24138\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1788033651,279000000],10,null,null,[\"100000000000000000007\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.33.76\",null,[[[\"vaf_app_quality_usability\",[1]],[\"vaf_phase1_voice_messaging\",[3]]]],null,[true,false],null,2],[\"79aa05c3-0b1d-4474-989d-97f8c8e8d9ac\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789479413,78000000],2,null,null,[\"100000000000000000008\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.35.75\",null,null,null,null,null,1],[\"124bf5b5-4bf9-4dc6-bb3a-13110fbcb3b7\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789434065,604000000],3,null,null,[\"100000000000000000009\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.35.75\",null,null,null,null,null,1],[\"117afdc1-631d-4b81-bd2d-0e67d6d03f4e\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1788989720,23000000],4,null,null,[\"100000000000000000010\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.34.81\",null,[[[\"vaf_app_quality_ads_intrusiveness\",[1]],[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_app_quality_ads_presence\",[1]]]],null,null,null,1],[\"fb4f3f6c-4cc7-4968-a9a1-11d8fe37404a\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789588088,891000000],1,null,null,[\"100000000000000000011\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.36.72\",null,null,null,null,null,1],[\"54dce74d-2ed7-4189-9ec5-896b4079c03f\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789029428,201000000],3,null,null,[\"100000000000000000012\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.35.75\",null,null,null,null,null,1],[\"0aa286da-285d-412a-a292-09f74db0b89c\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1788524232,946000000],8,null,null,[\"100000000000000000013\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.34.81\",null,null,null,null,null,1],[\"1cdf5291-5235-471a-9d12-ccfc8520d3e4\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789241503,379000000],3,null,null,[\"100000000000000000014\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.34.81\",null,null,null,[true,false],null,1],[\"be0b8d2f-2c3f-4470-a022-9c687df42e9e\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1788073386,990000000],9,null,null,[\"100000000000000000015\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.33.76\",null,null,null,null,null,1],[\"bf630b68-9beb-47f5-a4c3-1baeb4d14c81\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1787660502,144000000],12,null,null,[\"100000000000000000016\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.32.83\",null,null,null,[true,false],null,1],[\"2cf3f3ee-8967-479e-bc4d-66819055abe3\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1787371687,730000000],14,null,null,[\"100000000000000000017\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.30.97\",null,[[[\"vaf_app_quality_battery_efficiency\",[3]],[\"vaf_app_quality_performance\",[1]],[\"vaf_app_quality_usability\",[3]]]],null,[true,false],null,1],[\"e4fd24d3-6ce8-45bf-96ed-34e4efa4a77c\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1784929250,181000000],25,null,null,[\"100000000000000000018\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.27.85\",null,null,null,null,null,2],[\"30a52207-845a-4521-8c38-bf7f4cf5b0dc\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1788533275,788000000],7,null,null,[\"100000000000000000019\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.33.76\",null,null,null,null,null,1],[\"9bbe3084-7344-4d58-94f6-ef002f825043\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1784399605,106000000],28,null,null,[\"100000000000000000020\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.27.85\",null,null,null,null,null,1],[\"5465650f-16f9-4ca6-b1b5-fbad5634782f\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1786870543,373000000],17,null,null,[\"100000000000000000021\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.30.97\",null,null,null,null,null,1],[\"b4c5e137-014d-4924-b656-abd6486dba64\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1784193049,401000000],28,null,null,[\"100000000000000000022\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.27.85\",null,null,null,null,null,1],[\"99e289cb-0ca8-4565-a689-9753d976a4f6\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1784979923,679000000],27,null,null,[\"100000000000000000023\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.28.77\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_app_quality_ads_frequency\",[3]],[\"vaf_app_quality_usability\",[1]]]],null,null,null,2],[\"443d3a87-680f-44ad-a281-72241c6b5561\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1782951987,759000000],32,null,null,[\"100000000000000000024\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.24.80\",null,[[[\"vaf_app_quality_usability\",[1]],[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_app_quality_battery_efficiency\",[3]]]],null,null,null,2],[\"7eebc766-4918-4caa-8875-39ee52ca6859\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1786713978,907000000],17,null,null,[\"100000000000000000025\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.31.77\",null,null,null,null,null,1],[\"97d1e676-bd4f-4923-8f19-38d249d75ead\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1784538060,707000000],31,null,null,[\"100000000000000000026\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.27.85\",null,[[[\"vaf_never_display_deceptive_ads\",[1]],[\"vaf_phase1_making_voip_calls\",[1]],[\"vaf_phase1_record_videos\",[2]]]],null,[true,false],null,1],[\"f0f2bd7d-96d5-41af-81f4-5bb3a18ff179\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1782561191,645000000],36,null,null,[\"100000000000000000027\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.24.80\",null,null,null,null,null,1],[\"1fabccec-b972-4efb-9f97-8f6985050f6d\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],4,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1784229927,656000000],26,null,null,[\"100000000000000000028\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.27.85\",null,[[[\"vaf_app_quality_ads_presence\",[2]],[\"vaf_app_quality_battery_efficiency\",[3]],[\"vaf_app_quality_ads_intrusiveness\",[2]]]],null,null,null,1],[\"c56369c7-6739-4361-9501-1fca2147cdab\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1786253636,924000000],18,null,null,[\"100000000000000000029\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.30.97\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_never_display_negative_ads_impact\",[1]],[\"vaf_phase1_international_calling\",[1]]]],null,null,null,1],[\"352e767c-d32f-4b48-b2f6-cba42f78fbe9\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1783165424,589000000],34,null,null,[\"100000000000000000030\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.25.80\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_phase1_file_sharing\",[1]],[\"vaf_app_quality_visual_appeal\",[3]]]],null,null,null,2],[\"0246355e-95d7-46aa-a848-e56379978cf8\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1783163413,384000000],32,null,null,[\"100000000000000000031\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.25.80\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_app_quality_usability\",[2]],[\"vaf_app_quality_ads_intrusiveness\",[3]]]],null,[true,false],null,1],[\"21ca6ae3-f693-4d38-a538-6364b09fe1b5\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1787053286,695000000],14,null,null,[\"100000000000000000032\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.29.73\",null,[[[\"vaf_app_quality_performance\"],[\"vaf_app_quality_ads_intrusiveness\"],[\"vaf_app_quality_battery_efficiency\"]]],null,null,null,1],[\"5fc15903-0f4e-4f57-88d1-8c1143548df6\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1787143862,160000000],36,null,null,[\"100000000000000000033\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.31.77\",null,null,null,[true,false],null,1],[\"f44028d8-1177-4884-a990-897b0839c97c\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1784810435,798000000],27,null,null,[\"100000000000000000034\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.28.77\",null,null,null,[true,false],null,1],[\"2d873b5a-17da-4fb1-92b9-972ff88317b6\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1786525020,751000000],17,null,null,[\"100000000000000000035\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.30.97\",null,null,null,null,null,1],[\"0228f2d3-9b5c-4200-b97d-40560a01ae84\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1785434829,245000000],24,null,null,[\"100000000000000000036\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.29.73\",null,null,null,null,null,1],[\"c0cc7e8d-454d-4407-8958-3cda2e322c4f\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1788682399,193000000],6,null,null,[\"100000000000000000037\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.34.81\",null,null,null,null,null,1],[\"3ab0a9e6-590f-438f-9c0d-9e8c6ef29d57\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789589954,516000000],2,null,null,[\"100000000000000000038\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.34.81\",null,null,null,null,null,1],[\"5134b822-4760-4708-bc64-2af7f9ba1f90\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1789593838,40000000],1,null,null,[\"100000000000000000039\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.36.72\",null,null,null,null,null,1]],[null,\"CqwBIqMBAXtFU-tMdPViZZb0beVquu9mxE-mMhtlJRPdPacoVGE9Aoca_UKlazbvKdYeluKn_XTo6Xyi7azGT58OBMFidcgBCL_wzQMv9oPyGrYCvHXTIYdpRSXQd5MHfjUdsvYUPHZcQdeUrRgrmO_Ow2Vwi6PJsxYIV7TBrH7_S5fAyyAd9RRxxHyZXUC8nGXfjxeKF1j4gs2lDQzY0Wj_CFD84zm6hijInsnVBg\"]]",null,null,null,"generic"],["di",155],["af.httprm",155,"6771663224452341897",3]] \ No newline at end of file +[["wrb.fr","UsvDTd","[[[\"111d9efa-3b98-4cbb-97d2-8d93f9a87969\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792616041,539000000],0,null,null,[\"100000000000000000000\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"367d29bc-b864-44e3-9479-f91f5098b992\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615985,608000000],0,null,null,[\"100000000000000000001\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.38.73\",null,null,null,null,null,1],[\"f477bd73-676e-40e1-9b46-186e409a44c2\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615926,509000000],1,null,null,[\"100000000000000000002\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,[[[\"vaf_never_display_visually_bad\",[2]],[\"vaf_never_display_useful_notifications\",[1]],[\"vaf_phase1_syncing_contacts\",[1]]]],null,[true,false],null,1],[\"809319b7-b145-4879-8f10-4de92f8a786e\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615876,464000000],0,null,null,[\"100000000000000000003\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"f4134218-afa8-44d0-a09a-ad10b2e0d433\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615874,437000000],0,null,null,[\"100000000000000000004\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,[[[\"vaf_app_quality_battery_efficiency\",[1]],[\"vaf_app_quality_battery_heat\",[1]],[\"vaf_app_quality_stability\",[1]]]],null,null,null,1],[\"f88d80e1-cf6b-47b1-a870-18f596556b5d\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615740,987000000],0,null,null,[\"100000000000000000005\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"471da094-420d-44c5-ade5-83bfdcc891ef\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615724,232000000],0,null,null,[\"100000000000000000006\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,null,null,null,null,1],[\"791366ea-3ae5-48c2-b2f9-42f43566c07e\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615684,692000000],0,null,null,[\"100000000000000000007\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"ffc528a5-7ee0-4bcc-9069-6d10b21a330a\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615673,124000000],0,null,null,[\"100000000000000000008\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"39d18142-4a84-4aa0-8470-d88a07e2a1a8\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],2,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615592,151000000],0,null,null,[\"100000000000000000009\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"7fa9f35d-0fbd-43fa-a990-152c966939c0\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615563,324000000],0,null,null,[\"100000000000000000010\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.39.74\",null,null,null,null,null,1],[\"c1249b2f-483e-4633-8d16-673274036d04\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615555,11000000],0,null,null,[\"100000000000000000011\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.39.74\",null,null,null,null,null,1],[\"38dee432-e503-4ce9-8c7e-7982071e1ee7\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615519,430000000],0,null,null,[\"100000000000000000012\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"0e091952-ab6d-4afc-8338-a3f7447fd458\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615480,102000000],0,null,null,[\"100000000000000000013\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.26.73\",null,[[[\"vaf_app_quality_battery_heat\",[2]],[\"vaf_app_quality_stability\",[1]],[\"vaf_app_quality_usability\",[1]]]],null,null,null,1],[\"e3f04a5b-7c0c-4699-8eb6-f88323d80054\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615442,89000000],0,null,null,[\"100000000000000000014\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,[[[\"vaf_app_quality_stability\",[1]],[\"vaf_app_quality_ads_presence\",[1]],[\"vaf_phase1_voice_messaging\",[1]]]],null,null,null,1],[\"7a3aadda-a8d5-499b-9c26-0f1116ba85e8\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615407,264000000],0,null,null,[\"100000000000000000015\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.27.85\",null,[[[\"vaf_app_quality_battery_efficiency\",[2]],[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_app_quality_stability\",[1]]]],null,null,null,1],[\"c91436ca-6c16-4e5e-bef0-933dd9046e1a\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615317,237000000],0,null,null,[\"100000000000000000016\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,[[[\"vaf_app_quality_battery_heat\"],[\"vaf_app_quality_visual_appeal\"],[\"vaf_phase1_file_sharing\"]]],null,null,null,1],[\"76aadf1e-4e3f-4b1c-914e-2b72ca944b9b\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615283,463000000],0,null,null,[\"100000000000000000017\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,[[[\"vaf_app_quality_ads_intrusiveness\"],[\"vaf_phase1_file_sharing\"],[\"vaf_app_quality_usability\"]]],null,null,null,1],[\"99ccbed6-5a76-4bb9-bd47-946d2ac07e36\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615225,614000000],0,null,null,[\"100000000000000000018\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"225646f3-6607-4d5b-afd1-4471e42cdf8e\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615218,385000000],0,null,null,[\"100000000000000000019\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.27.85\",null,[[[\"vaf_app_quality_battery_heat\",[2]],[\"vaf_app_quality_ads_frequency\",[2]],[\"vaf_app_quality_ads_presence\",[2]]]],null,null,null,1],[\"e95ad9ba-49e2-4f92-993a-f5a323841090\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615188,630000000],0,null,null,[\"100000000000000000020\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"5f07475d-ba9b-426d-9ad3-d6f82be6d8af\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615162,391000000],0,null,null,[\"100000000000000000021\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"d9524db8-9a9a-40c9-bc77-c8ad9faff64a\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615160,812000000],0,null,null,[\"100000000000000000022\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.32.83\",null,null,null,null,null,1],[\"a9978b73-c01c-4b58-bda6-b50167ad10d5\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615111,705000000],1,null,null,[\"100000000000000000023\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,null,null,null,null,1],[\"1544a40b-e6e7-4a77-b667-651e28b0db32\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615018,864000000],0,null,null,[\"100000000000000000024\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,null,null,null,null,1],[\"a4ce597d-cf3a-47d2-a9d8-13b8ac63f39f\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792615014,166000000],0,null,null,[\"100000000000000000025\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"b70e6e54-60d0-4923-8bb1-cef285564f06\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614947,188000000],0,null,null,[\"100000000000000000026\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,[[[\"vaf_app_quality_visual_appeal\"],[\"vaf_phase1_file_sharing\",[1]],[\"vaf_app_quality_performance\",[1]]]],null,null,null,1],[\"1f183bfb-013e-4d59-ac5e-17b1911bd5ea\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614842,919000000],0,null,null,[\"100000000000000000027\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,[[[\"vaf_app_quality_usability\",[2]],[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_app_quality_ads_presence\",[1]]]],null,null,null,1],[\"c6927231-7008-471f-9ae0-1d8a5f3e8be6\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614794,85000000],0,null,null,[\"100000000000000000028\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,[[[\"vaf_app_quality_stability\",[1]],[\"vaf_app_quality_ads_frequency\",[1]],[\"vaf_phase1_voice_messaging\",[1]]]],null,[true,false],null,1],[\"ac34e0c4-3f91-4b78-b257-b9024d9f8320\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614734,651000000],0,null,null,[\"100000000000000000029\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,[[[\"vaf_app_quality_ads_intrusiveness\",[1]],[\"vaf_app_quality_battery_efficiency\",[1]],[\"vaf_app_quality_performance\",[1]]]],null,null,null,1],[\"bbd11d4c-15b0-48cd-9110-7f5f8662e73b\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614730,819000000],0,null,null,[\"100000000000000000030\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,[[[\"vaf_app_quality_battery_efficiency\",[1]],[\"vaf_app_quality_performance\",[1]],[\"vaf_app_quality_stability\",[1]]]],null,null,null,1],[\"ea739c20-6a6a-48b7-a2ea-3ff28bec8430\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614715,361000000],0,null,null,[\"100000000000000000031\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.38.73\",null,[[[\"vaf_app_quality_usability\",[1]],[\"vaf_app_quality_ads_presence\",[3]],[\"vaf_app_quality_ads_frequency\",[3]]]],null,[true,false],null,1],[\"a7ca0b58-15a4-498a-ba9c-6f75c20eea84\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],1,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614672,743000000],0,null,null,[\"100000000000000000032\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"a1dd9d35-22a9-4898-ae07-970188674532\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614645,179000000],0,null,null,[\"100000000000000000033\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.35.75\",null,null,null,null,null,1],[\"9318d7f7-0554-4345-9e78-16a3dce288aa\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614605,54000000],0,null,null,[\"100000000000000000034\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.40.76\",null,[[[\"vaf_phase1_voice_messaging\",[1]],[\"vaf_app_quality_battery_efficiency\",[1]],[\"vaf_app_quality_visual_appeal\",[1]]]],null,null,null,2],[\"ddcc9cbb-8eb8-41c3-8389-fa3fcc000c3e\",[\"Reviewer One\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614595,565000000],0,null,null,[\"100000000000000000035\",\"Reviewer One\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.41.77\",null,null,null,null,null,1],[\"320bf85c-07b5-48ec-b083-81526967f932\",[\"Reviewer Two\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614541,757000000],0,null,null,[\"100000000000000000036\",\"Reviewer Two\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.38.73\",null,null,null,null,null,1],[\"10c2cafe-602a-4f35-93ab-a0d089be063c\",[\"Reviewer Three\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],3,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614512,816000000],0,null,null,[\"100000000000000000037\",\"Reviewer Three\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],\"2.26.39.79\",null,null,null,null,null,1],[\"d0f526e5-fecc-43d5-b0ae-b7a6098ababa\",[\"Reviewer Four\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614325,998000000],0,null,null,[\"100000000000000000038\",\"Reviewer Four\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1],[\"f03f0f6a-5415-4a20-a947-5e1d1e9b62f6\",[\"Reviewer Five\",[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]]],5,null,\"Placeholder review text used as a fixture. The wording here is not a real person's; everything the store generates around it is untouched, including the HTML entities and the
breaks the payload really carries.
A second line, so entity and break handling stays exercised.\",[1792614318,822000000],0,null,null,[\"100000000000000000039\",\"Reviewer Five\",null,[[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/AVATAR-REDACTED\"]],true],[null,2,null,[null,null,\"https://play-lh.googleusercontent.com/Yq7oyNIvAAkuc69fG51sbAQS4otJxbObbt3xdr8tXxXyUdq4tVGtfgeKuptveGdP1srxaHVrNPzOYcfaEQ\"]]],null,null,null,null,null,null,1]],[null,\"CscBIr4BAV8d1P0amRpEQMtfJbG9l8iD916XP6cssbT8RUad6YtjFwKE9w-OXZCL7Gkw7fVh4QACmgjPoxNI-saGE-DTW2evZo5Ed3hLU-10CImKABbtB8oizfAxCuhueFOev3KQw4r4QqF0T_lMjVi6FiuEM1SCWbRMT2K45sokg7GznssA5hwJ9CQtdcdS_zT7lFbYSiC0xe1R73nsbbF98dS10vt1zPHX0NORsOrosNgb1nKHoCGuzaBEiiwf_bdLnCifgOrWBg\"]]",null,null,null,"generic"],["di",38],["af.httprm",38,"1797881556575353985",3]] \ No newline at end of file diff --git a/engine_core.py b/engine_core.py index 94a3258..f889866 100644 --- a/engine_core.py +++ b/engine_core.py @@ -126,9 +126,9 @@ def build_parser() -> argparse.ArgumentParser: f"to 2000)") ap.add_argument("--sort", default=parser.DEFAULT_REVIEW_SORT, choices=sorted(parser.REVIEW_SORTS), - help="review ordering. Only 'newest' is implemented: the " - "store's other two keys return an empty payload in " - "this request shape.") + help="review ordering: newest (posted_at descending, " + "kept across pages), relevant (the store's own " + "ranking) or rating. Default newest.") ap.add_argument("--no-authors", action="store_true", help="drop reviewer name, profile id and avatar from " "review rows") @@ -192,6 +192,12 @@ def resolve_target(args: argparse.Namespace) -> Tuple[Optional[str], Optional[st if reason: return None, None, reason mode = parser.mode_for_url(args.url) + # An app page is the address of BOTH app-level modes: `--mode app` + # reads the page, `--mode reviews` pages that app's reviews. Refusing + # the second contradicted `--help`, which says the route decides the + # mode unless --mode says otherwise. + if mode == "app" and args.mode == "reviews": + return "reviews", parser.with_market(args.url, args.hl, args.gl), None if args.mode and args.mode != "listing" and mode != args.mode: # An explicit --mode that disagrees with the URL is a mistake # worth naming rather than silently resolving one way. @@ -578,8 +584,16 @@ def run_reviews(session: Session, url: str, args: argparse.Namespace) -> RunOutc response, so there is nothing for a second worker to fetch — and the session is kept for the whole run, since the token belongs to it. - Page 1 comes out of the app page's own payload — no second request — and - every page after it from `batchexecute`. Both are the same structure. + The app page is fetched first, but only to establish that the app exists + in this market (Play answers a missing id with a clean 404) and to put the + session on Play's own origin for the POSTs that follow. EVERY page of rows + comes from `batchexecute`, page 1 included. + + Up to 0.2.0 page 1 was taken from the reviews the app page embeds. Those + are in relevance order whatever `--sort` says and carry no continuation + token, so page 2 was requested without one, came back as the start of the + list again, and was mostly eaten by dedupe — 20 / 1 / 19 rows over three + pages in one reported run, and "end_of_listing" after one page in another. """ out = RunOutcome() package = parser.package_from_url(url) @@ -589,7 +603,7 @@ def run_reviews(session: Session, url: str, args: argparse.Namespace) -> RunOutc try: html, status, state, reason = fetch_page(session, url, "reviews", 1, - "reviews_p1") + "reviews_app") except UsageError: raise except Exception as exc: @@ -600,11 +614,6 @@ def run_reviews(session: Session, url: str, args: argparse.Namespace) -> RunOutc return out seen: set = set() - records = parser.embedded_reviews(html) - out.rows.extend(_review_rows(records, package, args, page_num=1, - offset=0, seen=seen)) - out.pages_completed = 1 - token: Optional[str] = None endpoint = parser.batchexecute_url(args.hl, args.gl) while out.pages_completed < args.pages: @@ -743,7 +752,12 @@ def main(launch: Callable[[argparse.Namespace, Optional[str]], Any], print(f"[error] {_redact(str(exc))}", file=sys.stderr) return EXIT_USAGE if pool: - print(f"[info] exit {mask(pool.current)} (rotation: {pool.rotate})", + # A reviews run keeps one session for its whole length — the + # continuation token belongs to it — so a per-page policy does not + # apply there and the log must not claim it does. + rotation = ("one exit for the run: the review token belongs to the " + "session" if mode == "reviews" else pool.rotate) + print(f"[info] exit {mask(pool.current)} (rotation: {rotation})", file=sys.stderr) unpaginated = page_flow.warn_unpaginated(mode, args.pages) diff --git a/product_parser.py b/product_parser.py index ace3420..1b45e19 100644 --- a/product_parser.py +++ b/product_parser.py @@ -68,13 +68,18 @@ class names are build hashes. Reviews come from one structure reached two ways ------------------------------------------------ -The first page of an app's reviews is embedded in the app page's own payload. -Every page after it comes from `/_/PlayStoreUi/data/batchexecute`, RPC -`UsvDTd`, which answers a plain POST from a datacentre address with no -cookies and no key. Page 2 shares none of page 1's ids and every page carries -a continuation token, so the mode is bounded by `--pages` rather than by the -store. Both routes are the same 17-slot record, so `parse_review_record()` -serves both and they cannot drift. +Every page of `--mode reviews` comes from `/_/PlayStoreUi/data/batchexecute`, +RPC `UsvDTd`, which answers a plain POST from a datacentre address with no +cookies and no key. Each response carries a continuation token, and the next +page is asked for WITH it — page 2 shares none of page 1's ids — so the mode +is bounded by `--pages` rather than by the store. + +The app page also embeds a first handful of reviews in its own payload, in +the same 17-slot record. They are NOT page 1 of a reviews run, though they +look like it: they come in the store's "most relevant" order whatever +`--sort` asks for, and they carry no continuation token, so a run that +started from them asked for page 2 without one and got the start of the list +again. `parse_review_record()` still reads both, so the two cannot drift. """ import html as _html @@ -1139,21 +1144,32 @@ def _version(node: Any) -> Optional[str]: # to fail cheaply; `--reviews-per-call` raises it. REVIEWS_PER_CALL = 200 -# Play's sort key. There is exactly ONE, and that is a measurement rather -# than a design decision: the store's front end distinguishes "most -# relevant" (1), "newest" (2) and "rating" (3), and in THIS request shape -# only 2 returns anything at all. Measured 2026-09-22 on two apps, 40 -# requested each: sort 1 -> 0 reviews and no token, sort 2 -> 40 and a token, -# sort 3 -> 0 and no token. +# Play's sort keys, as its own front end sends them. All three work. # -# So this repo does not implement the other two orderings. That is a TODO -# about this request shape, not a limitation of the store — the front end -# plainly gets them — and the flag offers only what was measured to work, -# because a `--sort` with three values of which two silently return an empty -# run is worse than a flag with one. -REVIEW_SORTS = {"newest": 2} +# The key goes in the SECOND slot of the sort block, after a constant 2 the +# front end sends on every request: `[2, , [count, null, token], null, +# []]`. Measured 2026-10-22 on com.whatsapp, 20 asked for each: +# +# sort 1 relevant 20 reviews, the store's relevance order +# sort 2 newest 20 reviews, posted_at strictly descending +# sort 3 rating 20 reviews, grouped by score +# +# and `newest` stays in order ACROSS a continuation token: 40 + 40 reviews, +# no id shared, dates non-increasing over the page boundary. +# +# Up to 0.2.0 the key was sent in the FIRST slot. Sort 2 there still returned +# rows — in relevance order — and sorts 1 and 3 returned nothing at all, which +# was written up as "the store only answers newest". It was a measurement of +# the wrong request, not of the store; the correction is the reason for the +# table above. +REVIEW_SORTS = {"relevant": 1, "newest": 2, "rating": 3} DEFAULT_REVIEW_SORT = "newest" +# The constant the front end sends ahead of the sort key. Named so the shape +# above is readable at the call site; its meaning is not documented anywhere +# and nothing here depends on knowing it. +_SORT_BLOCK_HEAD = 2 + # Where each column sits in a review record. Identical in both routes, # because they are the same structure. REVIEW = { @@ -1175,16 +1191,21 @@ def build_reviews_request(package_id: str, count: int = REVIEWS_PER_CALL, Returned as a dict for the caller to urlencode, so no engine has to know the wire format and every engine sends the identical thing. - There is deliberately no score filter. The slot for one exists in the - payload and setting it does NOTHING: measured 2026-09-22, asking for - score 1 and score 5 each returned forty reviews spanning all five scores. - Shipping a `--min-score`-style filter here would be shipping a flag that - reports success and changes no row. + This repository does not implement a score filter. The store's front end + offers one; the forms tried in the sort block's fourth slot (2026-10-22, + correct shape) either changed nothing or returned no rows, so no flag is + offered until a form is measured to filter. + + `token` is the continuation token from the PREVIOUS response. Leaving it + None asks for the start of the list, which is right for page 1 and wrong + for every page after it. """ - sort_key = REVIEW_SORTS.get(sort, REVIEW_SORTS[DEFAULT_REVIEW_SORT]) + if sort not in REVIEW_SORTS: + raise ValueError(f"unknown review sort {sort!r}; " + f"expected one of {sorted(REVIEW_SORTS)}") pagination = [count, None, token] inner = [None, None, - [sort_key, None, pagination, None, []], + [_SORT_BLOCK_HEAD, REVIEW_SORTS[sort], pagination, None, []], [package_id, 7]] payload = [[[REVIEWS_RPC, json.dumps(inner, separators=(",", ":")), None, "generic"]]] @@ -1240,11 +1261,11 @@ def reviews_from_payload(payload: Any) -> Tuple[List[list], Optional[str]]: def embedded_reviews(markup: str) -> List[list]: - """The first page of reviews, which the app page carries in its own payload. + """The handful of reviews the app page carries in its own payload. - So `--mode app` gets reviews without a second request, and `--mode - reviews` starts from the same structure it will then page through. One - parser for both is what keeps the two routes from drifting. + Read to confirm an app page was served with its reviews block, not as + page 1 of `--mode reviews`: these are in relevance order whatever `--sort` + says and carry no continuation token (see the module docstring). """ out: List[list] = [] for _key, data in iter_data_blocks(markup): diff --git a/smoke_test.py b/smoke_test.py index 7a31d4e..ebb16b8 100644 --- a/smoke_test.py +++ b/smoke_test.py @@ -418,23 +418,73 @@ def test_request_builder_matches_what_the_store_answers(): form = parser.build_reviews_request("com.whatsapp", 40, None, "newest") ok &= check("[req] one form field", list(form) == ["f.req"], str(list(form))) ok &= check("[req] the RPC id", '"UsvDTd"' in form["f.req"]) - ok &= check("[req] sort key 2 — the only one that returns anything", - "[2,null,[40,null,null]" in form["f.req"], form["f.req"]) + # The sort key is the SECOND slot of the sort block, after a constant 2. + # Up to 0.2.0 this check pinned the key in the FIRST slot, which the + # store reads as "relevance" for 2 and answers with nothing for 1 and 3 — + # so the suite was defending the bug that made `--sort` do nothing. + for name, key in (("relevant", 1), ("newest", 2), ("rating", 3)): + inner = json.loads(json.loads( + parser.build_reviews_request("com.whatsapp", 40, None, name) + ["f.req"])[0][0][1]) + ok &= check(f"[req] --sort {name} sends key {key} in the second slot", + inner[2] == [2, key, [40, None, None], None, []], + str(inner[2])) ok &= check("[req] the app id and Play's type tag", '[\\"com.whatsapp\\",7]' in form["f.req"], form["f.req"]) # Measured: asking for score 1 and score 5 each returned forty reviews # spanning all five. A filter that changes nothing must not be offered. - ok &= check("[req] no score filter is sent", - "score_filter" not in str(parser.build_reviews_request.__doc__ or "") - or "does NOTHING" in (parser.build_reviews_request.__doc__ or "")) - ok &= check("[req] only the measured sort is offered", - set(parser.REVIEW_SORTS) == {"newest"}, str(parser.REVIEW_SORTS)) + newest = json.loads(json.loads(form["f.req"])[0][0][1]) + ok &= check("[req] no score filter is sent (none is implemented)", + newest[2][3] is None, str(newest[2])) + ok &= check("[req] all three of the store's orderings are offered", + parser.REVIEW_SORTS == {"relevant": 1, "newest": 2, "rating": 3}, + str(parser.REVIEW_SORTS)) + ok &= check("[req] the default ordering is newest", + parser.DEFAULT_REVIEW_SORT == "newest") + try: + parser.build_reviews_request("com.whatsapp", 40, None, "oldest") + ok &= check("[req] an unknown sort is refused, not silently replaced", + False, "no error raised") + except ValueError: + pass with_token = parser.build_reviews_request("com.whatsapp", 40, "TOKEN", "newest") ok &= check("[req] a token goes into the pagination slot", "[40,null,\\\"TOKEN\\\"]" in with_token["f.req"], with_token["f.req"]) return ok +def test_newest_reviews_are_newest_first(): + """`--sort newest` must come back newest first, and stay so over a page. + + The captures are taken by `make_fixtures.py` through + `build_reviews_request(..., "newest")`, page 2 with page 1's token, so + they are exactly what this repository asks the store for. Up to 0.2.0 that + request put the sort key in the wrong slot and the store answered in + relevance order: dates like 08-28, 08-31, 09-18, 07-26 — which no check + looked at, because every check counted rows. + """ + ok = True + pages = [] + for name in ("reviews_p1.txt", "reviews_p2.txt"): + path = os.path.join(HERE, "captures", name) + if not os.path.exists(path): + skip("newest-order", f"captures/{name} absent") + return True + with open(path, encoding="utf-8", errors="replace") as fh: + records, token = parser.reviews_from_payload( + parser.parse_batchexecute(fh.read())) + pages.append([parser.parse_review_record(r, "com.whatsapp") + for r in records]) + dates = [r.posted_at for page in pages for r in page] + ok &= check("[order] both pages carry rows", all(pages), str([len(p) for p in pages])) + ok &= check("[order] newest is non-increasing within AND across pages", + all(dates[i] >= dates[i + 1] for i in range(len(dates) - 1)), + str(dates[:6])) + ok &= check("[order] page 2 continues rather than restarts", + not ({r.review_id for r in pages[0]} & {r.review_id for r in pages[1]})) + return ok + + def test_fixtures_carry_no_real_reviewers(): """Guard by PATTERN, so the next capture is caught too. @@ -1222,6 +1272,7 @@ def evaluate(self, js, arg=None): return True def post_form(self, url, form): + self.world["forms"].append(form) step = self.world["posts"].pop(0) if isinstance(step, BaseException): raise step @@ -1238,7 +1289,7 @@ def _run_main(argv, pages, posts=(), discovery=None, after_solve=None, launch_error=None, env=None): """`(rc, world, out_prefix_files)` for one `engine_core.main` run.""" import engine_core - world = {"pages": list(pages), "posts": list(posts), "fetches": [], + world = {"pages": list(pages), "posts": list(posts), "forms": [], "fetches": [], "launches": [], "closed": 0, "injected": [], "current": None, "discovery": discovery, "after_solve": after_solve} @@ -1399,11 +1450,16 @@ def test_run_contract_reviews_refusal_is_not_an_end(): if app is None: skip("run-contract", "captures/app_free_us.html absent") return True + page1 = _review_capture("reviews_p1.txt") + if page1 is None: + skip("run-contract", "captures/reviews_p1.txt absent") + return True args = ["--mode", "reviews", "--app-id", "com.whatsapp", "--pages", "3"] for label, post in ( ("a refusal body", (_BLOCKED_PAGE, 429)), ("an empty body", ("", 200))): - rc, world, files = _run_main(args, [(app, 200)], posts=[post]) + rc, world, files = _run_main(args, [(app, 200)], + posts=[(page1, 200), post]) meta = json.loads(files.get(".meta.json", "{}")) ok &= check(f"[contract] reviews: {label} on page 2 is exit 6", rc == 6, f"rc={rc} {meta.get('stop_reason')}") @@ -1413,6 +1469,76 @@ def test_run_contract_reviews_refusal_is_not_an_end(): return ok +def _review_capture(name): + path = os.path.join(HERE, "captures", name) + if not os.path.exists(path): + return None + with open(path, encoding="utf-8", errors="replace") as fh: + return fh.read() + + +def _sent(form): + """The sort block a posted form carried: `[2, sort, [n, null, token], …]`.""" + return json.loads(json.loads(form["f.req"])[0][0][1])[2] + + +def test_run_contract_reviews_pages_chain_on_the_token(): + """Page N+1 is asked for WITH page N's token, and every page is sorted. + + The defect this pins: up to 0.2.0 page 1 came from the reviews embedded in + the app page — relevance-ordered, no token — so page 2 went out with no + token at all, came back as the start of the list, and dedupe ate it. One + reported run gave 20 / 1 / 19 rows over three pages. + """ + ok = True + app = capture("app_free_us.html") + p1, p2 = _review_capture("reviews_p1.txt"), _review_capture("reviews_p2.txt") + if None in (app, p1, p2): + skip("run-contract", "app and both review captures needed") + return True + token1 = parser.reviews_from_payload(parser.parse_batchexecute(p1))[1] + + rc, world, files = _run_main( + ["--mode", "reviews", "--app-id", "com.whatsapp", "--pages", "2", + "--reviews-per-call", "40"], + [(app, 200)], posts=[(p1, 200), (p2, 200)]) + forms = world["forms"] + ok &= check("[reviews] two pages means two POSTs", len(forms) == 2, str(len(forms))) + if len(forms) == 2: + ok &= check("[reviews] page 1 asks for the start of the list", + _sent(forms[0])[2][2] is None, str(_sent(forms[0]))) + ok &= check("[reviews] page 2 carries page 1's continuation token", + _sent(forms[1])[2][2] == token1 and token1, + str(_sent(forms[1])[2][2])[:40]) + ok &= check("[reviews] every page asks for newest", + all(_sent(f)[:2] == [2, 2] for f in forms)) + rows = json.loads(files.get(".json", "[]")) + ok &= check("[reviews] two full pages of rows, nothing eaten by dedupe", + len(rows) == 80, str(len(rows))) + ok &= check("[reviews] 40 rows on each page", + [sum(1 for r in rows if r["page"] == n) for n in (1, 2)] == [40, 40]) + dates = [r["posted_at"] for r in rows] + ok &= check("[reviews] the run's rows are newest first end to end", + all(dates[i] >= dates[i + 1] for i in range(len(dates) - 1))) + ok &= check("[reviews] the run completes", rc == 0, f"rc={rc}") + + # The ordering flag reaches the wire. + rc, world, _ = _run_main( + ["--mode", "reviews", "--app-id", "com.whatsapp", "--pages", "1", + "--sort", "rating"], [(app, 200)], posts=[(p1, 200)]) + ok &= check("[reviews] --sort rating sends key 3", + world["forms"] and _sent(world["forms"][0])[:2] == [2, 3], + str(world["forms"] and _sent(world["forms"][0]))) + + # An app page URL is the address of `--mode reviews` too. + rc, world, _ = _run_main( + ["--url", "https://play.google.com/store/apps/details?id=com.whatsapp", + "--mode", "reviews", "--pages", "1"], [(app, 200)], posts=[(p1, 200)]) + ok &= check("[reviews] --url --mode reviews runs reviews", + rc == 0 and len(world["forms"]) == 1, f"rc={rc}") + return ok + + def test_run_contract_captcha_budget(): """At most one paid solve per page, whatever retries and rotations do.""" ok = True @@ -1721,6 +1847,7 @@ def main(): test_markers_score_zero_on_good_pages, test_reviews_one_parser_two_routes, test_request_builder_matches_what_the_store_answers, + test_newest_reviews_are_newest_first, test_fixtures_carry_no_real_reviewers, test_banned_wording, test_engines_share_the_cli_and_the_loops, @@ -1743,6 +1870,7 @@ def main(): test_run_contract_proxy_and_partial_rows, test_run_contract_exit_codes_per_state, test_run_contract_reviews_refusal_is_not_an_end, + test_run_contract_reviews_pages_chain_on_the_token, test_run_contract_captcha_budget, test_cli_rejects_counts_that_cannot_run, test_env_url_does_not_override_a_typed_builder_flag,