Your inputs stay in this browser. No uploads, no account.
Find the overlap.
Two lists. What's shared, and what isn't.
One item per line. Blank lines are ignored; duplicates appear once. Maximum 300,000 characters per input.
One nonblank line per item. Original order is kept; shared values use the first spelling from list A. Case matching uses lowercase, not fuzzy matching.
Shortcut: Ctrl/Cmd+Enter
Your results
Locations are one-based UTF-16 line/column positions in the input; tabs count as one unit.
Only in first
0In both
0Only in second
0Comparison details
All unique keeps A order, then B-only values. Differences keeps A-only then B-only. The differences contain unique values present in only one input; the audit separately compares occurrence counts.
All unique
0All differences
0Occurrences and variants
First 40 groups: shared count differences, then repeated groups, then single-side items; original order within each priority. Up to 20 combined line/variant examples per group. Previews are shortened; full exports are unchanged.
Give text some order.
Clean up a messy paste. Keep the words that matter.
More cleanup choices
The editor uses LF line endings. All cleanup off preserves the text received by the tool, not original file bytes. Active whitespace cleanup uses LF. Empty-line cleanup preserves unselected tabs and nonbreaking spaces. Prose joining preserves detected headings, lists, tables, URLs and code; review the result. No words are reconstructed.
Input: 300,000 UTF-16 units. Results and text exports: 600,000 units; oversized results are rejected without truncation. Downloads use UTF-8.
Locations are one-based UTF-16 line/column positions in the input; tabs count as one unit.
Shortcut: Ctrl/Cmd+Enter
Cleanup and invisible characters
Applied cleanup
First 100 occurrences per text, with UTF-16 positions in that text. Invisible characters are not automatically removed.
Make sense of JSON.
Validate, format and inspect. Keep your data intact.
Locations are one-based UTF-16 line/column positions in the input; tabs count as one unit.
Number precision, repeated keys and string escapes are preserved. Up to 300,000 characters and 128 nested levels. Indented output is limited to 600,000 characters; larger results use compact output.
Shortcut: Ctrl/Cmd+Enter
Inspect values
Empty finds the root. Escape ~ as ~0 and / as ~1. A path with repeated names is ambiguous. Maximum 1,000 UTF-16 units.
Exact JSON source
Preview shortened at 10,000 UTF-16 units; exact value copies and full exports are unchanged.
Repeated decoded names
Repeated names are preserved. A JSON Pointer cannot choose one occurrence unambiguously. First 40 groups and 20 locations per group are shown.
Less weight. Same idea.
Resize and export an image, right here on your device.
Limits and export behavior
Fit inside the selected limits, with integer rounding. No enlargement or cropping. Changing format re-encodes the image; the original stays unchanged. Animation exports as one frame. This is not a complete metadata-removal guarantee.
Input: up to 20 MiB, 32 million pixels and 16,384 pixels per side. Prepared exports: up to 64 MiB. Large images may exceed your device's available memory.
Delivered file details
These facts describe the exact prepared bytes and their header. They are not a complete pixel or metadata validation.
Look inside the file.
Fingerprints, signatures and strings. Without running it.
Any file type, up to 20 MiB (20,971,520 bytes). Processing stays in your browser.
File details
Fingerprint and entropy
SHA-256
64 hexadecimal digits. A match compares bytes with this supplied reference; it does not establish safety or the reference's trust.
Entropy
High entropy can indicate compression, encryption or packed code. It is not a malware verdict.
Printable ASCII runs of 6 bytes or more. First 200 occurrences retained; previews up to 300 bytes. Other encodings may be missed.
Report includes filename, strings and this hex window. It is a bounded analysis, not the complete file.
See what travels with it.
Inspect image metadata. Edit PNG text without changing its pixels.
Up to 20 MiB. Supported text and EXIF only; compressed text and XMP are identified, not decoded.
Read between the links.
Take a URL apart before deciding where to go.
Up to 20,000 UTF-16 units. Original, decoded and parsed views have different scopes.
The address is parsed locally. It is never opened or requested.
Accepted original text
Browser-parsed URL (may be normalized)
Query parameters
Raw query (without question mark)
URL with selected occurrences removed
Remove only manually selected raw segments. Remaining segments join with &; an empty ? is retained. Functionality or signatures may change.
Change the representation.
Text in, encoded or decoded text out.
Input up to 300,000 UTF-16 units; complete result up to 3,000,000. Preview up to 100,000. Copy and Save use the complete result.
Inspection coverage
Exact decoded header JSON
Exact decoded payload JSON
Read the captured session.
Explore a WebTrainer export without reconnecting to the page.
JSON or .webtrainer-session, up to 2 MiB. Reads versions 1 and 2. Nothing is uploaded. One leading BOM is accepted in files and pasted JSON.
Paste a session instead
Up to 10,000 events, 2,000 markers, 32 nested levels and 120,000 JSON values. Duplicate keys are rejected. Larger exports need WebTrainer itself.
Local, read-only inspection. URLs and payloads stay inert. Saved findings and experiments are recorded claims, not verified vulnerabilities. No network requests, replay, execution or watch attachment.
Session overview
Version 1: JS watch lifecycle is treated as UNRESOLVED, following the source migration. No saved watch is applied.
Recorded producer identity and completeness
Identity and integrity are claims in the file. They are not authenticated here; producer redaction does not certify privacy.
Bounded preview of recorded producer fields. It may be shortened; source records are not changed.
View exclusions and field issues
Original array indices start at zero. At most 100 individual issues are listed; totals remain complete.
Issue list shortened.
Sections in the source
Counts describe source containers, not verified findings. Missing and empty sections differ.
Event timeline
Twelve equal ranges across all accepted events, before other filters. Select a range to filter the list.
Events near a marker
Inclusive recorded time window, 0-60,000 ms on each side. Nearby events are context, not causal proof. Other filters still apply.
Recorded values in matching events
Captured events
No events match these filters.
Selected event
Supported fields only. Exact JSON number spelling and $webtrainerBigInt objects are preserved. Preview: at most 10,000 characters, 300 values and 8 levels. A preview may be shortened.
Preview shortened. The input has not been changed.
Recorded evidence
Inspect exported records without executing them. This view does not validate the finding, correlation, saved freeze or replay recipe.
Preview shortened. The input has not been changed.
Recorded event references
Only explicit saved IDs are linked. Missing or duplicate IDs do not establish a unique match.
At most 100 distinct recorded IDs are shown.
Complete decoded source record, before field cleanup or v1 derivation. Exact numeric spelling and string escapes are kept; this is not original file-byte identity.
Original JSON for manual copy
Save a selected local report
A selected subset, not a replacement WebTrainer session. Source name, recorded page/title/time, attributed producer claims, filters, counts, inventory and original indices are included. These may be sensitive. No anonymization or automatic sharing.
Off by default. Turning this on includes all original fields in each selected record, including fields omitted from the supported view. Reports are limited to 4 MiB.
Selection and included source facts
Scope preview only. The saved report contains complete selected records when requested.
Preview shortened. The input has not been changed.
Copy manually
Clipboard unavailable. The complete text is selected and read-only. Copy with your browser or keyboard. To preserve exact line endings, save the UTF-8 .txt file.