From 8efabe4b807cebb2efe7436c99feb7660dff72a1 Mon Sep 17 00:00:00 2001 From: Petr Date: Thu, 22 Oct 2026 21:34:32 +0000 Subject: [PATCH] Reviews: --sort reaches the store, and page 2 continues from page 1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `--sort newest` did not sort. The key went in the first slot of the sort block, where the store reads a constant; it answered "newest" in relevance order and answered "relevant" and "rating" with nothing at all. The README reported that as the store offering only one ordering. It was this repository's request. In the shape the store's front end sends — `[2, , [count, null, token], null, []]` — all three work. Measured 2026-10-22 on com.whatsapp: newest comes back strictly descending and stays in order across a continuation token (40 + 40, no id shared). Page 2 restarted the list. Page 1 was taken from the reviews embedded in the app page, which carry no continuation token, so page 2 was asked for without one and came back as the start of the list; dedupe then removed most of it (20 / 1 / 19 rows over three pages in one reported run). Every page now comes from the reviews endpoint, each with the previous page's token. The app page is still fetched first, to confirm the app exists in the market. Also: - `--sort` offers newest (default), relevant and rating; an unknown value is refused instead of silently replaced. - `--url --mode reviews` runs a reviews run instead of being refused as a mode conflict. - With a proxy pool, a reviews run logs that it keeps one exit for the run. - The review fixtures are re-taken through the corrected request and scrubbed; a new check asserts they are newest first across both pages. - The suite pinned the broken request shape and "newest only"; those checks now pin the correct shape for all three orderings. A fake-driver run checks that page 2's form carries page 1's token and that rows are newest first. - The canary's reviews job asserts a full page on each page and date order. Its old floor of 100 rows over two pages passed by accident. Verified: offline suite green with core requirements and in each engine's venv; each new check confirmed to fail on its planted fault (six controls, each caught by the named check); the canary's reviews command run live through Playwright, Selenium and pyppeteer gives [100, 100] rows, newest first end to end, and the same assertions fail on the unfixed code ([20, 80], dates out of order). Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01VrpkXSoXyZMGV5nqF9JV6P --- .github/workflows/canary.yml | 21 +++-- CHANGELOG.md | 34 ++++++++ README.md | 32 +++++--- captures/README.md | 8 +- captures/reviews_p1.txt | 2 +- captures/reviews_p2.txt | 2 +- engine_core.py | 38 ++++++--- product_parser.py | 81 ++++++++++++------- smoke_test.py | 146 ++++++++++++++++++++++++++++++++--- 9 files changed, 294 insertions(+), 70 deletions(-) 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,