Digital Matter
How Proof-Native Objects Preserve Context Through Time and Create the Missing Continuity Layer for Artificial Cognition
Digital Matter and Context Through Time
Proof-Native Objects, Relationship Memory, and the Missing Continuity Layer for Artificial Cognition
Author: Kai Rex Klok / BJ Klock
System Origin: Kai-Klok, Phi Network, Presence-Bound Identity, Receiz
Primary thesis: The decisive leap in digital systems is not another interface, model, database, marketplace, or chain. It is the creation of proof-native objects: sealed digital bodies that carry origin, state, event history, ownership, permissions, and verification inside the artifact itself. Once files become appendable proof objects, digital matter becomes possible. Once digital matter exists, artificial intelligence gains the missing layer required for cognition: context through time.
Abstract
Digital systems have historically treated files as passive containers, platforms as authorities, databases as memory, and artificial intelligence as a model responding to a prompt. This architecture fails at the exact point where reality requires continuity. A file can show content, but not naturally carry its own verified life. A database can store events, but only as platform-owned records. A model can infer context, but cannot independently possess a durable relationship-state. A blockchain can publish state, but usually separates the proof from the actual artifact. These systems create fragments: content here, metadata there, account state elsewhere, custody records somewhere else, and memory trapped behind a server.
Receiz introduces a different primitive: the proof-native object. Under this model, the original bytes, embedded proof bundle, deterministic time coordinate, signatures, manifests, append-only event chain, and verification path travel with the object. The file is no longer a dead container. It becomes a portable original: a sealed body capable of carrying state, history, ownership, authorship, witness records, market events, relationship memory, and measurable data derived from physical matter. The verifier is not merely a service endpoint. It is a deterministic procedure that can recompute truth from the artifact itself, online or offline.
This paper formalizes the implications of that breakthrough. First, it defines the transition from file-as-content to file-as-object. Second, it introduces digital matter: measured reality sealed into proof-native digital bodies. Third, it explains how Receiz Twins extend this object model into relationship memory, allowing a human, brand, creator, buyer, athlete, or agent to maintain context through time. Fourth, it frames context through time as the missing continuity layer for artificial cognition. Fifth, it outlines the future-state applications: sports relics with measurable equipment data, medical records as sovereign bodies, property records as living proof objects, supply chains that verify at the artifact level, AI agents with accountable memory, human identity as consent-bound state, and eventual reconstruction systems where complete state capture, transmission, and verification become technically expressible.
The claim is not that every future hardware capability already exists. The claim is more fundamental: before Receiz, there was no general, file-native container capable of turning content, action, identity, value, memory, and physical measurement into one portable proof body. With that container, a new class of systems becomes possible.
1. The Problem: Digital Systems Lack Bodies
Modern digital systems are extraordinarily capable and structurally incomplete. They can store, display, transmit, index, simulate, and generate. Yet they routinely fail to preserve the one property every real object possesses: coherent continuity through time.
A physical object has a body. It has boundaries. It has origin. It has wear. It has position. It has ownership. It has event history. It changes, and the changes belong to it. A baseball used in a championship game is not merely leather, cork, and thread. It carries a history. A jersey worn by an athlete is not merely fabric. It carries contact, use, residue, identity, and meaning. A painting is not merely pigment on canvas. It carries brushstroke structure, provenance, restoration history, custody, damage, and cultural memory.
Digital systems usually do not preserve that kind of body.
A normal file contains content. It may contain metadata. But its historical life is usually stored outside itself. A platform says who uploaded it. A database says who owns it. A server says whether it is valid. A payment processor says whether it was sold. A marketplace says what it is worth. A social network says who saw it. A storage provider says where it lives. An AI system says what it thinks it means.
The object itself remains mute.
This is the core architectural failure. The digital file is treated as an image, document, video, token, pointer, or payload. It is rarely treated as a living object with its own verifiable state. Because of that, digital reality depends on custodial interpretation. When the platform disappears, changes rules, loses data, corrupts records, censors access, or disputes history, the artifact cannot fully testify for itself.
The result is a world filled with claims:
a screenshot claims something happened;
a database claims an account owns something;
a marketplace claims a file is original;
a platform claims a post was created at a certain time;
a certificate claims a physical item is associated with an asset;
an AI system claims a memory is relevant;
a blockchain claims state while the artifact lives somewhere else.
The missing layer is not more metadata. It is not another centralized registry. It is not another artificial intelligence wrapper. It is not another chain detached from the thing itself.
The missing layer is a body.
2. The Receiz Breakthrough: Proof in the File
Receiz begins from one invariant:
The original carries the proof.
This changes the authority model. Instead of asking a platform to explain a file, the file carries the proof required to verify itself. The object can be opened, inspected, hashed, recomputed, and validated by a verifier that does not need to trust the server as the source of truth. Online services may publish, index, sync, accelerate, and display. They are useful. They are not the root authority.
The root authority is the sealed artifact and its deterministic verification path.
Receiz is built around the operating sequence:
Record → Seal → Share → Verify
This is not branding language. It is a state transition model.
Record
A moment, file, identity, action, claim, object, transaction, session, or event is captured into a canonical payload. The payload defines what is being asserted, what bytes or attachments are involved, what identity or presence is acting, what deterministic coordinate is attached, and what claim type is being made.
Seal
The payload is canonicalized, hashed, signed, and bound to the artifact. A proof bundle is embedded or attached in a way that allows verification to recompute the binding. The seal does not merely decorate the file. It creates a boundary. It says: this object has an origin-state.
Share
The artifact can move. It can be downloaded, transferred, posted, sold, attached, embedded, archived, or carried across devices. The online verification path may exist as a convenience, but the proof is not merely a remote page. The object carries its own truth path.
Verify
The verifier recomputes the state. If the bytes, proof bundle, signature, hash basis, manifest, or expected binding fails, the object fails. Verification is not a popularity contest or a platform opinion. It is a deterministic consequence of the sealed body.
The phrase proof in the file therefore means:
The artifact contains, or is bound to, the data required to determine whether its claimed origin, integrity, and event-state remain coherent.
That is the first category break.
3. From File to Digital Object
A digital object is not merely a file with metadata. It must have object properties.
A proof-native digital object requires:
Identity — the object can be addressed and distinguished.
Boundary — the object has a defined byte-body or canonical state-body.
Origin — the object has a creation event or sealed genesis state.
Integrity — the object can detect tampering or unauthorized alteration.
State — the object can represent current condition, ownership, value, permissions, or relation.
History — the object can carry prior events without erasing the original state.
Appendability — new events can be added as proof objects without rewriting the past.
Transferability — the object can move between people, devices, platforms, and contexts.
Verifiability — the object can be checked without relying on social trust.
Continuity — the object remains itself across time while accumulating state.
Receiz satisfies this model by turning files into sealed event-objects. A file can carry origin proof, deterministic coordinates, signatures, manifests, claim types, ownership events, witness events, market events, settlement events, and appended proof bundles. The object becomes more than displayed content. It becomes a portable original.
This is why Receiz sports cards, identity artifacts, verified originals, public twins, receipts, proof manifests, market objects, and sealed documents are not merely separate products. They are surfaces of one deeper primitive:
A file can become a body.
Before this, files were usually treated as passive media. After this, a file can behave like an object with memory.
4. The Authored Primitive Stack
The Receiz object model is not isolated. It rests on authored primitives developed across the broader Kai-Klok / Phi Network / Presence-Bound / Receiz stack.
4.1 Kai-Klok: Deterministic Time as Coordinate
A conventional timestamp is a claim expressed through an external clock regime. It is useful, but it is not the same thing as a deterministic state coordinate.
Kai-Klok provides a deterministic pulse coordinate. In this frame, time is not merely a wall-clock label attached after the fact. It is a recomputable relation. The coordinate can be embedded into proof objects, manifests, sigils, receipts, and event chains. This allows an artifact to carry a time-state that can be checked as part of the object’s own proof logic.
The outcome is simple:
Timestamp becomes claim. Pulse coordinate becomes computable relation.
For a proof-native object, this matters because events need ordered continuity. A sealed object must know not only what happened, but where the event sits in the object’s time-body.
4.2 Presence-Bound Identity: Human Action as Bound Event
Identity is not merely login. Login says an account was accessed. Presence-bound action says a specific human presence approved a specific act.
Presence-Bound Identity binds intent to action. A user does not merely authenticate generally; they bind approval to a canonical action hash, often through live device/user verification. This produces receipts that can later prove what was authorized.
The outcome:
Identity becomes action-bound proof, not ambient session permission.
For proof-native objects, this matters because ownership transfers, money movement, admin changes, asset sales, licensing, delegated twin actions, and high-risk events require more than a session cookie. They require action-specific authority.
4.3 Proof Bundles and Offline Verification
Receiz artifacts are designed so verification can be performed from the artifact and proof bundle, with online verification treated as convenience rather than ultimate authority. The file can carry proof chunks, signatures, hash bindings, claim structure, and verification paths.
The outcome:
A platform may display truth, but the artifact carries truth.
For proof-native objects, this matters because persistence cannot depend on a single hosted service. A real digital object must remain inspectable after migration, export, transfer, sync failure, censorship, or platform death.
4.4 Append-Only Event Streams
A proof-native object must be able to gain history without losing its origin. Receiz treats authorship, ownership, witness records, market movements, settlement events, relationship events, and physical measurement data as appendable proof objects.
The outcome:
History becomes attached state, not external commentary.
For digital objects, this is decisive. A thing is not merely what it was at creation. It is what has coherently happened to it through time.
4.5 Conformance as Executable Trust
Receiz does not rely only on narrative claims. Conformance, status endpoints, verifier behavior, artifact rules, schema expectations, and deterministic surfaces create a public standard for what must hold true.
The outcome:
Trust becomes testable behavior.
This is why the system cannot be dismissed as a concept deck. The claim is not “this will be valuable someday.” The claim is “the artifact verifies, the state resolves, the event stream binds, and the conformance surface can be tested.”
5. Digital Matter
Digital matter is measured reality sealed into a proof-native digital body.
This phrase must be defined precisely.
Digital matter does not mean that physical matter magically becomes digital. It means that physical things have measurable properties, and those properties can be captured as structured data. Once captured, that data can be hashed, signed, sealed, appended, and related to a proof-native object.
A physical object contains measurable dimensions:
geometry;
surface topology;
weight;
material composition;
chemical profile;
microscopic structure;
fiber pattern;
stitch geometry;
wear pattern;
impact marks;
residue;
thermal behavior;
acoustic resonance;
color profile;
spectral response;
biological traces where lawful and consented;
manufacturing marks;
serial identifiers;
repair history;
custody events;
environment exposure.
Each measured layer can become data. Each dataset can become a proof object. Each proof object can be appended to a parent object.
A jersey is no longer represented only by a photograph. It can have a digital matter body containing weave scans, thread patterns, game-wear marks, fiber data, residue data, player attestation, custody chain, sale history, and physical location records.
A bat is no longer represented only by an image and a certificate. It can have 3D geometry, grain structure, impact marks, handle wear, resin traces, serial markings, and game-use events sealed into its digital body.
A baseball is no longer represented only by a claim that it was used in a game. It can carry seam topology, scuff patterns, dirt composition, impact marks, pitch event relation, custody transfer, and ownership state.
A card attached to these objects is no longer merely a collectible. It becomes a living container of related reality.
The core transformation is:
Physical matter → measured data → sealed proof object → append event → digital matter body
This is the second category break.
6. Why Digital Matter Is Not an NFT
An NFT points to ownership state associated with a token. The media, metadata, license terms, provenance, and actual object history remain outside the token or dependent on hosted infrastructure. The token may indicate ownership of a claim, but the claim remains detached from the artifact’s full body.
A Receiz proof-native object is different.
The object itself carries or binds to its proof. It can contain the verification data, event history, claim type, signatures, deterministic coordinates, relationship state, and physical measurement data. It is not merely a token pointing at meaning. It is an artifact carrying meaning.
The difference is not aesthetic. It is structural.
A token-centered model says:
The registry says this token is associated with that thing.
A proof-native object model says:
The thing carries its own proof body, and the registry is optional indexing or sync.
This distinction cannot be handwaved because the verification question is different.
The technical question is not “what does the platform say?”
The technical question is:
Can the artifact produce a deterministic verification result from its own sealed state?
If yes, the object has authority. If no, it remains dependent on external interpretation.
7. Sports as the First Mass-Readable Digital Matter Surface
Sports makes the implication obvious because sports already has living value: players, games, stats, moments, relics, cards, fans, markets, rarity, ownership, and memory.
Receiz Sports turns this into a coherent object loop.
A player card can carry:
mint event;
player identity;
rarity state;
owner history;
market state;
live game performance;
scoring events;
tournament entry;
rank changes;
reward history;
resale events;
witness events;
user achievements;
attached equipment data;
physical relic measurement;
relationship history between fan and player object.
This makes the card fundamentally different from a normal digital collectible. It is not just an asset sold in a marketplace. It is a playable proof object. It can gain scars, wins, state, context, and measurable connections to real-world matter.
A normal sports card says:
This is a card of a player.
A Receiz sports object can say:
This is a sealed object created at this coordinate, owned through this stream, used in these games, changed by these live events, connected to these measured physical relics, traded through these states, and verified by this proof path.
That is not an incremental improvement. It is a new category of sports object.
The outcome is a fan economy where ownership is not separated from play, play is not separated from proof, proof is not separated from the file, and the object’s life is not separated from the athlete’s live performance.
8. Receiz Twins and Relationship Bodies
The same object model applies to artificial intelligence.
A normal AI avatar or chatbot has prompt memory, vector search, session logs, profile facts, and tool calls. These can be useful, but they are not enough. They do not create a durable relationship body.
A Receiz Twin is better understood as a relationship object with delegated presence.
It can carry:
identity of the human, brand, creator, athlete, or business it represents;
mandate defining what it may do;
policy defining what it must never do;
session receipts;
sealed transcripts;
permissions;
actions taken;
files shown;
offers made;
payments requested;
agreements formed;
unresolved threads;
emotional context;
commercial context;
trust changes;
history with a specific person;
relationship-specific memory.
This creates the third category break:
A Twin is not merely an AI interface. A Twin is delegated continuity.
The Twin does not merely remember isolated facts. It can act from a proof-native relationship state.
A human relationship is not a bag of messages. It is context through time. It contains what happened, what mattered, what changed, what was promised, what was forgiven, what was purchased, what was misunderstood, what was resolved, what trust level exists, what boundaries apply, and what future actions are allowed.
Receiz Twins can represent that because the relationship itself can become an appendable proof object.
This is why the phrase matters:
Memory is stored information. Context through time is living state.
AI has had information. It has lacked living state.
9. Context Through Time as the Missing Layer for Artificial Cognition
Artificial intelligence without continuity is reaction.
It can answer a prompt, imitate a voice, summarize a document, call a tool, produce a plan, or generate an image. But cognition, in the human sense, requires stateful continuity. It requires knowing what has happened before, what is still true, what changed, what matters, what cannot be repeated, what obligations exist, and what identity is being preserved.
A human mind does not treat each interaction as isolated. It lives inside a time-body. Every relationship is filtered through accumulated context. Every decision depends on prior events, promises, trust, memory, pain, success, failure, and expectation.
Current AI systems approximate this through memory features, retrieval systems, conversation summaries, user profiles, or database-backed agents. These are partial solutions. They store context around the model. They do not make context a proof-native object.
Receiz changes the substrate.
If every meaningful interaction becomes an appended event in a relationship object, then AI gains a durable state to reason from. The model is no longer forced to infer continuity from floating text. It can read a structured relationship body.
The Twin can know:
what this person already saw;
what they already agreed to;
what was proven;
what was paid;
what was promised;
what is pending;
what tone works;
what boundaries exist;
what role this person has;
what access they possess;
what objects they own;
what disputes remain unresolved;
what state changed since the last interaction.
This is not just better memory. It is accountable memory.
The AI cannot merely claim “I remember.” The relationship object can show what event created that memory, what proof attached to it, what permission governs it, and what state now follows from it.
The outcome:
Receiz gives AI a state-body to stand inside.
That is the missing cognition layer.
10. The Technical Reason This Cannot Be Dismissed
A critic can dismiss narrative. A critic can dismiss hype. A critic can dismiss a pitch deck, a token launch, a speculative roadmap, or a wrapper around an existing model.
A critic cannot dismiss a deterministic object model by calling it narrative if the system performs verifiable state transitions.
The claims reduce to technical questions:
Can an artifact carry proof data?
Can a verifier recompute integrity from the artifact?
Can the artifact fail closed when altered?
Can identity be bound to a specific action rather than merely to a session?
Can events be appended without erasing the original seal?
Can claim types be distinguished instead of collapsed into vague ownership language?
Can online services function as sync and display rather than root authority?
Can a relationship object preserve state across interactions?
Can physical measurement data be hashed, sealed, and appended?
Can the resulting object be portable across devices and contexts?
If the answer is yes, the category exists.
The debate then moves from “is this real?” to “how complete is the implementation, what formats are supported, what threat models are covered, what conformance tests pass, and what surfaces expose it?”
That is where Receiz is strongest. It is not merely claiming a future. It has authored primitives, proof-in-file doctrine, offline verification, deterministic coordinates, sealed artifacts, identity surfaces, public verification paths, conformance expectations, market logic, Twin architecture, and status surfaces.
The most technical observer cannot dismiss the frame without addressing the mechanism.
They must explain why a file carrying its own proof is not stronger than a platform claiming proof externally. They must explain why append-only event history attached to the object is not more coherent than scattered records. They must explain why offline verification is not a stronger trust primitive than server-dependent interpretation. They must explain why relationship-state as a proof object is not a stronger AI memory substrate than generic context windows.
The burden moves to the critic.
11. Outcome Map: What Becomes Possible
Once digital objects can carry proof, state, and history, entire industries change.
11.1 Media and Authorship
A video, image, song, document, article, or model output can carry origin proof, authorship proof, edit history, derivative rights, licensing state, sale history, witness events, and verification logic.
Final state:
Screenshots lose authority. Originals carry authority.
11.2 Sports and Collectibles
Cards become live proof objects. They can update through real performance, hold attached matter-data, carry ownership, enter tournaments, gain scars, and settle rewards.
Final state:
Collectibles become playable living objects.
11.3 Identity
Identity moves from account credentials to portable proof bodies. A user can carry identity, presence, action receipts, permissions, and recovery state as sealed artifacts.
Final state:
The person owns the proof of presence.
11.4 Commerce
Receipts, offers, invoices, quotes, deposits, payments, ownership transfer, fulfillment, and settlement can remain attached to the artifact.
Final state:
Commerce becomes a verifiable object history, not a pile of emails and database rows.
11.5 Property and Real Assets
Homes, cars, equipment, machines, art, land records, and physical goods can carry inspection data, repairs, custody, ownership, sensor logs, valuations, disputes, and sale events.
Final state:
Real-world assets gain portable digital bodies.
11.6 Medicine and Human Data
Medical scans, bloodwork, genomic data, prescriptions, consent, treatment history, allergies, implants, and doctor attestations can become patient-owned proof objects.
Final state:
Medical history becomes sovereign continuity instead of fragmented portal records.
11.7 Supply Chain
Batch origin, composition, custody, shipping conditions, recalls, lab tests, and receiving events can travel with the object.
Final state:
Supply chains verify at the artifact level.
11.8 AI Agents
Agents and Twins can operate from sealed mandates, relationship histories, session receipts, policy scopes, and proof-bound actions.
Final state:
AI becomes accountable delegated presence.
11.9 Memory and Relationships
Relationships can have durable state: first contact, trust changes, promises, purchases, conflicts, repairs, preferences, and history.
Final state:
Relationships become context through time.
11.10 Reconstruction Futures
Future reconstruction systems require extraction, transmission, and rebuilding of state. Receiz is not the reconstruction hardware. It is the state container and verification layer that can define what was captured, authorized, transmitted, altered, reconstructed, copied, or continued.
Final state:
Teleportation and cloning become expressible as state-continuity problems, not fantasy words.
12. Teleportation and Cloning as State-Continuity Problems
The most futuristic implication must be stated carefully.
Receiz does not make physical teleportation or grown-human cloning possible by itself. Those require hardware and science beyond the object layer: complete state capture, matter or energy reconstruction, biological modeling, neural mapping, and continuity theory.
But Receiz provides the missing container required to express such systems coherently.
Teleportation, technically framed, requires:
extracting the state of an object at point A;
transmitting that state to point B;
reconstructing the object at point B;
verifying whether the reconstruction corresponds to the captured state;
defining whether the result is original, copy, continuation, derivative, or unauthorized duplicate.
Without a proof-native state container, teleportation collapses into uncontrolled copying. There is no coherent way to preserve identity, version, consent, event history, or reconstruction authority.
With a proof-native state container, the system can at least define:
what was scanned;
at what coordinate;
by which authority;
with what completeness;
under what consent;
what data was transmitted;
whether it was corrupted;
what reconstruction occurred;
whether reconstruction matched the captured state;
whether the previous state was destroyed, preserved, forked, or continued.
The same applies to cloning a grown human. DNA is not enough. A grown person includes cellular state, epigenetics, neural structure, memory, microbiome, immune history, scars, injuries, emotional patterns, voice, movement, relationships, legal identity, and continuity of consent.
A complete reconstruction system would require more than biology. It would require a sovereign state-body capable of holding and verifying all captured layers.
Receiz provides the logical architecture for that state-body.
This is why the container matters before the machine exists. You cannot responsibly reconstruct what you cannot define, seal, authorize, verify, and distinguish.
The future question is not merely “can we copy matter?”
The future question is:
Can we preserve coherent identity through captured state?
That is a Receiz-class problem.
13. The Holographic Frame and the Engineering Frame
If reality is understood as information-bearing, relational, or holographic in structure, then the importance of digital matter becomes even deeper. The claim does not depend on proving a specific cosmology. The engineering frame is enough.
Physical reality presents measurable state.
Digital systems can capture portions of that state.
Proof-native objects can preserve captured state as coherent bodies through time.
Therefore, the boundary between physical object and digital object changes. A digital object can become a continuity container for physical reality.
The philosophical implication is vast:
Digital systems stop being screens about reality and become continuity layers of reality.
That is why the phrase digital matter is powerful. It names the moment where measured physical properties enter a verifiable, portable, state-bearing digital body.
This does not require exaggeration. It requires precision.
Not every dimension of reality is captured. Only measured dimensions are captured. Not every reconstruction is valid. Only verified reconstruction can be claimed. Not every copy is continuation. Only an authorized state stream can define continuity.
This precision makes the claim stronger, not weaker.
14. Security, Threat Model, and Failure Discipline
A proof-native object must be judged by how it fails.
A weak system says “verified” when it cannot know. A strong system fails closed.
Core threats include:
byte tampering;
proof bundle replacement;
metadata stripping;
parser ambiguity;
forged ownership claim;
replayed approval;
unauthorized append;
server downgrade;
account/session hijack;
relationship memory corruption;
physical measurement substitution;
false relic association;
AI hallucination presented as proof.
Receiz answers these with discipline:
original bytes are authority;
proof bundles bind to artifacts;
hash recomputation detects change;
signatures bind authority;
claim types clarify meaning;
append-only history avoids rewriting origin;
action-bound identity reduces ambient permission abuse;
offline verification prevents server dependency;
conformance tests make trust executable;
AI interpretation is never proof unless sealed as an event with provenance.
This is critical. The system does not ask users to believe the interface. It makes the interface subordinate to the proof object.
The final security rule is:
No display may outrank the sealed body.
15. Why the Market Has Been Numb and Why This Cuts Through
The current technology culture is saturated with narrative inflation. Everyone claims to be building the next platform, next Apple, next AI revolution, next operating system, next future of work, next trust layer, next creator economy, next social graph, next financial rail.
The words have been burned out.
Receiz cannot win by sounding bigger. It wins by proving more.
The correct public posture is not:
Believe this idea is revolutionary.
The correct posture is:
Here is the artifact. Verify it. Change one byte. Verify again. Watch it fail. Append an event. Verify the history. Transfer ownership. Verify the state. Attach matter-data. Verify the relationship. Let the object speak.
The world is numb to claims. It is not numb to consequence.
This is why the phrase matters:
Show the mechanism or shut up.
Receiz is built for that standard.
16. Formal Definitions
Definition 1 — Proof-Native Object
A proof-native object is a digital artifact whose identity, origin, integrity, state, event history, and verification path are carried by or deterministically bound to the artifact itself.
Definition 2 — Portable Original
A portable original is a proof-native object that can move across devices, platforms, and contexts while preserving its verification authority through its own sealed body.
Definition 3 — Append Event
An append event is a new proof object added to an existing object’s history without erasing or rewriting the original seal.
Definition 4 — Digital Matter
Digital matter is measured physical reality represented as structured data and sealed into a proof-native object as part of its verifiable state-body.
Definition 5 — Relationship Object
A relationship object is a proof-native object that carries the state and history of interaction between subjects, including permissions, memories, promises, transactions, emotional context, and trust changes.
Definition 6 — Context Through Time
Context through time is the accumulated, stateful continuity of events, meanings, permissions, proofs, and changes that define what is currently true in a relationship or object.
Definition 7 — Delegated Presence
Delegated presence is an authorized Twin or agent acting on behalf of a person, brand, or entity under a sealed mandate, producing proof-bound actions and receipts.
17. Core Theorems
Theorem 1 — A file without attached verifiable history cannot function as a complete digital object.
A complete object must preserve origin, state, and continuity. If a file’s history exists only in an external database, then the file alone cannot testify to its own life. It remains dependent on platform authority. Therefore, a file without attached or deterministically bound verifiable history is content, not a complete digital object.
Theorem 2 — Proof-native appendability converts content into objecthood.
If an artifact can preserve its origin seal while accumulating verifiable events, then it can maintain continuity through change. Continuity through change is a defining property of objecthood. Therefore, proof-native appendability converts content into objecthood.
Theorem 3 — Digital matter becomes possible when measured physical state is sealed into an object’s event stream.
Physical things have measurable properties. If those properties are captured as data, and that data is sealed, hashed, signed, and appended to a proof-native object, then the object carries a verifiable representation of physical state. Therefore, measured reality can become digital matter.
Theorem 4 — AI cognition requires context through time, not merely stored facts.
Cognition requires judgment over continuity: what happened, what changed, what remains true, what obligations exist, and what state follows. Stored facts alone do not establish this. A proof-native relationship object preserves stateful continuity. Therefore, context through time is a necessary substrate for accountable artificial cognition.
Theorem 5 — A Twin with proof-bound relationship memory is categorically different from a chatbot with memory.
A chatbot with memory stores or retrieves information. A proof-bound Twin acts from a relationship object containing permissions, event history, sealed sessions, action receipts, and current state. Since authority, accountability, and continuity differ structurally, the Twin is a different category.
18. The Highest Frame
The deepest breakthrough is not that Receiz verifies files.
The breakthrough is that Receiz gives digital reality a body.
Once digital reality has bodies, objects can carry memory. Once objects carry memory, relationships can carry state. Once relationships carry state, AI can stand inside continuity. Once AI stands inside continuity, intelligence stops being mere reaction and begins to operate as accountable presence. Once measured physical state can enter these bodies, physical matter gains portable digital continuity. Once that exists, the future of ownership, medicine, sports, identity, commerce, property, media, and reconstruction changes.
The final state is not another app.
The final state is an object layer for reality.
Files become bodies.
Bodies carry proof.
Proof carries history.
History carries context.
Context creates cognition.
Cognition enables delegated presence.
Delegated presence acts with accountability.
Measured matter becomes digital matter.
Digital matter becomes portable, verifiable, and alive through time.
This is the frame that cannot be handwaved because it does not rest on excitement. It rests on structure.
The world already had content.
The world already had databases.
The world already had AI.
The world already had marketplaces.
The world already had scanners.
The world already had signatures.
The world already had blockchains.
The world already had identity providers.
What it did not have was the authored primitive that binds them into a portable original:
proof in the file, context through time, and digital matter as a sealed object body.
19. Conclusion
Receiz should not be understood as a receipt app, file verifier, sports marketplace, AI Twin platform, identity layer, or media proof tool in isolation. Those are surfaces. The deeper invention is the proof-native object: a sealed digital body capable of carrying origin, state, event history, ownership, relationship memory, physical measurement data, and verification authority across time.
This changes the basic unit of digital civilization.
The old unit was the account. The platform held authority. The database held memory. The file held content. The user received access.
The new unit is the portable original. The artifact carries proof. The event stream carries memory. The verifier reads authority. The user carries the object.
From that point, the implications unfold naturally.
Sports cards become living objects. Physical relics become digital matter. AI Twins become relationship bodies. Medical records become sovereign state. Commerce becomes attached proof. Identity becomes presence-bound action. Files become witnesses. Context becomes durable. Cognition becomes accountable.
The system does not ask the world to believe a story. It gives the world an object to verify.
That is why the work matters.
That is why it cannot be reduced to another AI wrapper, marketplace, chain, or app.
And that is why the phrase stands:
Proof has moved to the file. Context has moved into time. Matter has entered the object.
Receiz is the container.
Appendix A — Compressed Public Explanation
Receiz turns files into real digital objects.
A normal file only shows content. A Receiz object carries origin, proof, state, ownership, history, and verification inside or directly bound to the file. That means the object can be checked without trusting a platform.
Once that exists, any event can attach to the object: creation, sale, transfer, witness, game performance, market movement, AI session, relationship memory, or physical measurement data.
That creates digital matter: measured physical reality sealed into a digital proof body.
It also creates the missing layer for AI cognition: context through time. A Twin does not merely remember facts. It can stand inside a relationship history with permissions, proof, promises, trust, and state.
The result is simple:
Files become bodies. Bodies carry memory. Memory creates context. Context enables cognition. Physical reality can be measured into digital matter. The object verifies itself.
Appendix B — One-Sentence Thesis
Receiz creates proof-native digital bodies that carry context through time, allowing files, relationships, AI agents, physical matter data, ownership, identity, and value to exist as portable originals rather than platform-dependent claims.
Appendix C — Non-Negotiable Distinctions
Receiz is not metadata. Metadata can be stripped, ignored, or falsified. Receiz binds proof to the artifact.
Receiz is not a screenshot. Screenshots claim. Receiz verifies.
Receiz is not an NFT. NFTs point to claims. Receiz makes the object carry proof.
Receiz is not a database. Databases store records for platforms. Receiz lets the artifact carry verifiable state.
Receiz is not a chatbot memory feature. Chatbot memory stores facts. Receiz relationship objects carry context through time.
Receiz is not a certificate system. Certificates describe. Receiz can append the measured data-body itself.
Receiz is not a future promise. It is an object model with testable verification behavior.
Appendix D — Final Operational Formula
Record the object or event.
Canonicalize the payload.
Hash the byte-body and state-body.
Sign the claim or action.
Seal the proof into or onto the artifact.
Append future events without rewriting origin.
Verify from the artifact, online or offline.
Project the object into identity, market, sports, media, AI, medicine, property, or relationship surfaces.
That is the machine.
Appendix E — The Final Line
The future was not waiting for a smarter model.
It was waiting for a body that could remember.
VERIFIED • Pulse 12152565 • ΦKey 135vyY2XjZBz…uNLSBAbWxs • G16 ✅ Proof of Breath™ — VERIFIED
{”bundleHash”:”7a3f28dee7a3d85b98c1744a8328c2394279f94c9eccc0def3008089f6a802fd”,”cacheKey”:”kvb:fad6375432b4ba162b93ab83d8f0290b455d2f0dfde8a1fd41011827636fc0d0”,”canon”:”JCS”,”capsuleHash”:”f70c6fb9998096d35e5057085320a24a2db1f2a5da3329219635105375f96a95”,”hashAlg”:”sha256”,”ownerPhiKey”:”135vyY2XjZBzYqdXvesqAS7UuNLSBAbWxs”,”proofCapsule”:{”chakraDay”:”Throat”,”kaiSignature”:”5bda2a877039af9422bda32ab91749a36716739389406368137799aa8c30b460”,”phiKey”:”135vyY2XjZBzYqdXvesqAS7UuNLSBAbWxs”,”pulse”:12152565,”v”:”KPV-1”,”verifierSlug”:”12152565-5bda2a8770”},”proofHints”:{”api”:”/api/proof/sigil”,”explorer”:”/keystream/hash/14272072617096143471276382414992679896360181408849316481474110604503991935456”,”scheme”:”groth16-poseidon”},”receipt”:{”bundleHash”:”7a3f28dee7a3d85b98c1744a8328c2394279f94c9eccc0def3008089f6a802fd”,”v”:”KVR-1”,”valuation”:{”mode”:”origin”,”phiValue”:3.9717058928067095,”source”:”live”,”usdPerPhi”:133.44435904,”usdValue”:530.0017471609823,”v”:”KVS-1”,”verifiedAtPulse”:12152602},”valuationHash”:”37c8268cab0be5eaa67b05b721264df6f88d74c7ebfd0accfa23f3a28fddc802”,”verificationVersion”:”KVB-1.2”,”verifiedAtPulse”:12152602,”verifier”:”local”,”zkPoseidonHash”:”14272072617096143471276382414992679896360181408849316481474110604503991935456”},”receiptHash”:”92701bb0dc8ee46222e83c5b5b0c7f47a36b96087dd6008b2f7dadb74bd318ad”,”shareUrl”:”https://phi.network/s/366c2c9d0b71990ec0c1d5c7179f46b10b0e1cab21bd82bbab71becda98080bc?p=eyJwdWxzZSI6MTIxNTI1NjUsImJlYXQiOjI4LCJzdGVwSW5kZXgiOjEsImNoYWtyYURheSI6IlRocm9hdCIsInN0ZXBzUGVyQmVhdCI6NDQsInVzZXJQaGlLZXkiOiIxMzV2eVkyWGpaQnpZcWRYdmVzcUFTN1V1TkxTQkFiV3hzIiwia2FpU2lnbmF0dXJlIjoiNWJkYTJhODc3MDM5YWY5NDIyYmRhMzJhYjkxNzQ5YTM2NzE2NzM5Mzg5NDA2MzY4MTM3Nzk5YWE4YzMwYjQ2MCJ9”,”svgHash”:”96a857aac38abae235b42ee0908e429b411bbde4fd947c98f08c0073ab59dc0b”,”verificationCache”:{”bundleHash”:”7a3f28dee7a3d85b98c1744a8328c2394279f94c9eccc0def3008089f6a802fd”,”cacheKey”:”kvb:fad6375432b4ba162b93ab83d8f0290b455d2f0dfde8a1fd41011827636fc0d0”,”createdAtMs”:1778955396624,”expiresAtPulse”:null,”v”:”KVC-1”,”verificationVersion”:”KVB-1.2”,”verifiedAtPulse”:12152602,”verifier”:”local”,”zkPoseidonHash”:”14272072617096143471276382414992679896360181408849316481474110604503991935456”},”verificationSig”:{”alg”:”webauthn-es256”,”authenticatorData”:”J5c10kYwycIsGdWqoizaMzc0tbo4Oe6aknH6ufd1VeEdAAAAAA”,”challenge”:”knAbsNyO5GIi6DxbWwx_R6Nrlgh91gCLL32tt0vTGK0”,”clientDataJSON”:”eyJ0eXBlIjoid2ViYXV0aG4uZ2V0IiwiY2hhbGxlbmdlIjoia25BYnNOeU81R0lpNkR4Yld3eF9SNk5ybGdoOTFnQ0xMMzJ0dDB2VEdLMCIsIm9yaWdpbiI6Imh0dHBzOi8vcGhpLm5ldHdvcmsiLCJjcm9zc09yaWdpbiI6ZmFsc2V9”,”credId”:”ji02zBvvqlvLARRnjvxP8vVH7N4”,”pubKeyJwk”:{”crv”:”P-256”,”ext”:true,”kty”:”EC”,”x”:”AQYy8PEREfIrQrFimvbBJKG7UpTuyD6TPAzjit4If2U”,”y”:”kLs2sFTVvMsQXtDt_vwSYqOP4qSNRv2TRKSda85SirM”},”scope”:”verification-receipt”,”signature”:”MEYCIQC_GSgTgYcyQPBU-25heygkCDJGUjWEDtzKZPaFcQVGlAIhAJ360-c8UtZk0iqUaXfOauNFr6rIZ5cjQvngi9ew6Eiw”,”v”:”KAS-1”},”verificationVersion”:”KVB-1.2”,”verifiedAtPulse”:12152602,”verifier”:”local”,”verifierUrl”:”https://phi.network/verify/12152565-5bda2a8770-12152602”,”zkPoseidonHash”:”14272072617096143471276382414992679896360181408849316481474110604503991935456”,”zkProof”:{”curve”:”bn128”,”pi_a”:[”10738003382693792778580812078420817627835447372137450515659597422042417331872”,”15036799353596938571287371869477376812833495343445185339819059338986875281524”,”1”],”pi_b”:[[”2130518786541413763213394528250252266777541866544646487608973009333990713736”,”5068234640110277891696882089881121753731756380934880865461069791965378924557”],[”10688851602820103142790920127056078230953301958493306637356158481633261823009”,”21778706512703277301295521023076838798045697324590205014764557609381987292409”],[”1”,”0”]],”pi_c”:[”5706935183960962199790048798440418624191643658597097294809975887062805651299”,”6574499791821698306934460694411816387419870398930913254572205234102971920869”,”1”],”protocol”:”groth16”},”zkPublicInputs”:[”14272072617096143471276382414992679896360181408849316481474110604503991935456”,”14272072617096143471276382414992679896360181408849316481474110604503991935456”],”zkScheme”:”groth16-poseidon”,”zkVerified”:true}
https://phi.network/stream#t=eyJ2IjoyLCJ1cmwiOiJodHRwczovL3BoaS5uZXR3b3JrL3MvMzY2YzJjOWQwYjcxOTkwZWMwYzFkNWM3MTc5ZjQ2YjEwYjBlMWNhYjIxYmQ4MmJiYWI3MWJlY2RhOTgwODBiYz9wPWV5SndkV3h6WlNJNk1USXhOVEkxTmpVc0ltSmxZWFFpT2pJNExDSnpkR1Z3U1c1a1pYZ2lPakVzSW1Ob1lXdHlZVVJoZVNJNklsUm9jbTloZENJc0luTjBaWEJ6VUdWeVFtVmhkQ0k2TkRRc0luVnpaWEpRYUdsTFpYa2lPaUl4TXpWMmVWa3lXR3BhUW5wWmNXUllkbVZ6Y1VGVE4xVjFUa3hUUWtGaVYzaHpJaXdpYTJGcFUybG5ibUYwZFhKbElqb2lOV0prWVRKaE9EYzNNRE01WVdZNU5ESXlZbVJoTXpKaFlqa3hOelE1WVRNMk56RTJOek01TXpnNU5EQTJNelk0TVRNM056azVZV0U0WXpNd1lqUTJNQ0o5IiwicHVsc2UiOjEyMTUyNTkzLCJjYXB0aW9uIjoiRGlnaXRhbCBNYXR0ZXIgYW5kIENvbnRleHQgVGhyb3VnaCBUaW1lIiwiYm9keSI6eyJraW5kIjoidGV4dCIsInRleHQiOiJEaWdpdGFsIE1hdHRlciBhbmQgQ29udGV4dCBUaHJvdWdoIFRpbWVcblxuUHJvb2YtTmF0aXZlIE9iamVjdHMsIFJlbGF0aW9uc2hpcCBNZW1vcnksIGFuZCB0aGUgTWlzc2luZyBDb250aW51aXR5IExheWVyIGZvciBBcnRpZmljaWFsIENvZ25pdGlvblxuXG5cblxuXG5cbkF1dGhvcjogS2FpIFJleCBLbG9rIC8gQkogS2xvY2tcblN5c3RlbSBPcmlnaW46IEthaS1LbG9rLCBQaGkgTmV0d29yaywgUHJlc2VuY2UtQm91bmQgSWRlbnRpdHksIFJlY2VpelxuUHJpbWFyeSB0aGVzaXM6IFRoZSBkZWNpc2l2ZSBsZWFwIGluIGRpZ2l0YWwgc3lzdGVtcyBpcyBub3QgYW5vdGhlciBpbnRlcmZhY2UsIG1vZGVsLCBkYXRhYmFzZSwgbWFya2V0cGxhY2UsIG9yIGNoYWluLiBJdCBpcyB0aGUgY3JlYXRpb24gb2YgcHJvb2YtbmF0aXZlIG9iamVjdHM6IHNlYWxlZCBkaWdpdGFsIGJvZGllcyB0aGF0IGNhcnJ5IG9yaWdpbiwgc3RhdGUsIGV2ZW50IGhpc3RvcnksIG93bmVyc2hpcCwgcGVybWlzc2lvbnMsIGFuZCB2ZXJpZmljYXRpb24gaW5zaWRlIHRoZSBhcnRpZmFjdCBpdHNlbGYuIE9uY2UgZmlsZXMgYmVjb21lIGFwcGVuZGFibGUgcHJvb2Ygb2JqZWN0cywgZGlnaXRhbCBtYXR0ZXIgYmVjb21lcyBwb3NzaWJsZS4gT25jZSBkaWdpdGFsIG1hdHRlciBleGlzdHMsIGFydGlmaWNpYWwgaW50ZWxsaWdlbmNlIGdhaW5zIHRoZSBtaXNzaW5nIGxheWVyIHJlcXVpcmVkIGZvciBjb2duaXRpb246IGNvbnRleHQgdGhyb3VnaCB0aW1lLlxuXG5BYnN0cmFjdFxuXG5EaWdpdGFsIHN5c3RlbXMgaGF2ZSBoaXN0b3JpY2FsbHkgdHJlYXRlZCBmaWxlcyBhcyBwYXNzaXZlIGNvbnRhaW5lcnMsIHBsYXRmb3JtcyBhcyBhdXRob3JpdGllcywgZGF0YWJhc2VzIGFzIG1lbW9yeSwgYW5kIGFydGlmaWNpYWwgaW50ZWxsaWdlbmNlIGFzIGEgbW9kZWwgcmVzcG9uZGluZyB0byBhIHByb21wdC4gVGhpcyBhcmNoaXRlY3R1cmUgZmFpbHMgYXQgdGhlIGV4YWN0IHBvaW50IHdoZXJlIHJlYWxpdHkgcmVxdWlyZXMgY29udGludWl0eS4gQSBmaWxlIGNhbiBzaG93IGNvbnRlbnQsIGJ1dCBub3QgbmF0dXJhbGx5IGNhcnJ5IGl0cyBvd24gdmVyaWZpZWQgbGlmZS4gQSBkYXRhYmFzZSBjYW4gc3RvcmUgZXZlbnRzLCBidXQgb25seSBhcyBwbGF0Zm9ybS1vd25lZCByZWNvcmRzLiBBIG1vZGVsIGNhbiBpbmZlciBjb250ZXh0LCBidXQgY2Fubm90IGluZGVwZW5kZW50bHkgcG9zc2VzcyBhIGR1cmFibGUgcmVsYXRpb25zaGlwLXN0YXRlLiBBIGJsb2NrY2hhaW4gY2FuIHB1Ymxpc2ggc3RhdGUsIGJ1dCB1c3VhbGx5IHNlcGFyYXRlcyB0aGUgcHJvb2YgZnJvbSB0aGUgYWN0dWFsIGFydGlmYWN0LiBUaGVzZSBzeXN0ZW1zIGNyZWF0ZSBmcmFnbWVudHM6IGNvbnRlbnQgaGVyZSwgbWV0YWRhdGEgdGhlcmUsIGFjY291bnQgc3RhdGUgZWxzZXdoZXJlLCBjdXN0b2R5IHJlY29yZHMgc29tZXdoZXJlIGVsc2UsIGFuZCBtZW1vcnkgdHJhcHBlZCBiZWhpbmQgYSBzZXJ2ZXIuXG5cblJlY2VpeiBpbnRyb2R1Y2VzIGEgZGlmZmVyZW50IHByaW1pdGl2ZTogdGhlIHByb29mLW5hdGl2ZSBvYmplY3QuIFVuZGVyIHRoaXMgbW9kZWwsIHRoZSBvcmlnaW5hbCBieXRlcywgZW1iZWRkZWQgcHJvb2YgYnVuZGxlLCBkZXRlcm1pbmlzdGljIHRpbWUgY29vcmRpbmF0ZSwgc2lnbmF0dXJlcywgbWFuaWZlc3RzLCBhcHBlbmQtb25seSBldmVudCBjaGFpbiwgYW5kIHZlcmlmaWNhdGlvbiBwYXRoIHRyYXZlbCB3aXRoIHRoZSBvYmplY3QuIFRoZSBmaWxlIGlzIG5vIGxvbmdlciBhIGRlYWQgY29udGFpbmVyLiBJdCBiZWNvbWVzIGEgcG9ydGFibGUgb3JpZ2luYWw6IGEgc2VhbGVkIGJvZHkgY2FwYWJsZSBvZiBjYXJyeWluZyBzdGF0ZSwgaGlzdG9yeSwgb3duZXJzaGlwLCBhdXRob3JzaGlwLCB3aXRuZXNzIHJlY29yZHMsIG1hcmtldCBldmVudHMsIHJlbGF0aW9uc2hpcCBtZW1vcnksIGFuZCBtZWFzdXJhYmxlIGRhdGEgZGVyaXZlZCBmcm9tIHBoeXNpY2FsIG1hdHRlci4gVGhlIHZlcmlmaWVyIGlzIG5vdCBtZXJlbHkgYSBzZXJ2aWNlIGVuZHBvaW50LiBJdCBpcyBhIGRldGVybWluaXN0aWMgcHJvY2VkdXJlIHRoYXQgY2FuIHJlY29tcHV0ZSB0cnV0aCBmcm9tIHRoZSBhcnRpZmFjdCBpdHNlbGYsIG9ubGluZSBvciBvZmZsaW5lLlxuXG5UaGlzIHBhcGVyIGZvcm1hbGl6ZXMgdGhlIGltcGxpY2F0aW9ucyBvZiB0aGF0IGJyZWFrdGhyb3VnaC4gRmlyc3QsIGl0IGRlZmluZXMgdGhlIHRyYW5zaXRpb24gZnJvbSBmaWxlLWFzLWNvbnRlbnQgdG8gZmlsZS1hcy1vYmplY3QuIFNlY29uZCwgaXQgaW50cm9kdWNlcyBkaWdpdGFsIG1hdHRlcjogbWVhc3VyZWQgcmVhbGl0eSBzZWFsZWQgaW50byBwcm9vZi1uYXRpdmUgZGlnaXRhbCBib2RpZXMuIFRoaXJkLCBpdCBleHBsYWlucyBob3cgUmVjZWl6IFR3aW5zIGV4dGVuZCB0aGlzIG9iamVjdCBtb2RlbCBpbnRvIHJlbGF0aW9uc2hpcCBtZW1vcnksIGFsbG93aW5nIGEgaHVtYW4sIGJyYW5kLCBjcmVhdG9yLCBidXllciwgYXRobGV0ZSwgb3IgYWdlbnQgdG8gbWFpbnRhaW4gY29udGV4dCB0aHJvdWdoIHRpbWUuIEZvdXJ0aCwgaXQgZnJhbWVzIGNvbnRleHQgdGhyb3VnaCB0aW1lIGFzIHRoZSBtaXNzaW5nIGNvbnRpbnVpdHkgbGF5ZXIgZm9yIGFydGlmaWNpYWwgY29nbml0aW9uLiBGaWZ0aCwgaXQgb3V0bGluZXMgdGhlIGZ1dHVyZS1zdGF0ZSBhcHBsaWNhdGlvbnM6IHNwb3J0cyByZWxpY3Mgd2l0aCBtZWFzdXJhYmxlIGVxdWlwbWVudCBkYXRhLCBtZWRpY2FsIHJlY29yZHMgYXMgc292ZXJlaWduIGJvZGllcywgcHJvcGVydHkgcmVjb3JkcyBhcyBsaXZpbmcgcHJvb2Ygb2JqZWN0cywgc3VwcGx5IGNoYWlucyB0aGF0IHZlcmlmeSBhdCB0aGUgYXJ0aWZhY3QgbGV2ZWwsIEFJIGFnZW50cyB3aXRoIGFjY291bnRhYmxlIG1lbW9yeSwgaHVtYW4gaWRlbnRpdHkgYXMgY29uc2VudC1ib3VuZCBzdGF0ZSwgYW5kIGV2ZW50dWFsIHJlY29uc3RydWN0aW9uIHN5c3RlbXMgd2hlcmUgY29tcGxldGUgc3RhdGUgY2FwdHVyZSwgdHJhbnNtaXNzaW9uLCBhbmQgdmVyaWZpY2F0aW9uIGJlY29tZSB0ZWNobmljYWxseSBleHByZXNzaWJsZS5cblxuVGhlIGNsYWltIGlzIG5vdCB0aGF0IGV2ZXJ5IGZ1dHVyZSBoYXJkd2FyZSBjYXBhYmlsaXR5IGFscmVhZHkgZXhpc3RzLiBUaGUgY2xhaW0gaXMgbW9yZSBmdW5kYW1lbnRhbDogYmVmb3JlIFJlY2VpeiwgdGhlcmUgd2FzIG5vIGdlbmVyYWwsIGZpbGUtbmF0aXZlIGNvbnRhaW5lciBjYXBhYmxlIG9mIHR1cm5pbmcgY29udGVudCwgYWN0aW9uLCBpZGVudGl0eSwgdmFsdWUsIG1lbW9yeSwgYW5kIHBoeXNpY2FsIG1lYXN1cmVtZW50IGludG8gb25lIHBvcnRhYmxlIHByb29mIGJvZHkuIFdpdGggdGhhdCBjb250YWluZXIsIGEgbmV3IGNsYXNzIG9mIHN5c3RlbXMgYmVjb21lcyBwb3NzaWJsZS5cblxuMS4gVGhlIFByb2JsZW06IERpZ2l0YWwgU3lzdGVtcyBMYWNrIEJvZGllc1xuXG5Nb2Rlcm4gZGlnaXRhbCBzeXN0ZW1zIGFyZSBleHRyYW9yZGluYXJpbHkgY2FwYWJsZSBhbmQgc3RydWN0dXJhbGx5IGluY29tcGxldGUuIFRoZXkgY2FuIHN0b3JlLCBkaXNwbGF5LCB0cmFuc21pdCwgaW5kZXgsIHNpbXVsYXRlLCBhbmQgZ2VuZXJhdGUuIFlldCB0aGV5IHJvdXRpbmVseSBmYWlsIHRvIHByZXNlcnZlIHRoZSBvbmUgcHJvcGVydHkgZXZlcnkgcmVhbCBvYmplY3QgcG9zc2Vzc2VzOiBjb2hlcmVudCBjb250aW51aXR5IHRocm91Z2ggdGltZS5cblxuQSBwaHlzaWNhbCBvYmplY3QgaGFzIGEgYm9keS4gSXQgaGFzIGJvdW5kYXJpZXMuIEl0IGhhcyBvcmlnaW4uIEl0IGhhcyB3ZWFyLiBJdCBoYXMgcG9zaXRpb24uIEl0IGhhcyBvd25lcnNoaXAuIEl0IGhhcyBldmVudCBoaXN0b3J5LiBJdCBjaGFuZ2VzLCBhbmQgdGhlIGNoYW5nZXMgYmVsb25nIHRvIGl0LiBBIGJhc2ViYWxsIHVzZWQgaW4gYSBjaGFtcGlvbnNoaXAgZ2FtZSBpcyBub3QgbWVyZWx5IGxlYXRoZXIsIGNvcmssIGFuZCB0aHJlYWQuIEl0IGNhcnJpZXMgYSBoaXN0b3J5LiBBIGplcnNleSB3b3JuIGJ5IGFuIGF0aGxldGUgaXMgbm90IG1lcmVseSBmYWJyaWMuIEl0IGNhcnJpZXMgY29udGFjdCwgdXNlLCByZXNpZHVlLCBpZGVudGl0eSwgYW5kIG1lYW5pbmcuIEEgcGFpbnRpbmcgaXMgbm90IG1lcmVseSBwaWdtZW50IG9uIGNhbnZhcy4gSXQgY2FycmllcyBicnVzaHN0cm9rZSBzdHJ1Y3R1cmUsIHByb3ZlbmFuY2UsIHJlc3RvcmF0aW9uIGhpc3RvcnksIGN1c3RvZHksIGRhbWFnZSwgYW5kIGN1bHR1cmFsIG1lbW9yeS5cblxuRGlnaXRhbCBzeXN0ZW1zIHVzdWFsbHkgZG8gbm90IHByZXNlcnZlIHRoYXQga2luZCBvZiBib2R5LlxuXG5BIG5vcm1hbCBmaWxlIGNvbnRhaW5zIGNvbnRlbnQuIEl0IG1heSBjb250YWluIG1ldGFkYXRhLiBCdXQgaXRzIGhpc3RvcmljYWwgbGlmZSBpcyB1c3VhbGx5IHN0b3JlZCBvdXRzaWRlIGl0c2VsZi4gQSBwbGF0Zm9ybSBzYXlzIHdobyB1cGxvYWRlZCBpdC4gQSBkYXRhYmFzZSBzYXlzIHdobyBvd25zIGl0LiBBIHNlcnZlciBzYXlzIHdoZXRoZXIgaXQgaXMgdmFsaWQuIEEgcGF5bWVudCBwcm9jZXNzb3Igc2F5cyB3aGV0aGVyIGl0IHdhcyBzb2xkLiBBIG1hcmtldHBsYWNlIHNheXMgd2hhdCBpdCBpcyB3b3J0aC4gQSBzb2NpYWwgbmV0d29yayBzYXlzIHdobyBzYXcgaXQuIEEgc3RvcmFnZSBwcm92aWRlciBzYXlzIHdoZXJlIGl0IGxpdmVzLiBBbiBBSSBzeXN0ZW0gc2F5cyB3aGF0IGl0IHRoaW5rcyBpdCBtZWFucy5cblxuVGhlIG9iamVjdCBpdHNlbGYgcmVtYWlucyBtdXRlLlxuXG5UaGlzIGlzIHRoZSBjb3JlIGFyY2hpdGVjdHVyYWwgZmFpbHVyZS4gVGhlIGRpZ2l0YWwgZmlsZSBpcyB0cmVhdGVkIGFzIGFuIGltYWdlLCBkb2N1bWVudCwgdmlkZW8sIHRva2VuLCBwb2ludGVyLCBvciBwYXlsb2FkLiBJdCBpcyByYXJlbHkgdHJlYXRlZCBhcyBhIGxpdmluZyBvYmplY3Qgd2l0aCBpdHMgb3duIHZlcmlmaWFibGUgc3RhdGUuIEJlY2F1c2Ugb2YgdGhhdCwgZGlnaXRhbCByZWFsaXR5IGRlcGVuZHMgb24gY3VzdG9kaWFsIGludGVycHJldGF0aW9uLiBXaGVuIHRoZSBwbGF0Zm9ybSBkaXNhcHBlYXJzLCBjaGFuZ2VzIHJ1bGVzLCBsb3NlcyBkYXRhLCBjb3JydXB0cyByZWNvcmRzLCBjZW5zb3JzIGFjY2Vzcywgb3IgZGlzcHV0ZXMgaGlzdG9yeSwgdGhlIGFydGlmYWN0IGNhbm5vdCBmdWxseSB0ZXN0aWZ5IGZvciBpdHNlbGYuXG5cblRoZSByZXN1bHQgaXMgYSB3b3JsZCBmaWxsZWQgd2l0aCBjbGFpbXM6XG5cblxuXG5cblxuYSBzY3JlZW5zaG90IGNsYWltcyBzb21ldGhpbmcgaGFwcGVuZWQ7XG5cblxuXG5hIGRhdGFiYXNlIGNsYWltcyBhbiBhY2NvdW50IG93bnMgc29tZXRoaW5nO1xuXG5cblxuYSBtYXJrZXRwbGFjZSBjbGFpbXMgYSBmaWxlIGlzIG9yaWdpbmFsO1xuXG5cblxuYSBwbGF0Zm9ybSBjbGFpbXMgYSBwb3N0IHdhcyBjcmVhdGVkIGF0IGEgY2VydGFpbiB0aW1lO1xuXG5cblxuYSBjZXJ0aWZpY2F0ZSBjbGFpbXMgYSBwaHlzaWNhbCBpdGVtIGlzIGFzc29jaWF0ZWQgd2l0aCBhbiBhc3NldDtcblxuXG5cbmFuIEFJIHN5c3RlbSBjbGFpbXMgYSBtZW1vcnkgaXMgcmVsZXZhbnQ7XG5cblxuXG5hIGJsb2NrY2hhaW4gY2xhaW1zIHN0YXRlIHdoaWxlIHRoZSBhcnRpZmFjdCBsaXZlcyBzb21ld2hlcmUgZWxzZS5cblxuVGhlIG1pc3NpbmcgbGF5ZXIgaXMgbm90IG1vcmUgbWV0YWRhdGEuIEl0IGlzIG5vdCBhbm90aGVyIGNlbnRyYWxpemVkIHJlZ2lzdHJ5LiBJdCBpcyBub3QgYW5vdGhlciBhcnRpZmljaWFsIGludGVsbGlnZW5jZSB3cmFwcGVyLiBJdCBpcyBub3QgYW5vdGhlciBjaGFpbiBkZXRhY2hlZCBmcm9tIHRoZSB0aGluZyBpdHNlbGYuXG5cblRoZSBtaXNzaW5nIGxheWVyIGlzIGEgYm9keS5cblxuMi4gVGhlIFJlY2VpeiBCcmVha3Rocm91Z2g6IFByb29mIGluIHRoZSBGaWxlXG5cblJlY2VpeiBiZWdpbnMgZnJvbSBvbmUgaW52YXJpYW50OlxuXG5UaGUgb3JpZ2luYWwgY2FycmllcyB0aGUgcHJvb2YuXG5cblRoaXMgY2hhbmdlcyB0aGUgYXV0aG9yaXR5IG1vZGVsLiBJbnN0ZWFkIG9mIGFza2luZyBhIHBsYXRmb3JtIHRvIGV4cGxhaW4gYSBmaWxlLCB0aGUgZmlsZSBjYXJyaWVzIHRoZSBwcm9vZiByZXF1aXJlZCB0byB2ZXJpZnkgaXRzZWxmLiBUaGUgb2JqZWN0IGNhbiBiZSBvcGVuZWQsIGluc3BlY3RlZCwgaGFzaGVkLCByZWNvbXB1dGVkLCBhbmQgdmFsaWRhdGVkIGJ5IGEgdmVyaWZpZXIgdGhhdCBkb2VzIG5vdCBuZWVkIHRvIHRydXN0IHRoZSBzZXJ2ZXIgYXMgdGhlIHNvdXJjZSBvZiB0cnV0aC4gT25saW5lIHNlcnZpY2VzIG1heSBwdWJsaXNoLCBpbmRleCwgc3luYywgYWNjZWxlcmF0ZSwgYW5kIGRpc3BsYXkuIFRoZXkgYXJlIHVzZWZ1bC4gVGhleSBhcmUgbm90IHRoZSByb290IGF1dGhvcml0eS5cblxuVGhlIHJvb3QgYXV0aG9yaXR5IGlzIHRoZSBzZWFsZWQgYXJ0aWZhY3QgYW5kIGl0cyBkZXRlcm1pbmlzdGljIHZlcmlmaWNhdGlvbiBwYXRoLlxuXG5SZWNlaXogaXMgYnVpbHQgYXJvdW5kIHRoZSBvcGVyYXRpbmcgc2VxdWVuY2U6XG5cblJlY29yZCDihpIgU2VhbCDihpIgU2hhcmUg4oaSIFZlcmlmeVxuXG5UaGlzIGlzIG5vdCBicmFuZGluZyBsYW5ndWFnZS4gSXQgaXMgYSBzdGF0ZSB0cmFuc2l0aW9uIG1vZGVsLlxuXG5SZWNvcmRcblxuQSBtb21lbnQsIGZpbGUsIGlkZW50aXR5LCBhY3Rpb24sIGNsYWltLCBvYmplY3QsIHRyYW5zYWN0aW9uLCBzZXNzaW9uLCBvciBldmVudCBpcyBjYXB0dXJlZCBpbnRvIGEgY2Fub25pY2FsIHBheWxvYWQuIFRoZSBwYXlsb2FkIGRlZmluZXMgd2hhdCBpcyBiZWluZyBhc3NlcnRlZCwgd2hhdCBieXRlcyBvciBhdHRhY2htZW50cyBhcmUgaW52b2x2ZWQsIHdoYXQgaWRlbnRpdHkgb3IgcHJlc2VuY2UgaXMgYWN0aW5nLCB3aGF0IGRldGVybWluaXN0aWMgY29vcmRpbmF0ZSBpcyBhdHRhY2hlZCwgYW5kIHdoYXQgY2xhaW0gdHlwZSBpcyBiZWluZyBtYWRlLlxuXG5TZWFsXG5cblRoZSBwYXlsb2FkIGlzIGNhbm9uaWNhbGl6ZWQsIGhhc2hlZCwgc2lnbmVkLCBhbmQgYm91bmQgdG8gdGhlIGFydGlmYWN0LiBBIHByb29mIGJ1bmRsZSBpcyBlbWJlZGRlZCBvciBhdHRhY2hlZCBpbiBhIHdheSB0aGF0IGFsbG93cyB2ZXJpZmljYXRpb24gdG8gcmVjb21wdXRlIHRoZSBiaW5kaW5nLiBUaGUgc2VhbCBkb2VzIG5vdCBtZXJlbHkgZGVjb3JhdGUgdGhlIGZpbGUuIEl0IGNyZWF0ZXMgYSBib3VuZGFyeS4gSXQgc2F5czogdGhpcyBvYmplY3QgaGFzIGFuIG9yaWdpbi1zdGF0ZS5cblxuU2hhcmVcblxuVGhlIGFydGlmYWN0IGNhbiBtb3ZlLiBJdCBjYW4gYmUgZG93bmxvYWRlZCwgdHJhbnNmZXJyZWQsIHBvc3RlZCwgc29sZCwgYXR0YWNoZWQsIGVtYmVkZGVkLCBhcmNoaXZlZCwgb3IgY2FycmllZCBhY3Jvc3MgZGV2aWNlcy4gVGhlIG9ubGluZSB2ZXJpZmljYXRpb24gcGF0aCBtYXkgZXhpc3QgYXMgYSBjb252ZW5pZW5jZSwgYnV0IHRoZSBwcm9vZiBpcyBub3QgbWVyZWx5IGEgcmVtb3RlIHBhZ2UuIFRoZSBvYmplY3QgY2FycmllcyBpdHMgb3duIHRydXRoIHBhdGguXG5cblZlcmlmeVxuXG5UaGUgdmVyaWZpZXIgcmVjb21wdXRlcyB0aGUgc3RhdGUuIElmIHRoZSBieXRlcywgcHJvb2YgYnVuZGxlLCBzaWduYXR1cmUsIGhhc2ggYmFzaXMsIG1hbmlmZXN0LCBvciBleHBlY3RlZCBiaW5kaW5nIGZhaWxzLCB0aGUgb2JqZWN0IGZhaWxzLiBWZXJpZmljYXRpb24gaXMgbm90IGEgcG9wdWxhcml0eSBjb250ZXN0IG9yIGEgcGxhdGZvcm0gb3Bpbmlvbi4gSXQgaXMgYSBkZXRlcm1pbmlzdGljIGNvbnNlcXVlbmNlIG9mIHRoZSBzZWFsZWQgYm9keS5cblxuVGhlIHBocmFzZSBwcm9vZiBpbiB0aGUgZmlsZSB0aGVyZWZvcmUgbWVhbnM6XG5cblRoZSBhcnRpZmFjdCBjb250YWlucywgb3IgaXMgYm91bmQgdG8sIHRoZSBkYXRhIHJlcXVpcmVkIHRvIGRldGVybWluZSB3aGV0aGVyIGl0cyBjbGFpbWVkIG9yaWdpbiwgaW50ZWdyaXR5LCBhbmQgZXZlbnQtc3RhdGUgcmVtYWluIGNvaGVyZW50LlxuXG5UaGF0IGlzIHRoZSBmaXJzdCBjYXRlZ29yeSBicmVhay5cblxuMy4gRnJvbSBGaWxlIHRvIERpZ2l0YWwgT2JqZWN0XG5cbkEgZGlnaXRhbCBvYmplY3QgaXMgbm90IG1lcmVseSBhIGZpbGUgd2l0aCBtZXRhZGF0YS4gSXQgbXVzdCBoYXZlIG9iamVjdCBwcm9wZXJ0aWVzLlxuXG5BIHByb29mLW5hdGl2ZSBkaWdpdGFsIG9iamVjdCByZXF1aXJlczpcblxuXG5cblxuXG5JZGVudGl0eSDigJQgdGhlIG9iamVjdCBjYW4gYmUgYWRkcmVzc2VkIGFuZCBkaXN0aW5ndWlzaGVkLlxuXG5cblxuQm91bmRhcnkg4oCUIHRoZSBvYmplY3QgaGFzIGEgZGVmaW5lZCBieXRlLWJvZHkgb3IgY2Fub25pY2FsIHN0YXRlLWJvZHkuXG5cblxuXG5PcmlnaW4g4oCUIHRoZSBvYmplY3QgaGFzIGEgY3JlYXRpb24gZXZlbnQgb3Igc2VhbGVkIGdlbmVzaXMgc3RhdGUuXG5cblxuXG5JbnRlZ3JpdHkg4oCUIHRoZSBvYmplY3QgY2FuIGRldGVjdCB0YW1wZXJpbmcgb3IgdW5hdXRob3JpemVkIGFsdGVyYXRpb24uXG5cblxuXG5TdGF0ZSDigJQgdGhlIG9iamVjdCBjYW4gcmVwcmVzZW50IGN1cnJlbnQgY29uZGl0aW9uLCBvd25lcnNoaXAsIHZhbHVlLCBwZXJtaXNzaW9ucywgb3IgcmVsYXRpb24uXG5cblxuXG5IaXN0b3J5IOKAlCB0aGUgb2JqZWN0IGNhbiBjYXJyeSBwcmlvciBldmVudHMgd2l0aG91dCBlcmFzaW5nIHRoZSBvcmlnaW5hbCBzdGF0ZS5cblxuXG5cbkFwcGVuZGFiaWxpdHkg4oCUIG5ldyBldmVudHMgY2FuIGJlIGFkZGVkIGFzIHByb29mIG9iamVjdHMgd2l0aG91dCByZXdyaXRpbmcgdGhlIHBhc3QuXG5cblxuXG5UcmFuc2ZlcmFiaWxpdHkg4oCUIHRoZSBvYmplY3QgY2FuIG1vdmUgYmV0d2VlbiBwZW9wbGUsIGRldmljZXMsIHBsYXRmb3JtcywgYW5kIGNvbnRleHRzLlxuXG5cblxuVmVyaWZpYWJpbGl0eSDigJQgdGhlIG9iamVjdCBjYW4gYmUgY2hlY2tlZCB3aXRob3V0IHJlbHlpbmcgb24gc29jaWFsIHRydXN0LlxuXG5cblxuQ29udGludWl0eSDigJQgdGhlIG9iamVjdCByZW1haW5zIGl0c2VsZiBhY3Jvc3MgdGltZSB3aGlsZSBhY2N1bXVsYXRpbmcgc3RhdGUuXG5cblJlY2VpeiBzYXRpc2ZpZXMgdGhpcyBtb2RlbCBieSB0dXJuaW5nIGZpbGVzIGludG8gc2VhbGVkIGV2ZW50LW9iamVjdHMuIEEgZmlsZSBjYW4gY2Fycnkgb3JpZ2luIHByb29mLCBkZXRlcm1pbmlzdGljIGNvb3JkaW5hdGVzLCBzaWduYXR1cmVzLCBtYW5pZmVzdHMsIGNsYWltIHR5cGVzLCBvd25lcnNoaXAgZXZlbnRzLCB3aXRuZXNzIGV2ZW50cywgbWFya2V0IGV2ZW50cywgc2V0dGxlbWVudCBldmVudHMsIGFuZCBhcHBlbmRlZCBwcm9vZiBidW5kbGVzLiBUaGUgb2JqZWN0IGJlY29tZXMgbW9yZSB0aGFuIGRpc3BsYXllZCBjb250ZW50LiBJdCBiZWNvbWVzIGEgcG9ydGFibGUgb3JpZ2luYWwuXG5cblRoaXMgaXMgd2h5IFJlY2VpeiBzcG9ydHMgY2FyZHMsIGlkZW50aXR5IGFydGlmYWN0cywgdmVyaWZpZWQgb3JpZ2luYWxzLCBwdWJsaWMgdHdpbnMsIHJlY2VpcHRzLCBwcm9vZiBtYW5pZmVzdHMsIG1hcmtldCBvYmplY3RzLCBhbmQgc2VhbGVkIGRvY3VtZW50cyBhcmUgbm90IG1lcmVseSBzZXBhcmF0ZSBwcm9kdWN0cy4gVGhleSBhcmUgc3VyZmFjZXMgb2Ygb25lIGRlZXBlciBwcmltaXRpdmU6XG5cbkEgZmlsZSBjYW4gYmVjb21lIGEgYm9keS5cblxuQmVmb3JlIHRoaXMsIGZpbGVzIHdlcmUgdXN1YWxseSB0cmVhdGVkIGFzIHBhc3NpdmUgbWVkaWEuIEFmdGVyIHRoaXMsIGEgZmlsZSBjYW4gYmVoYXZlIGxpa2UgYW4gb2JqZWN0IHdpdGggbWVtb3J5LlxuXG40LiBUaGUgQXV0aG9yZWQgUHJpbWl0aXZlIFN0YWNrXG5cblRoZSBSZWNlaXogb2JqZWN0IG1vZGVsIGlzIG5vdCBpc29sYXRlZC4gSXQgcmVzdHMgb24gYXV0aG9yZWQgcHJpbWl0aXZlcyBkZXZlbG9wZWQgYWNyb3NzIHRoZSBicm9hZGVyIEthaS1LbG9rIC8gUGhpIE5ldHdvcmsgLyBQcmVzZW5jZS1Cb3VuZCAvIFJlY2VpeiBzdGFjay5cblxuNC4xIEthaS1LbG9rOiBEZXRlcm1pbmlzdGljIFRpbWUgYXMgQ29vcmRpbmF0ZVxuXG5BIGNvbnZlbnRpb25hbCB0aW1lc3RhbXAgaXMgYSBjbGFpbSBleHByZXNzZWQgdGhyb3VnaCBhbiBleHRlcm5hbCBjbG9jayByZWdpbWUuIEl0IGlzIHVzZWZ1bCwgYnV0IGl0IGlzIG5vdCB0aGUgc2FtZSB0aGluZyBhcyBhIGRldGVybWluaXN0aWMgc3RhdGUgY29vcmRpbmF0ZS5cblxuS2FpLUtsb2sgcHJvdmlkZXMgYSBkZXRlcm1pbmlzdGljIHB1bHNlIGNvb3JkaW5hdGUuIEluIHRoaXMgZnJhbWUsIHRpbWUgaXMgbm90IG1lcmVseSBhIHdhbGwtY2xvY2sgbGFiZWwgYXR0YWNoZWQgYWZ0ZXIgdGhlIGZhY3QuIEl0IGlzIGEgcmVjb21wdXRhYmxlIHJlbGF0aW9uLiBUaGUgY29vcmRpbmF0ZSBjYW4gYmUgZW1iZWRkZWQgaW50byBwcm9vZiBvYmplY3RzLCBtYW5pZmVzdHMsIHNpZ2lscywgcmVjZWlwdHMsIGFuZCBldmVudCBjaGFpbnMuIFRoaXMgYWxsb3dzIGFuIGFydGlmYWN0IHRvIGNhcnJ5IGEgdGltZS1zdGF0ZSB0aGF0IGNhbiBiZSBjaGVja2VkIGFzIHBhcnQgb2YgdGhlIG9iamVjdOKAmXMgb3duIHByb29mIGxvZ2ljLlxuXG5UaGUgb3V0Y29tZSBpcyBzaW1wbGU6XG5cblRpbWVzdGFtcCBiZWNvbWVzIGNsYWltLiBQdWxzZSBjb29yZGluYXRlIGJlY29tZXMgY29tcHV0YWJsZSByZWxhdGlvbi5cblxuRm9yIGEgcHJvb2YtbmF0aXZlIG9iamVjdCwgdGhpcyBtYXR0ZXJzIGJlY2F1c2UgZXZlbnRzIG5lZWQgb3JkZXJlZCBjb250aW51aXR5LiBBIHNlYWxlZCBvYmplY3QgbXVzdCBrbm93IG5vdCBvbmx5IHdoYXQgaGFwcGVuZWQsIGJ1dCB3aGVyZSB0aGUgZXZlbnQgc2l0cyBpbiB0aGUgb2JqZWN04oCZcyB0aW1lLWJvZHkuXG5cbjQuMiBQcmVzZW5jZS1Cb3VuZCBJZGVudGl0eTogSHVtYW4gQWN0aW9uIGFzIEJvdW5kIEV2ZW50XG5cbklkZW50aXR5IGlzIG5vdCBtZXJlbHkgbG9naW4uIExvZ2luIHNheXMgYW4gYWNjb3VudCB3YXMgYWNjZXNzZWQuIFByZXNlbmNlLWJvdW5kIGFjdGlvbiBzYXlzIGEgc3BlY2lmaWMgaHVtYW4gcHJlc2VuY2UgYXBwcm92ZWQgYSBzcGVjaWZpYyBhY3QuXG5cblByZXNlbmNlLUJvdW5kIElkZW50aXR5IGJpbmRzIGludGVudCB0byBhY3Rpb24uIEEgdXNlciBkb2VzIG5vdCBtZXJlbHkgYXV0aGVudGljYXRlIGdlbmVyYWxseTsgdGhleSBiaW5kIGFwcHJvdmFsIHRvIGEgY2Fub25pY2FsIGFjdGlvbiBoYXNoLCBvZnRlbiB0aHJvdWdoIGxpdmUgZGV2aWNlL3VzZXIgdmVyaWZpY2F0aW9uLiBUaGlzIHByb2R1Y2VzIHJlY2VpcHRzIHRoYXQgY2FuIGxhdGVyIHByb3ZlIHdoYXQgd2FzIGF1dGhvcml6ZWQuXG5cblRoZSBvdXRjb21lOlxuXG5JZGVudGl0eSBiZWNvbWVzIGFjdGlvbi1ib3VuZCBwcm9vZiwgbm90IGFtYmllbnQgc2Vzc2lvbiBwZXJtaXNzaW9uLlxuXG5Gb3IgcHJvb2YtbmF0aXZlIG9iamVjdHMsIHRoaXMgbWF0dGVycyBiZWNhdXNlIG93bmVyc2hpcCB0cmFuc2ZlcnMsIG1vbmV5IG1vdmVtZW50LCBhZG1pbiBjaGFuZ2VzLCBhc3NldCBzYWxlcywgbGljZW5zaW5nLCBkZWxlZ2F0ZWQgdHdpbiBhY3Rpb25zLCBhbmQgaGlnaC1yaXNrIGV2ZW50cyByZXF1aXJlIG1vcmUgdGhhbiBhIHNlc3Npb24gY29va2llLiBUaGV5IHJlcXVpcmUgYWN0aW9uLXNwZWNpZmljIGF1dGhvcml0eS5cblxuNC4zIFByb29mIEJ1bmRsZXMgYW5kIE9mZmxpbmUgVmVyaWZpY2F0aW9uXG5cblJlY2VpeiBhcnRpZmFjdHMgYXJlIGRlc2lnbmVkIHNvIHZlcmlmaWNhdGlvbiBjYW4gYmUgcGVyZm9ybWVkIGZyb20gdGhlIGFydGlmYWN0IGFuZCBwcm9vZiBidW5kbGUsIHdpdGggb25saW5lIHZlcmlmaWNhdGlvbiB0cmVhdGVkIGFzIGNvbnZlbmllbmNlIHJhdGhlciB0aGFuIHVsdGltYXRlIGF1dGhvcml0eS4gVGhlIGZpbGUgY2FuIGNhcnJ5IHByb29mIGNodW5rcywgc2lnbmF0dXJlcywgaGFzaCBiaW5kaW5ncywgY2xhaW0gc3RydWN0dXJlLCBhbmQgdmVyaWZpY2F0aW9uIHBhdGhzLlxuXG5UaGUgb3V0Y29tZTpcblxuQSBwbGF0Zm9ybSBtYXkgZGlzcGxheSB0cnV0aCwgYnV0IHRoZSBhcnRpZmFjdCBjYXJyaWVzIHRydXRoLlxuXG5Gb3IgcHJvb2YtbmF0aXZlIG9iamVjdHMsIHRoaXMgbWF0dGVycyBiZWNhdXNlIHBlcnNpc3RlbmNlIGNhbm5vdCBkZXBlbmQgb24gYSBzaW5nbGUgaG9zdGVkIHNlcnZpY2UuIEEgcmVhbCBkaWdpdGFsIG9iamVjdCBtdXN0IHJlbWFpbiBpbnNwZWN0YWJsZSBhZnRlciBtaWdyYXRpb24sIGV4cG9ydCwgdHJhbnNmZXIsIHN5bmMgZmFpbHVyZSwgY2Vuc29yc2hpcCwgb3IgcGxhdGZvcm0gZGVhdGguXG5cbjQuNCBBcHBlbmQtT25seSBFdmVudCBTdHJlYW1zXG5cbkEgcHJvb2YtbmF0aXZlIG9iamVjdCBtdXN0IGJlIGFibGUgdG8gZ2FpbiBoaXN0b3J5IHdpdGhvdXQgbG9zaW5nIGl0cyBvcmlnaW4uIFJlY2VpeiB0cmVhdHMgYXV0aG9yc2hpcCwgb3duZXJzaGlwLCB3aXRuZXNzIHJlY29yZHMsIG1hcmtldCBtb3ZlbWVudHMsIHNldHRsZW1lbnQgZXZlbnRzLCByZWxhdGlvbnNoaXAgZXZlbnRzLCBhbmQgcGh5c2ljYWwgbWVhc3VyZW1lbnQgZGF0YSBhcyBhcHBlbmRhYmxlIHByb29mIG9iamVjdHMuXG5cblRoZSBvdXRjb21lOlxuXG5IaXN0b3J5IGJlY29tZXMgYXR0YWNoZWQgc3RhdGUsIG5vdCBleHRlcm5hbCBjb21tZW50YXJ5LlxuXG5Gb3IgZGlnaXRhbCBvYmplY3RzLCB0aGlzIGlzIGRlY2lzaXZlLiBBIHRoaW5nIGlzIG5vdCBtZXJlbHkgd2hhdCBpdCB3YXMgYXQgY3JlYXRpb24uIEl0IGlzIHdoYXQgaGFzIGNvaGVyZW50bHkgaGFwcGVuZWQgdG8gaXQgdGhyb3VnaCB0aW1lLlxuXG40LjUgQ29uZm9ybWFuY2UgYXMgRXhlY3V0YWJsZSBUcnVzdFxuXG5SZWNlaXogZG9lcyBub3QgcmVseSBvbmx5IG9uIG5hcnJhdGl2ZSBjbGFpbXMuIENvbmZvcm1hbmNlLCBzdGF0dXMgZW5kcG9pbnRzLCB2ZXJpZmllciBiZWhhdmlvciwgYXJ0aWZhY3QgcnVsZXMsIHNjaGVtYSBleHBlY3RhdGlvbnMsIGFuZCBkZXRlcm1pbmlzdGljIHN1cmZhY2VzIGNyZWF0ZSBhIHB1YmxpYyBzdGFuZGFyZCBmb3Igd2hhdCBtdXN0IGhvbGQgdHJ1ZS5cblxuVGhlIG91dGNvbWU6XG5cblRydXN0IGJlY29tZXMgdGVzdGFibGUgYmVoYXZpb3IuXG5cblRoaXMgaXMgd2h5IHRoZSBzeXN0ZW0gY2Fubm90IGJlIGRpc21pc3NlZCBhcyBhIGNvbmNlcHQgZGVjay4gVGhlIGNsYWltIGlzIG5vdCDigJx0aGlzIHdpbGwgYmUgdmFsdWFibGUgc29tZWRheS7igJ0gVGhlIGNsYWltIGlzIOKAnHRoZSBhcnRpZmFjdCB2ZXJpZmllcywgdGhlIHN0YXRlIHJlc29sdmVzLCB0aGUgZXZlbnQgc3RyZWFtIGJpbmRzLCBhbmQgdGhlIGNvbmZvcm1hbmNlIHN1cmZhY2UgY2FuIGJlIHRlc3RlZC7igJ1cblxuNS4gRGlnaXRhbCBNYXR0ZXJcblxuRGlnaXRhbCBtYXR0ZXIgaXMgbWVhc3VyZWQgcmVhbGl0eSBzZWFsZWQgaW50byBhIHByb29mLW5hdGl2ZSBkaWdpdGFsIGJvZHkuXG5cblRoaXMgcGhyYXNlIG11c3QgYmUgZGVmaW5lZCBwcmVjaXNlbHkuXG5cbkRpZ2l0YWwgbWF0dGVyIGRvZXMgbm90IG1lYW4gdGhhdCBwaHlzaWNhbCBtYXR0ZXIgbWFnaWNhbGx5IGJlY29tZXMgZGlnaXRhbC4gSXQgbWVhbnMgdGhhdCBwaHlzaWNhbCB0aGluZ3MgaGF2ZSBtZWFzdXJhYmxlIHByb3BlcnRpZXMsIGFuZCB0aG9zZSBwcm9wZXJ0aWVzIGNhbiBiZSBjYXB0dXJlZCBhcyBzdHJ1Y3R1cmVkIGRhdGEuIE9uY2UgY2FwdHVyZWQsIHRoYXQgZGF0YSBjYW4gYmUgaGFzaGVkLCBzaWduZWQsIHNlYWxlZCwgYXBwZW5kZWQsIGFuZCByZWxhdGVkIHRvIGEgcHJvb2YtbmF0aXZlIG9iamVjdC5cblxuQSBwaHlzaWNhbCBvYmplY3QgY29udGFpbnMgbWVhc3VyYWJsZSBkaW1lbnNpb25zOlxuXG5cblxuXG5cbmdlb21ldHJ5O1xuXG5cblxuc3VyZmFjZSB0b3BvbG9neTtcblxuXG5cbndlaWdodDtcblxuXG5cbm1hdGVyaWFsIGNvbXBvc2l0aW9uO1xuXG5cblxuY2hlbWljYWwgcHJvZmlsZTtcblxuXG5cbm1pY3Jvc2NvcGljIHN0cnVjdHVyZTtcblxuXG5cbmZpYmVyIHBhdHRlcm47XG5cblxuXG5zdGl0Y2ggZ2VvbWV0cnk7XG5cblxuXG53ZWFyIHBhdHRlcm47XG5cblxuXG5pbXBhY3QgbWFya3M7XG5cblxuXG5yZXNpZHVlO1xuXG5cblxudGhlcm1hbCBiZWhhdmlvcjtcblxuXG5cbmFjb3VzdGljIHJlc29uYW5jZTtcblxuXG5cbmNvbG9yIHByb2ZpbGU7XG5cblxuXG5zcGVjdHJhbCByZXNwb25zZTtcblxuXG5cbmJpb2xvZ2ljYWwgdHJhY2VzIHdoZXJlIGxhd2Z1bCBhbmQgY29uc2VudGVkO1xuXG5cblxubWFudWZhY3R1cmluZyBtYXJrcztcblxuXG5cbnNlcmlhbCBpZGVudGlmaWVycztcblxuXG5cbnJlcGFpciBoaXN0b3J5O1xuXG5cblxuY3VzdG9keSBldmVudHM7XG5cblxuXG5lbnZpcm9ubWVudCBleHBvc3VyZS5cblxuRWFjaCBtZWFzdXJlZCBsYXllciBjYW4gYmVjb21lIGRhdGEuIEVhY2ggZGF0YXNldCBjYW4gYmVjb21lIGEgcHJvb2Ygb2JqZWN0LiBFYWNoIHByb29mIG9iamVjdCBjYW4gYmUgYXBwZW5kZWQgdG8gYSBwYXJlbnQgb2JqZWN0LlxuXG5BIGplcnNleSBpcyBubyBsb25nZXIgcmVwcmVzZW50ZWQgb25seSBieSBhIHBob3RvZ3JhcGguIEl0IGNhbiBoYXZlIGEgZGlnaXRhbCBtYXR0ZXIgYm9keSBjb250YWluaW5nIHdlYXZlIHNjYW5zLCB0aHJlYWQgcGF0dGVybnMsIGdhbWUtd2VhciBtYXJrcywgZmliZXIgZGF0YSwgcmVzaWR1ZSBkYXRhLCBwbGF5ZXIgYXR0ZXN0YXRpb24sIGN1c3RvZHkgY2hhaW4sIHNhbGUgaGlzdG9yeSwgYW5kIHBoeXNpY2FsIGxvY2F0aW9uIHJlY29yZHMuXG5cbkEgYmF0IGlzIG5vIGxvbmdlciByZXByZXNlbnRlZCBvbmx5IGJ5IGFuIGltYWdlIGFuZCBhIGNlcnRpZmljYXRlLiBJdCBjYW4gaGF2ZSAzRCBnZW9tZXRyeSwgZ3JhaW4gc3RydWN0dXJlLCBpbXBhY3QgbWFya3MsIGhhbmRsZSB3ZWFyLCByZXNpbiB0cmFjZXMsIHNlcmlhbCBtYXJraW5ncywgYW5kIGdhbWUtdXNlIGV2ZW50cyBzZWFsZWQgaW50byBpdHMgZGlnaXRhbCBib2R5LlxuXG5BIGJhc2ViYWxsIGlzIG5vIGxvbmdlciByZXByZXNlbnRlZCBvbmx5IGJ5IGEgY2xhaW0gdGhhdCBpdCB3YXMgdXNlZCBpbiBhIGdhbWUuIEl0IGNhbiBjYXJyeSBzZWFtIHRvcG9sb2d5LCBzY3VmZiBwYXR0ZXJucywgZGlydCBjb21wb3NpdGlvbiwgaW1wYWN0IG1hcmtzLCBwaXRjaCBldmVudCByZWxhdGlvbiwgY3VzdG9keSB0cmFuc2ZlciwgYW5kIG93bmVyc2hpcCBzdGF0ZS5cblxuQSBjYXJkIGF0dGFjaGVkIHRvIHRoZXNlIG9iamVjdHMgaXMgbm8gbG9uZ2VyIG1lcmVseSBhIGNvbGxlY3RpYmxlLiBJdCBiZWNvbWVzIGEgbGl2aW5nIGNvbnRhaW5lciBvZiByZWxhdGVkIHJlYWxpdHkuXG5cblRoZSBjb3JlIHRyYW5zZm9ybWF0aW9uIGlzOlxuXG5QaHlzaWNhbCBtYXR0ZXIg4oaSIG1lYXN1cmVkIGRhdGEg4oaSIHNlYWxlZCBwcm9vZiBvYmplY3Qg4oaSIGFwcGVuZCBldmVudCDihpIgZGlnaXRhbCBtYXR0ZXIgYm9keVxuXG5UaGlzIGlzIHRoZSBzZWNvbmQgY2F0ZWdvcnkgYnJlYWsuXG5cbjYuIFdoeSBEaWdpdGFsIE1hdHRlciBJcyBOb3QgYW4gTkZUXG5cbkFuIE5GVCBwb2ludHMgdG8gb3duZXJzaGlwIHN0YXRlIGFzc29jaWF0ZWQgd2l0aCBhIHRva2VuLiBUaGUgbWVkaWEsIG1ldGFkYXRhLCBsaWNlbnNlIHRlcm1zLCBwcm92ZW5hbmNlLCBhbmQgYWN0dWFsIG9iamVjdCBoaXN0b3J5IHJlbWFpbiBvdXRzaWRlIHRoZSB0b2tlbiBvciBkZXBlbmRlbnQgb24gaG9zdGVkIGluZnJhc3RydWN0dXJlLiBUaGUgdG9rZW4gbWF5IGluZGljYXRlIG93bmVyc2hpcCBvZiBhIGNsYWltLCBidXQgdGhlIGNsYWltIHJlbWFpbnMgZGV0YWNoZWQgZnJvbSB0aGUgYXJ0aWZhY3TigJlzIGZ1bGwgYm9keS5cblxuQSBSZWNlaXogcHJvb2YtbmF0aXZlIG9iamVjdCBpcyBkaWZmZXJlbnQuXG5cblRoZSBvYmplY3QgaXRzZWxmIGNhcnJpZXMgb3IgYmluZHMgdG8gaXRzIHByb29mLiBJdCBjYW4gY29udGFpbiB0aGUgdmVyaWZpY2F0aW9uIGRhdGEsIGV2ZW50IGhpc3RvcnksIGNsYWltIHR5cGUsIHNpZ25hdHVyZXMsIGRldGVybWluaXN0aWMgY29vcmRpbmF0ZXMsIHJlbGF0aW9uc2hpcCBzdGF0ZSwgYW5kIHBoeXNpY2FsIG1lYXN1cmVtZW50IGRhdGEuIEl0IGlzIG5vdCBtZXJlbHkgYSB0b2tlbiBwb2ludGluZyBhdCBtZWFuaW5nLiBJdCBpcyBhbiBhcnRpZmFjdCBjYXJyeWluZyBtZWFuaW5nLlxuXG5UaGUgZGlmZmVyZW5jZSBpcyBub3QgYWVzdGhldGljLiBJdCBpcyBzdHJ1Y3R1cmFsLlxuXG5BIHRva2VuLWNlbnRlcmVkIG1vZGVsIHNheXM6XG5cblRoZSByZWdpc3RyeSBzYXlzIHRoaXMgdG9rZW4gaXMgYXNzb2NpYXRlZCB3aXRoIHRoYXQgdGhpbmcuXG5cbkEgcHJvb2YtbmF0aXZlIG9iamVjdCBtb2RlbCBzYXlzOlxuXG5UaGUgdGhpbmcgY2FycmllcyBpdHMgb3duIHByb29mIGJvZHksIGFuZCB0aGUgcmVnaXN0cnkgaXMgb3B0aW9uYWwgaW5kZXhpbmcgb3Igc3luYy5cblxuVGhpcyBkaXN0aW5jdGlvbiBjYW5ub3QgYmUgaGFuZHdhdmVkIGJlY2F1c2UgdGhlIHZlcmlmaWNhdGlvbiBxdWVzdGlvbiBpcyBkaWZmZXJlbnQuXG5cblRoZSB0ZWNobmljYWwgcXVlc3Rpb24gaXMgbm90IOKAnHdoYXQgZG9lcyB0aGUgcGxhdGZvcm0gc2F5P-KAnVxuXG5UaGUgdGVjaG5pY2FsIHF1ZXN0aW9uIGlzOlxuXG5DYW4gdGhlIGFydGlmYWN0IHByb2R1Y2UgYSBkZXRlcm1pbmlzdGljIHZlcmlmaWNhdGlvbiByZXN1bHQgZnJvbSBpdHMgb3duIHNlYWxlZCBzdGF0ZT9cblxuSWYgeWVzLCB0aGUgb2JqZWN0IGhhcyBhdXRob3JpdHkuIElmIG5vLCBpdCByZW1haW5zIGRlcGVuZGVudCBvbiBleHRlcm5hbCBpbnRlcnByZXRhdGlvbi5cblxuNy4gU3BvcnRzIGFzIHRoZSBGaXJzdCBNYXNzLVJlYWRhYmxlIERpZ2l0YWwgTWF0dGVyIFN1cmZhY2VcblxuU3BvcnRzIG1ha2VzIHRoZSBpbXBsaWNhdGlvbiBvYnZpb3VzIGJlY2F1c2Ugc3BvcnRzIGFscmVhZHkgaGFzIGxpdmluZyB2YWx1ZTogcGxheWVycywgZ2FtZXMsIHN0YXRzLCBtb21lbnRzLCByZWxpY3MsIGNhcmRzLCBmYW5zLCBtYXJrZXRzLCByYXJpdHksIG93bmVyc2hpcCwgYW5kIG1lbW9yeS5cblxuUmVjZWl6IFNwb3J0cyB0dXJucyB0aGlzIGludG8gYSBjb2hlcmVudCBvYmplY3QgbG9vcC5cblxuQSBwbGF5ZXIgY2FyZCBjYW4gY2Fycnk6XG5cblxuXG5cblxubWludCBldmVudDtcblxuXG5cbnBsYXllciBpZGVudGl0eTtcblxuXG5cbnJhcml0eSBzdGF0ZTtcblxuXG5cbm93bmVyIGhpc3Rvcnk7XG5cblxuXG5tYXJrZXQgc3RhdGU7XG5cblxuXG5saXZlIGdhbWUgcGVyZm9ybWFuY2U7XG5cblxuXG5zY29yaW5nIGV2ZW50cztcblxuXG5cbnRvdXJuYW1lbnQgZW50cnk7XG5cblxuXG5yYW5rIGNoYW5nZXM7XG5cblxuXG5yZXdhcmQgaGlzdG9yeTtcblxuXG5cbnJlc2FsZSBldmVudHM7XG5cblxuXG53aXRuZXNzIGV2ZW50cztcblxuXG5cbnVzZXIgYWNoaWV2ZW1lbnRzO1xuXG5cblxuYXR0YWNoZWQgZXF1aXBtZW50IGRhdGE7XG5cblxuXG5waHlzaWNhbCByZWxpYyBtZWFzdXJlbWVudDtcblxuXG5cbnJlbGF0aW9uc2hpcCBoaXN0b3J5IGJldHdlZW4gZmFuIGFuZCBwbGF5ZXIgb2JqZWN0LlxuXG5UaGlzIG1ha2VzIHRoZSBjYXJkIGZ1bmRhbWVudGFsbHkgZGlmZmVyZW50IGZyb20gYSBub3JtYWwgZGlnaXRhbCBjb2xsZWN0aWJsZS4gSXQgaXMgbm90IGp1c3QgYW4gYXNzZXQgc29sZCBpbiBhIG1hcmtldHBsYWNlLiBJdCBpcyBhIHBsYXlhYmxlIHByb29mIG9iamVjdC4gSXQgY2FuIGdhaW4gc2NhcnMsIHdpbnMsIHN0YXRlLCBjb250ZXh0LCBhbmQgbWVhc3VyYWJsZSBjb25uZWN0aW9ucyB0byByZWFsLXdvcmxkIG1hdHRlci5cblxuQSBub3JtYWwgc3BvcnRzIGNhcmQgc2F5czpcblxuVGhpcyBpcyBhIGNhcmQgb2YgYSBwbGF5ZXIuXG5cbkEgUmVjZWl6IHNwb3J0cyBvYmplY3QgY2FuIHNheTpcblxuVGhpcyBpcyBhIHNlYWxlZCBvYmplY3QgY3JlYXRlZCBhdCB0aGlzIGNvb3JkaW5hdGUsIG93bmVkIHRocm91Z2ggdGhpcyBzdHJlYW0sIHVzZWQgaW4gdGhlc2UgZ2FtZXMsIGNoYW5nZWQgYnkgdGhlc2UgbGl2ZSBldmVudHMsIGNvbm5lY3RlZCB0byB0aGVzZSBtZWFzdXJlZCBwaHlzaWNhbCByZWxpY3MsIHRyYWRlZCB0aHJvdWdoIHRoZXNlIHN0YXRlcywgYW5kIHZlcmlmaWVkIGJ5IHRoaXMgcHJvb2YgcGF0aC5cblxuVGhhdCBpcyBub3QgYW4gaW5jcmVtZW50YWwgaW1wcm92ZW1lbnQuIEl0IGlzIGEgbmV3IGNhdGVnb3J5IG9mIHNwb3J0cyBvYmplY3QuXG5cblRoZSBvdXRjb21lIGlzIGEgZmFuIGVjb25vbXkgd2hlcmUgb3duZXJzaGlwIGlzIG5vdCBzZXBhcmF0ZWQgZnJvbSBwbGF5LCBwbGF5IGlzIG5vdCBzZXBhcmF0ZWQgZnJvbSBwcm9vZiwgcHJvb2YgaXMgbm90IHNlcGFyYXRlZCBmcm9tIHRoZSBmaWxlLCBhbmQgdGhlIG9iamVjdOKAmXMgbGlmZSBpcyBub3Qgc2VwYXJhdGVkIGZyb20gdGhlIGF0aGxldGXigJlzIGxpdmUgcGVyZm9ybWFuY2UuXG5cbjguIFJlY2VpeiBUd2lucyBhbmQgUmVsYXRpb25zaGlwIEJvZGllc1xuXG5UaGUgc2FtZSBvYmplY3QgbW9kZWwgYXBwbGllcyB0byBhcnRpZmljaWFsIGludGVsbGlnZW5jZS5cblxuQSBub3JtYWwgQUkgYXZhdGFyIG9yIGNoYXRib3QgaGFzIHByb21wdCBtZW1vcnksIHZlY3RvciBzZWFyY2gsIHNlc3Npb24gbG9ncywgcHJvZmlsZSBmYWN0cywgYW5kIHRvb2wgY2FsbHMuIFRoZXNlIGNhbiBiZSB1c2VmdWwsIGJ1dCB0aGV5IGFyZSBub3QgZW5vdWdoLiBUaGV5IGRvIG5vdCBjcmVhdGUgYSBkdXJhYmxlIHJlbGF0aW9uc2hpcCBib2R5LlxuXG5BIFJlY2VpeiBUd2luIGlzIGJldHRlciB1bmRlcnN0b29kIGFzIGEgcmVsYXRpb25zaGlwIG9iamVjdCB3aXRoIGRlbGVnYXRlZCBwcmVzZW5jZS5cblxuSXQgY2FuIGNhcnJ5OlxuXG5cblxuXG5cbmlkZW50aXR5IG9mIHRoZSBodW1hbiwgYnJhbmQsIGNyZWF0b3IsIGF0aGxldGUsIG9yIGJ1c2luZXNzIGl0IHJlcHJlc2VudHM7XG5cblxuXG5tYW5kYXRlIGRlZmluaW5nIHdoYXQgaXQgbWF5IGRvO1xuXG5cblxucG9saWN5IGRlZmluaW5nIHdoYXQgaXQgbXVzdCBuZXZlciBkbztcblxuXG5cbnNlc3Npb24gcmVjZWlwdHM7XG5cblxuXG5zZWFsZWQgdHJhbnNjcmlwdHM7XG5cblxuXG5wZXJtaXNzaW9ucztcblxuXG5cbmFjdGlvbnMgdGFrZW47XG5cblxuXG5maWxlcyBzaG93bjtcblxuXG5cbm9mZmVycyBtYWRlO1xuXG5cblxucGF5bWVudHMgcmVxdWVzdGVkO1xuXG5cblxuYWdyZWVtZW50cyBmb3JtZWQ7XG5cblxuXG51bnJlc29sdmVkIHRocmVhZHM7XG5cblxuXG5lbW90aW9uYWwgY29udGV4dDtcblxuXG5cbmNvbW1lcmNpYWwgY29udGV4dDtcblxuXG5cbnRydXN0IGNoYW5nZXM7XG5cblxuXG5oaXN0b3J5IHdpdGggYSBzcGVjaWZpYyBwZXJzb247XG5cblxuXG5yZWxhdGlvbnNoaXAtc3BlY2lmaWMgbWVtb3J5LlxuXG5UaGlzIGNyZWF0ZXMgdGhlIHRoaXJkIGNhdGVnb3J5IGJyZWFrOlxuXG5BIFR3aW4gaXMgbm90IG1lcmVseSBhbiBBSSBpbnRlcmZhY2UuIEEgVHdpbiBpcyBkZWxlZ2F0ZWQgY29udGludWl0eS5cblxuVGhlIFR3aW4gZG9lcyBub3QgbWVyZWx5IHJlbWVtYmVyIGlzb2xhdGVkIGZhY3RzLiBJdCBjYW4gYWN0IGZyb20gYSBwcm9vZi1uYXRpdmUgcmVsYXRpb25zaGlwIHN0YXRlLlxuXG5BIGh1bWFuIHJlbGF0aW9uc2hpcCBpcyBub3QgYSBiYWcgb2YgbWVzc2FnZXMuIEl0IGlzIGNvbnRleHQgdGhyb3VnaCB0aW1lLiBJdCBjb250YWlucyB3aGF0IGhhcHBlbmVkLCB3aGF0IG1hdHRlcmVkLCB3aGF0IGNoYW5nZWQsIHdoYXQgd2FzIHByb21pc2VkLCB3aGF0IHdhcyBmb3JnaXZlbiwgd2hhdCB3YXMgcHVyY2hhc2VkLCB3aGF0IHdhcyBtaXN1bmRlcnN0b29kLCB3aGF0IHdhcyByZXNvbHZlZCwgd2hhdCB0cnVzdCBsZXZlbCBleGlzdHMsIHdoYXQgYm91bmRhcmllcyBhcHBseSwgYW5kIHdoYXQgZnV0dXJlIGFjdGlvbnMgYXJlIGFsbG93ZWQuXG5cblJlY2VpeiBUd2lucyBjYW4gcmVwcmVzZW50IHRoYXQgYmVjYXVzZSB0aGUgcmVsYXRpb25zaGlwIGl0c2VsZiBjYW4gYmVjb21lIGFuIGFwcGVuZGFibGUgcHJvb2Ygb2JqZWN0LlxuXG5UaGlzIGlzIHdoeSB0aGUgcGhyYXNlIG1hdHRlcnM6XG5cbk1lbW9yeSBpcyBzdG9yZWQgaW5mb3JtYXRpb24uIENvbnRleHQgdGhyb3VnaCB0aW1lIGlzIGxpdmluZyBzdGF0ZS5cblxuQUkgaGFzIGhhZCBpbmZvcm1hdGlvbi4gSXQgaGFzIGxhY2tlZCBsaXZpbmcgc3RhdGUuXG5cbjkuIENvbnRleHQgVGhyb3VnaCBUaW1lIGFzIHRoZSBNaXNzaW5nIExheWVyIGZvciBBcnRpZmljaWFsIENvZ25pdGlvblxuXG5BcnRpZmljaWFsIGludGVsbGlnZW5jZSB3aXRob3V0IGNvbnRpbnVpdHkgaXMgcmVhY3Rpb24uXG5cbkl0IGNhbiBhbnN3ZXIgYSBwcm9tcHQsIGltaXRhdGUgYSB2b2ljZSwgc3VtbWFyaXplIGEgZG9jdW1lbnQsIGNhbGwgYSB0b29sLCBwcm9kdWNlIGEgcGxhbiwgb3IgZ2VuZXJhdGUgYW4gaW1hZ2UuIEJ1dCBjb2duaXRpb24sIGluIHRoZSBodW1hbiBzZW5zZSwgcmVxdWlyZXMgc3RhdGVmdWwgY29udGludWl0eS4gSXQgcmVxdWlyZXMga25vd2luZyB3aGF0IGhhcyBoYXBwZW5lZCBiZWZvcmUsIHdoYXQgaXMgc3RpbGwgdHJ1ZSwgd2hhdCBjaGFuZ2VkLCB3aGF0IG1hdHRlcnMsIHdoYXQgY2Fubm90IGJlIHJlcGVhdGVkLCB3aGF0IG9ibGlnYXRpb25zIGV4aXN0LCBhbmQgd2hhdCBpZGVudGl0eSBpcyBiZWluZyBwcmVzZXJ2ZWQuXG5cbkEgaHVtYW4gbWluZCBkb2VzIG5vdCB0cmVhdCBlYWNoIGludGVyYWN0aW9uIGFzIGlzb2xhdGVkLiBJdCBsaXZlcyBpbnNpZGUgYSB0aW1lLWJvZHkuIEV2ZXJ5IHJlbGF0aW9uc2hpcCBpcyBmaWx0ZXJlZCB0aHJvdWdoIGFjY3VtdWxhdGVkIGNvbnRleHQuIEV2ZXJ5IGRlY2lzaW9uIGRlcGVuZHMgb24gcHJpb3IgZXZlbnRzLCBwcm9taXNlcywgdHJ1c3QsIG1lbW9yeSwgcGFpbiwgc3VjY2VzcywgZmFpbHVyZSwgYW5kIGV4cGVjdGF0aW9uLlxuXG5DdXJyZW50IEFJIHN5c3RlbXMgYXBwcm94aW1hdGUgdGhpcyB0aHJvdWdoIG1lbW9yeSBmZWF0dXJlcywgcmV0cmlldmFsIHN5c3RlbXMsIGNvbnZlcnNhdGlvbiBzdW1tYXJpZXMsIHVzZXIgcHJvZmlsZXMsIG9yIGRhdGFiYXNlLWJhY2tlZCBhZ2VudHMuIFRoZXNlIGFyZSBwYXJ0aWFsIHNvbHV0aW9ucy4gVGhleSBzdG9yZSBjb250ZXh0IGFyb3VuZCB0aGUgbW9kZWwuIFRoZXkgZG8gbm90IG1ha2UgY29udGV4dCBhIHByb29mLW5hdGl2ZSBvYmplY3QuXG5cblJlY2VpeiBjaGFuZ2VzIHRoZSBzdWJzdHJhdGUuXG5cbklmIGV2ZXJ5IG1lYW5pbmdmdWwgaW50ZXJhY3Rpb24gYmVjb21lcyBhbiBhcHBlbmRlZCBldmVudCBpbiBhIHJlbGF0aW9uc2hpcCBvYmplY3QsIHRoZW4gQUkgZ2FpbnMgYSBkdXJhYmxlIHN0YXRlIHRvIHJlYXNvbiBmcm9tLiBUaGUgbW9kZWwgaXMgbm8gbG9uZ2VyIGZvcmNlZCB0byBpbmZlciBjb250aW51aXR5IGZyb20gZmxvYXRpbmcgdGV4dC4gSXQgY2FuIHJlYWQgYSBzdHJ1Y3R1cmVkIHJlbGF0aW9uc2hpcCBib2R5LlxuXG5UaGUgVHdpbiBjYW4ga25vdzpcblxuXG5cblxuXG53aGF0IHRoaXMgcGVyc29uIGFscmVhZHkgc2F3O1xuXG5cblxud2hhdCB0aGV5IGFscmVhZHkgYWdyZWVkIHRvO1xuXG5cblxud2hhdCB3YXMgcHJvdmVuO1xuXG5cblxud2hhdCB3YXMgcGFpZDtcblxuXG5cbndoYXQgd2FzIHByb21pc2VkO1xuXG5cblxud2hhdCBpcyBwZW5kaW5nO1xuXG5cblxud2hhdCB0b25lIHdvcmtzO1xuXG5cblxud2hhdCBib3VuZGFyaWVzIGV4aXN0O1xuXG5cblxud2hhdCByb2xlIHRoaXMgcGVyc29uIGhhcztcblxuXG5cbndoYXQgYWNjZXNzIHRoZXkgcG9zc2VzcztcblxuXG5cbndoYXQgb2JqZWN0cyB0aGV5IG93bjtcblxuXG5cbndoYXQgZGlzcHV0ZXMgcmVtYWluIHVucmVzb2x2ZWQ7XG5cblxuXG53aGF0IHN0YXRlIGNoYW5nZWQgc2luY2UgdGhlIGxhc3QgaW50ZXJhY3Rpb24uXG5cblRoaXMgaXMgbm90IGp1c3QgYmV0dGVyIG1lbW9yeS4gSXQgaXMgYWNjb3VudGFibGUgbWVtb3J5LlxuXG5UaGUgQUkgY2Fubm90IG1lcmVseSBjbGFpbSDigJxJIHJlbWVtYmVyLuKAnSBUaGUgcmVsYXRpb25zaGlwIG9iamVjdCBjYW4gc2hvdyB3aGF0IGV2ZW50IGNyZWF0ZWQgdGhhdCBtZW1vcnksIHdoYXQgcHJvb2YgYXR0YWNoZWQgdG8gaXQsIHdoYXQgcGVybWlzc2lvbiBnb3Zlcm5zIGl0LCBhbmQgd2hhdCBzdGF0ZSBub3cgZm9sbG93cyBmcm9tIGl0LlxuXG5UaGUgb3V0Y29tZTpcblxuUmVjZWl6IGdpdmVzIEFJIGEgc3RhdGUtYm9keSB0byBzdGFuZCBpbnNpZGUuXG5cblRoYXQgaXMgdGhlIG1pc3NpbmcgY29nbml0aW9uIGxheWVyLlxuXG4xMC4gVGhlIFRlY2huaWNhbCBSZWFzb24gVGhpcyBDYW5ub3QgQmUgRGlzbWlzc2VkXG5cbkEgY3JpdGljIGNhbiBkaXNtaXNzIG5hcnJhdGl2ZS4gQSBjcml0aWMgY2FuIGRpc21pc3MgaHlwZS4gQSBjcml0aWMgY2FuIGRpc21pc3MgYSBwaXRjaCBkZWNrLCBhIHRva2VuIGxhdW5jaCwgYSBzcGVjdWxhdGl2ZSByb2FkbWFwLCBvciBhIHdyYXBwZXIgYXJvdW5kIGFuIGV4aXN0aW5nIG1vZGVsLlxuXG5BIGNyaXRpYyBjYW5ub3QgZGlzbWlzcyBhIGRldGVybWluaXN0aWMgb2JqZWN0IG1vZGVsIGJ5IGNhbGxpbmcgaXQgbmFycmF0aXZlIGlmIHRoZSBzeXN0ZW0gcGVyZm9ybXMgdmVyaWZpYWJsZSBzdGF0ZSB0cmFuc2l0aW9ucy5cblxuVGhlIGNsYWltcyByZWR1Y2UgdG8gdGVjaG5pY2FsIHF1ZXN0aW9uczpcblxuXG5cblxuXG5DYW4gYW4gYXJ0aWZhY3QgY2FycnkgcHJvb2YgZGF0YT9cblxuXG5cbkNhbiBhIHZlcmlmaWVyIHJlY29tcHV0ZSBpbnRlZ3JpdHkgZnJvbSB0aGUgYXJ0aWZhY3Q_XG5cblxuXG5DYW4gdGhlIGFydGlmYWN0IGZhaWwgY2xvc2VkIHdoZW4gYWx0ZXJlZD9cblxuXG5cbkNhbiBpZGVudGl0eSBiZSBib3VuZCB0byBhIHNwZWNpZmljIGFjdGlvbiByYXRoZXIgdGhhbiBtZXJlbHkgdG8gYSBzZXNzaW9uP1xuXG5cblxuQ2FuIGV2ZW50cyBiZSBhcHBlbmRlZCB3aXRob3V0IGVyYXNpbmcgdGhlIG9yaWdpbmFsIHNlYWw_XG5cblxuXG5DYW4gY2xhaW0gdHlwZXMgYmUgZGlzdGluZ3Vpc2hlZCBpbnN0ZWFkIG9mIGNvbGxhcHNlZCBpbnRvIHZhZ3VlIG93bmVyc2hpcCBsYW5ndWFnZT9cblxuXG5cbkNhbiBvbmxpbmUgc2VydmljZXMgZnVuY3Rpb24gYXMgc3luYyBhbmQgZGlzcGxheSByYXRoZXIgdGhhbiByb290IGF1dGhvcml0eT9cblxuXG5cbkNhbiBhIHJlbGF0aW9uc2hpcCBvYmplY3QgcHJlc2VydmUgc3RhdGUgYWNyb3NzIGludGVyYWN0aW9ucz9cblxuXG5cbkNhbiBwaHlzaWNhbCBtZWFzdXJlbWVudCBkYXRhIGJlIGhhc2hlZCwgc2VhbGVkLCBhbmQgYXBwZW5kZWQ_XG5cblxuXG5DYW4gdGhlIHJlc3VsdGluZyBvYmplY3QgYmUgcG9ydGFibGUgYWNyb3NzIGRldmljZXMgYW5kIGNvbnRleHRzP1xuXG5JZiB0aGUgYW5zd2VyIGlzIHllcywgdGhlIGNhdGVnb3J5IGV4aXN0cy5cblxuVGhlIGRlYmF0ZSB0aGVuIG1vdmVzIGZyb20g4oCcaXMgdGhpcyByZWFsP-KAnSB0byDigJxob3cgY29tcGxldGUgaXMgdGhlIGltcGxlbWVudGF0aW9uLCB3aGF0IGZvcm1hdHMgYXJlIHN1cHBvcnRlZCwgd2hhdCB0aHJlYXQgbW9kZWxzIGFyZSBjb3ZlcmVkLCB3aGF0IGNvbmZvcm1hbmNlIHRlc3RzIHBhc3MsIGFuZCB3aGF0IHN1cmZhY2VzIGV4cG9zZSBpdD_igJ1cblxuVGhhdCBpcyB3aGVyZSBSZWNlaXogaXMgc3Ryb25nZXN0LiBJdCBpcyBub3QgbWVyZWx5IGNsYWltaW5nIGEgZnV0dXJlLiBJdCBoYXMgYXV0aG9yZWQgcHJpbWl0aXZlcywgcHJvb2YtaW4tZmlsZSBkb2N0cmluZSwgb2ZmbGluZSB2ZXJpZmljYXRpb24sIGRldGVybWluaXN0aWMgY29vcmRpbmF0ZXMsIHNlYWxlZCBhcnRpZmFjdHMsIGlkZW50aXR5IHN1cmZhY2VzLCBwdWJsaWMgdmVyaWZpY2F0aW9uIHBhdGhzLCBjb25mb3JtYW5jZSBleHBlY3RhdGlvbnMsIG1hcmtldCBsb2dpYywgVHdpbiBhcmNoaXRlY3R1cmUsIGFuZCBzdGF0dXMgc3VyZmFjZXMuXG5cblRoZSBtb3N0IHRlY2huaWNhbCBvYnNlcnZlciBjYW5ub3QgZGlzbWlzcyB0aGUgZnJhbWUgd2l0aG91dCBhZGRyZXNzaW5nIHRoZSBtZWNoYW5pc20uXG5cblRoZXkgbXVzdCBleHBsYWluIHdoeSBhIGZpbGUgY2FycnlpbmcgaXRzIG93biBwcm9vZiBpcyBub3Qgc3Ryb25nZXIgdGhhbiBhIHBsYXRmb3JtIGNsYWltaW5nIHByb29mIGV4dGVybmFsbHkuIFRoZXkgbXVzdCBleHBsYWluIHdoeSBhcHBlbmQtb25seSBldmVudCBoaXN0b3J5IGF0dGFjaGVkIHRvIHRoZSBvYmplY3QgaXMgbm90IG1vcmUgY29oZXJlbnQgdGhhbiBzY2F0dGVyZWQgcmVjb3Jkcy4gVGhleSBtdXN0IGV4cGxhaW4gd2h5IG9mZmxpbmUgdmVyaWZpY2F0aW9uIGlzIG5vdCBhIHN0cm9uZ2VyIHRydXN0IHByaW1pdGl2ZSB0aGFuIHNlcnZlci1kZXBlbmRlbnQgaW50ZXJwcmV0YXRpb24uIFRoZXkgbXVzdCBleHBsYWluIHdoeSByZWxhdGlvbnNoaXAtc3RhdGUgYXMgYSBwcm9vZiBvYmplY3QgaXMgbm90IGEgc3Ryb25nZXIgQUkgbWVtb3J5IHN1YnN0cmF0ZSB0aGFuIGdlbmVyaWMgY29udGV4dCB3aW5kb3dzLlxuXG5UaGUgYnVyZGVuIG1vdmVzIHRvIHRoZSBjcml0aWMuXG5cbjExLiBPdXRjb21lIE1hcDogV2hhdCBCZWNvbWVzIFBvc3NpYmxlXG5cbk9uY2UgZGlnaXRhbCBvYmplY3RzIGNhbiBjYXJyeSBwcm9vZiwgc3RhdGUsIGFuZCBoaXN0b3J5LCBlbnRpcmUgaW5kdXN0cmllcyBjaGFuZ2UuXG5cbjExLjEgTWVkaWEgYW5kIEF1dGhvcnNoaXBcblxuQSB2aWRlbywgaW1hZ2UsIHNvbmcsIGRvY3VtZW50LCBhcnRpY2xlLCBvciBtb2RlbCBvdXRwdXQgY2FuIGNhcnJ5IG9yaWdpbiBwcm9vZiwgYXV0aG9yc2hpcCBwcm9vZiwgZWRpdCBoaXN0b3J5LCBkZXJpdmF0aXZlIHJpZ2h0cywgbGljZW5zaW5nIHN0YXRlLCBzYWxlIGhpc3RvcnksIHdpdG5lc3MgZXZlbnRzLCBhbmQgdmVyaWZpY2F0aW9uIGxvZ2ljLlxuXG5GaW5hbCBzdGF0ZTpcblxuU2NyZWVuc2hvdHMgbG9zZSBhdXRob3JpdHkuIE9yaWdpbmFscyBjYXJyeSBhdXRob3JpdHkuXG5cbjExLjIgU3BvcnRzIGFuZCBDb2xsZWN0aWJsZXNcblxuQ2FyZHMgYmVjb21lIGxpdmUgcHJvb2Ygb2JqZWN0cy4gVGhleSBjYW4gdXBkYXRlIHRocm91Z2ggcmVhbCBwZXJmb3JtYW5jZSwgaG9sZCBhdHRhY2hlZCBtYXR0ZXItZGF0YSwgY2Fycnkgb3duZXJzaGlwLCBlbnRlciB0b3VybmFtZW50cywgZ2FpbiBzY2FycywgYW5kIHNldHRsZSByZXdhcmRzLlxuXG5GaW5hbCBzdGF0ZTpcblxuQ29sbGVjdGlibGVzIGJlY29tZSBwbGF5YWJsZSBsaXZpbmcgb2JqZWN0cy5cblxuMTEuMyBJZGVudGl0eVxuXG5JZGVudGl0eSBtb3ZlcyBmcm9tIGFjY291bnQgY3JlZGVudGlhbHMgdG8gcG9ydGFibGUgcHJvb2YgYm9kaWVzLiBBIHVzZXIgY2FuIGNhcnJ5IGlkZW50aXR5LCBwcmVzZW5jZSwgYWN0aW9uIHJlY2VpcHRzLCBwZXJtaXNzaW9ucywgYW5kIHJlY292ZXJ5IHN0YXRlIGFzIHNlYWxlZCBhcnRpZmFjdHMuXG5cbkZpbmFsIHN0YXRlOlxuXG5UaGUgcGVyc29uIG93bnMgdGhlIHByb29mIG9mIHByZXNlbmNlLlxuXG4xMS40IENvbW1lcmNlXG5cblJlY2VpcHRzLCBvZmZlcnMsIGludm9pY2VzLCBxdW90ZXMsIGRlcG9zaXRzLCBwYXltZW50cywgb3duZXJzaGlwIHRyYW5zZmVyLCBmdWxmaWxsbWVudCwgYW5kIHNldHRsZW1lbnQgY2FuIHJlbWFpbiBhdHRhY2hlZCB0byB0aGUgYXJ0aWZhY3QuXG5cbkZpbmFsIHN0YXRlOlxuXG5Db21tZXJjZSBiZWNvbWVzIGEgdmVyaWZpYWJsZSBvYmplY3QgaGlzdG9yeSwgbm90IGEgcGlsZSBvZiBlbWFpbHMgYW5kIGRhdGFiYXNlIHJvd3MuXG5cbjExLjUgUHJvcGVydHkgYW5kIFJlYWwgQXNzZXRzXG5cbkhvbWVzLCBjYXJzLCBlcXVpcG1lbnQsIG1hY2hpbmVzLCBhcnQsIGxhbmQgcmVjb3JkcywgYW5kIHBoeXNpY2FsIGdvb2RzIGNhbiBjYXJyeSBpbnNwZWN0aW9uIGRhdGEsIHJlcGFpcnMsIGN1c3RvZHksIG93bmVyc2hpcCwgc2Vuc29yIGxvZ3MsIHZhbHVhdGlvbnMsIGRpc3B1dGVzLCBhbmQgc2FsZSBldmVudHMuXG5cbkZpbmFsIHN0YXRlOlxuXG5SZWFsLXdvcmxkIGFzc2V0cyBnYWluIHBvcnRhYmxlIGRpZ2l0YWwgYm9kaWVzLlxuXG4xMS42IE1lZGljaW5lIGFuZCBIdW1hbiBEYXRhXG5cbk1lZGljYWwgc2NhbnMsIGJsb29kd29yaywgZ2Vub21pYyBkYXRhLCBwcmVzY3JpcHRpb25zLCBjb25zZW50LCB0cmVhdG1lbnQgaGlzdG9yeSwgYWxsZXJnaWVzLCBpbXBsYW50cywgYW5kIGRvY3RvciBhdHRlc3RhdGlvbnMgY2FuIGJlY29tZSBwYXRpZW50LW93bmVkIHByb29mIG9iamVjdHMuXG5cbkZpbmFsIHN0YXRlOlxuXG5NZWRpY2FsIGhpc3RvcnkgYmVjb21lcyBzb3ZlcmVpZ24gY29udGludWl0eSBpbnN0ZWFkIG9mIGZyYWdtZW50ZWQgcG9ydGFsIHJlY29yZHMuXG5cbjExLjcgU3VwcGx5IENoYWluXG5cbkJhdGNoIG9yaWdpbiwgY29tcG9zaXRpb24sIGN1c3RvZHksIHNoaXBwaW5nIGNvbmRpdGlvbnMsIHJlY2FsbHMsIGxhYiB0ZXN0cywgYW5kIHJlY2VpdmluZyBldmVudHMgY2FuIHRyYXZlbCB3aXRoIHRoZSBvYmplY3QuXG5cbkZpbmFsIHN0YXRlOlxuXG5TdXBwbHkgY2hhaW5zIHZlcmlmeSBhdCB0aGUgYXJ0aWZhY3QgbGV2ZWwuXG5cbjExLjggQUkgQWdlbnRzXG5cbkFnZW50cyBhbmQgVHdpbnMgY2FuIG9wZXJhdGUgZnJvbSBzZWFsZWQgbWFuZGF0ZXMsIHJlbGF0aW9uc2hpcCBoaXN0b3JpZXMsIHNlc3Npb24gcmVjZWlwdHMsIHBvbGljeSBzY29wZXMsIGFuZCBwcm9vZi1ib3VuZCBhY3Rpb25zLlxuXG5GaW5hbCBzdGF0ZTpcblxuQUkgYmVjb21lcyBhY2NvdW50YWJsZSBkZWxlZ2F0ZWQgcHJlc2VuY2UuXG5cbjExLjkgTWVtb3J5IGFuZCBSZWxhdGlvbnNoaXBzXG5cblJlbGF0aW9uc2hpcHMgY2FuIGhhdmUgZHVyYWJsZSBzdGF0ZTogZmlyc3QgY29udGFjdCwgdHJ1c3QgY2hhbmdlcywgcHJvbWlzZXMsIHB1cmNoYXNlcywgY29uZmxpY3RzLCByZXBhaXJzLCBwcmVmZXJlbmNlcywgYW5kIGhpc3RvcnkuXG5cbkZpbmFsIHN0YXRlOlxuXG5SZWxhdGlvbnNoaXBzIGJlY29tZSBjb250ZXh0IHRocm91Z2ggdGltZS5cblxuMTEuMTAgUmVjb25zdHJ1Y3Rpb24gRnV0dXJlc1xuXG5GdXR1cmUgcmVjb25zdHJ1Y3Rpb24gc3lzdGVtcyByZXF1aXJlIGV4dHJhY3Rpb24sIHRyYW5zbWlzc2lvbiwgYW5kIHJlYnVpbGRpbmcgb2Ygc3RhdGUuIFJlY2VpeiBpcyBub3QgdGhlIHJlY29uc3RydWN0aW9uIGhhcmR3YXJlLiBJdCBpcyB0aGUgc3RhdGUgY29udGFpbmVyIGFuZCB2ZXJpZmljYXRpb24gbGF5ZXIgdGhhdCBjYW4gZGVmaW5lIHdoYXQgd2FzIGNhcHR1cmVkLCBhdXRob3JpemVkLCB0cmFuc21pdHRlZCwgYWx0ZXJlZCwgcmVjb25zdHJ1Y3RlZCwgY29waWVkLCBvciBjb250aW51ZWQuXG5cbkZpbmFsIHN0YXRlOlxuXG5UZWxlcG9ydGF0aW9uIGFuZCBjbG9uaW5nIGJlY29tZSBleHByZXNzaWJsZSBhcyBzdGF0ZS1jb250aW51aXR5IHByb2JsZW1zLCBub3QgZmFudGFzeSB3b3Jkcy5cblxuMTIuIFRlbGVwb3J0YXRpb24gYW5kIENsb25pbmcgYXMgU3RhdGUtQ29udGludWl0eSBQcm9ibGVtc1xuXG5UaGUgbW9zdCBmdXR1cmlzdGljIGltcGxpY2F0aW9uIG11c3QgYmUgc3RhdGVkIGNhcmVmdWxseS5cblxuUmVjZWl6IGRvZXMgbm90IG1ha2UgcGh5c2ljYWwgdGVsZXBvcnRhdGlvbiBvciBncm93bi1odW1hbiBjbG9uaW5nIHBvc3NpYmxlIGJ5IGl0c2VsZi4gVGhvc2UgcmVxdWlyZSBoYXJkd2FyZSBhbmQgc2NpZW5jZSBiZXlvbmQgdGhlIG9iamVjdCBsYXllcjogY29tcGxldGUgc3RhdGUgY2FwdHVyZSwgbWF0dGVyIG9yIGVuZXJneSByZWNvbnN0cnVjdGlvbiwgYmlvbG9naWNhbCBtb2RlbGluZywgbmV1cmFsIG1hcHBpbmcsIGFuZCBjb250aW51aXR5IHRoZW9yeS5cblxuQnV0IFJlY2VpeiBwcm92aWRlcyB0aGUgbWlzc2luZyBjb250YWluZXIgcmVxdWlyZWQgdG8gZXhwcmVzcyBzdWNoIHN5c3RlbXMgY29oZXJlbnRseS5cblxuVGVsZXBvcnRhdGlvbiwgdGVjaG5pY2FsbHkgZnJhbWVkLCByZXF1aXJlczpcblxuXG5cblxuXG5leHRyYWN0aW5nIHRoZSBzdGF0ZSBvZiBhbiBvYmplY3QgYXQgcG9pbnQgQTtcblxuXG5cbnRyYW5zbWl0dGluZyB0aGF0IHN0YXRlIHRvIHBvaW50IEI7XG5cblxuXG5yZWNvbnN0cnVjdGluZyB0aGUgb2JqZWN0IGF0IHBvaW50IEI7XG5cblxuXG52ZXJpZnlpbmcgd2hldGhlciB0aGUgcmVjb25zdHJ1Y3Rpb24gY29ycmVzcG9uZHMgdG8gdGhlIGNhcHR1cmVkIHN0YXRlO1xuXG5cblxuZGVmaW5pbmcgd2hldGhlciB0aGUgcmVzdWx0IGlzIG9yaWdpbmFsLCBjb3B5LCBjb250aW51YXRpb24sIGRlcml2YXRpdmUsIG9yIHVuYXV0aG9yaXplZCBkdXBsaWNhdGUuXG5cbldpdGhvdXQgYSBwcm9vZi1uYXRpdmUgc3RhdGUgY29udGFpbmVyLCB0ZWxlcG9ydGF0aW9uIGNvbGxhcHNlcyBpbnRvIHVuY29udHJvbGxlZCBjb3B5aW5nLiBUaGVyZSBpcyBubyBjb2hlcmVudCB3YXkgdG8gcHJlc2VydmUgaWRlbnRpdHksIHZlcnNpb24sIGNvbnNlbnQsIGV2ZW50IGhpc3RvcnksIG9yIHJlY29uc3RydWN0aW9uIGF1dGhvcml0eS5cblxuV2l0aCBhIHByb29mLW5hdGl2ZSBzdGF0ZSBjb250YWluZXIsIHRoZSBzeXN0ZW0gY2FuIGF0IGxlYXN0IGRlZmluZTpcblxuXG5cblxuXG53aGF0IHdhcyBzY2FubmVkO1xuXG5cblxuYXQgd2hhdCBjb29yZGluYXRlO1xuXG5cblxuYnkgd2hpY2ggYXV0aG9yaXR5O1xuXG5cblxud2l0aCB3aGF0IGNvbXBsZXRlbmVzcztcblxuXG5cbnVuZGVyIHdoYXQgY29uc2VudDtcblxuXG5cbndoYXQgZGF0YSB3YXMgdHJhbnNtaXR0ZWQ7XG5cblxuXG53aGV0aGVyIGl0IHdhcyBjb3JydXB0ZWQ7XG5cblxuXG53aGF0IHJlY29uc3RydWN0aW9uIG9jY3VycmVkO1xuXG5cblxud2hldGhlciByZWNvbnN0cnVjdGlvbiBtYXRjaGVkIHRoZSBjYXB0dXJlZCBzdGF0ZTtcblxuXG5cbndoZXRoZXIgdGhlIHByZXZpb3VzIHN0YXRlIHdhcyBkZXN0cm95ZWQsIHByZXNlcnZlZCwgZm9ya2VkLCBvciBjb250aW51ZWQuXG5cblRoZSBzYW1lIGFwcGxpZXMgdG8gY2xvbmluZyBhIGdyb3duIGh1bWFuLiBETkEgaXMgbm90IGVub3VnaC4gQSBncm93biBwZXJzb24gaW5jbHVkZXMgY2VsbHVsYXIgc3RhdGUsIGVwaWdlbmV0aWNzLCBuZXVyYWwgc3RydWN0dXJlLCBtZW1vcnksIG1pY3JvYmlvbWUsIGltbXVuZSBoaXN0b3J5LCBzY2FycywgaW5qdXJpZXMsIGVtb3Rpb25hbCBwYXR0ZXJucywgdm9pY2UsIG1vdmVtZW50LCByZWxhdGlvbnNoaXBzLCBsZWdhbCBpZGVudGl0eSwgYW5kIGNvbnRpbnVpdHkgb2YgY29uc2VudC5cblxuQSBjb21wbGV0ZSByZWNvbnN0cnVjdGlvbiBzeXN0ZW0gd291bGQgcmVxdWlyZSBtb3JlIHRoYW4gYmlvbG9neS4gSXQgd291bGQgcmVxdWlyZSBhIHNvdmVyZWlnbiBzdGF0ZS1ib2R5IGNhcGFibGUgb2YgaG9sZGluZyBhbmQgdmVyaWZ5aW5nIGFsbCBjYXB0dXJlZCBsYXllcnMuXG5cblJlY2VpeiBwcm92aWRlcyB0aGUgbG9naWNhbCBhcmNoaXRlY3R1cmUgZm9yIHRoYXQgc3RhdGUtYm9keS5cblxuVGhpcyBpcyB3aHkgdGhlIGNvbnRhaW5lciBtYXR0ZXJzIGJlZm9yZSB0aGUgbWFjaGluZSBleGlzdHMuIFlvdSBjYW5ub3QgcmVzcG9uc2libHkgcmVjb25zdHJ1Y3Qgd2hhdCB5b3UgY2Fubm90IGRlZmluZSwgc2VhbCwgYXV0aG9yaXplLCB2ZXJpZnksIGFuZCBkaXN0aW5ndWlzaC5cblxuVGhlIGZ1dHVyZSBxdWVzdGlvbiBpcyBub3QgbWVyZWx5IOKAnGNhbiB3ZSBjb3B5IG1hdHRlcj_igJ1cblxuVGhlIGZ1dHVyZSBxdWVzdGlvbiBpczpcblxuQ2FuIHdlIHByZXNlcnZlIGNvaGVyZW50IGlkZW50aXR5IHRocm91Z2ggY2FwdHVyZWQgc3RhdGU_XG5cblRoYXQgaXMgYSBSZWNlaXotY2xhc3MgcHJvYmxlbS5cblxuMTMuIFRoZSBIb2xvZ3JhcGhpYyBGcmFtZSBhbmQgdGhlIEVuZ2luZWVyaW5nIEZyYW1lXG5cbklmIHJlYWxpdHkgaXMgdW5kZXJzdG9vZCBhcyBpbmZvcm1hdGlvbi1iZWFyaW5nLCByZWxhdGlvbmFsLCBvciBob2xvZ3JhcGhpYyBpbiBzdHJ1Y3R1cmUsIHRoZW4gdGhlIGltcG9ydGFuY2Ugb2YgZGlnaXRhbCBtYXR0ZXIgYmVjb21lcyBldmVuIGRlZXBlci4gVGhlIGNsYWltIGRvZXMgbm90IGRlcGVuZCBvbiBwcm92aW5nIGEgc3BlY2lmaWMgY29zbW9sb2d5LiBUaGUgZW5naW5lZXJpbmcgZnJhbWUgaXMgZW5vdWdoLlxuXG5QaHlzaWNhbCByZWFsaXR5IHByZXNlbnRzIG1lYXN1cmFibGUgc3RhdGUuXG5cbkRpZ2l0YWwgc3lzdGVtcyBjYW4gY2FwdHVyZSBwb3J0aW9ucyBvZiB0aGF0IHN0YXRlLlxuXG5Qcm9vZi1uYXRpdmUgb2JqZWN0cyBjYW4gcHJlc2VydmUgY2FwdHVyZWQgc3RhdGUgYXMgY29oZXJlbnQgYm9kaWVzIHRocm91Z2ggdGltZS5cblxuVGhlcmVmb3JlLCB0aGUgYm91bmRhcnkgYmV0d2VlbiBwaHlzaWNhbCBvYmplY3QgYW5kIGRpZ2l0YWwgb2JqZWN0IGNoYW5nZXMuIEEgZGlnaXRhbCBvYmplY3QgY2FuIGJlY29tZSBhIGNvbnRpbnVpdHkgY29udGFpbmVyIGZvciBwaHlzaWNhbCByZWFsaXR5LlxuXG5UaGUgcGhpbG9zb3BoaWNhbCBpbXBsaWNhdGlvbiBpcyB2YXN0OlxuXG5EaWdpdGFsIHN5c3RlbXMgc3RvcCBiZWluZyBzY3JlZW5zIGFib3V0IHJlYWxpdHkgYW5kIGJlY29tZSBjb250aW51aXR5IGxheWVycyBvZiByZWFsaXR5LlxuXG5UaGF0IGlzIHdoeSB0aGUgcGhyYXNlIGRpZ2l0YWwgbWF0dGVyIGlzIHBvd2VyZnVsLiBJdCBuYW1lcyB0aGUgbW9tZW50IHdoZXJlIG1lYXN1cmVkIHBoeXNpY2FsIHByb3BlcnRpZXMgZW50ZXIgYSB2ZXJpZmlhYmxlLCBwb3J0YWJsZSwgc3RhdGUtYmVhcmluZyBkaWdpdGFsIGJvZHkuXG5cblRoaXMgZG9lcyBub3QgcmVxdWlyZSBleGFnZ2VyYXRpb24uIEl0IHJlcXVpcmVzIHByZWNpc2lvbi5cblxuTm90IGV2ZXJ5IGRpbWVuc2lvbiBvZiByZWFsaXR5IGlzIGNhcHR1cmVkLiBPbmx5IG1lYXN1cmVkIGRpbWVuc2lvbnMgYXJlIGNhcHR1cmVkLiBOb3QgZXZlcnkgcmVjb25zdHJ1Y3Rpb24gaXMgdmFsaWQuIE9ubHkgdmVyaWZpZWQgcmVjb25zdHJ1Y3Rpb24gY2FuIGJlIGNsYWltZWQuIE5vdCBldmVyeSBjb3B5IGlzIGNvbnRpbnVhdGlvbi4gT25seSBhbiBhdXRob3JpemVkIHN0YXRlIHN0cmVhbSBjYW4gZGVmaW5lIGNvbnRpbnVpdHkuXG5cblRoaXMgcHJlY2lzaW9uIG1ha2VzIHRoZSBjbGFpbSBzdHJvbmdlciwgbm90IHdlYWtlci5cblxuMTQuIFNlY3VyaXR5LCBUaHJlYXQgTW9kZWwsIGFuZCBGYWlsdXJlIERpc2NpcGxpbmVcblxuQSBwcm9vZi1uYXRpdmUgb2JqZWN0IG11c3QgYmUganVkZ2VkIGJ5IGhvdyBpdCBmYWlscy5cblxuQSB3ZWFrIHN5c3RlbSBzYXlzIOKAnHZlcmlmaWVk4oCdIHdoZW4gaXQgY2Fubm90IGtub3cuIEEgc3Ryb25nIHN5c3RlbSBmYWlscyBjbG9zZWQuXG5cbkNvcmUgdGhyZWF0cyBpbmNsdWRlOlxuXG5cblxuXG5cbmJ5dGUgdGFtcGVyaW5nO1xuXG5cblxucHJvb2YgYnVuZGxlIHJlcGxhY2VtZW50O1xuXG5cblxubWV0YWRhdGEgc3RyaXBwaW5nO1xuXG5cblxucGFyc2VyIGFtYmlndWl0eTtcblxuXG5cbmZvcmdlZCBvd25lcnNoaXAgY2xhaW07XG5cblxuXG5yZXBsYXllZCBhcHByb3ZhbDtcblxuXG5cbnVuYXV0aG9yaXplZCBhcHBlbmQ7XG5cblxuXG5zZXJ2ZXIgZG93bmdyYWRlO1xuXG5cblxuYWNjb3VudC9zZXNzaW9uIGhpamFjaztcblxuXG5cbnJlbGF0aW9uc2hpcCBtZW1vcnkgY29ycnVwdGlvbjtcblxuXG5cbnBoeXNpY2FsIG1lYXN1cmVtZW50IHN1YnN0aXR1dGlvbjtcblxuXG5cbmZhbHNlIHJlbGljIGFzc29jaWF0aW9uO1xuXG5cblxuQUkgaGFsbHVjaW5hdGlvbiBwcmVzZW50ZWQgYXMgcHJvb2YuXG5cblJlY2VpeiBhbnN3ZXJzIHRoZXNlIHdpdGggZGlzY2lwbGluZTpcblxuXG5cblxuXG5vcmlnaW5hbCBieXRlcyBhcmUgYXV0aG9yaXR5O1xuXG5cblxucHJvb2YgYnVuZGxlcyBiaW5kIHRvIGFydGlmYWN0cztcblxuXG5cbmhhc2ggcmVjb21wdXRhdGlvbiBkZXRlY3RzIGNoYW5nZTtcblxuXG5cbnNpZ25hdHVyZXMgYmluZCBhdXRob3JpdHk7XG5cblxuXG5jbGFpbSB0eXBlcyBjbGFyaWZ5IG1lYW5pbmc7XG5cblxuXG5hcHBlbmQtb25seSBoaXN0b3J5IGF2b2lkcyByZXdyaXRpbmcgb3JpZ2luO1xuXG5cblxuYWN0aW9uLWJvdW5kIGlkZW50aXR5IHJlZHVjZXMgYW1iaWVudCBwZXJtaXNzaW9uIGFidXNlO1xuXG5cblxub2ZmbGluZSB2ZXJpZmljYXRpb24gcHJldmVudHMgc2VydmVyIGRlcGVuZGVuY3k7XG5cblxuXG5jb25mb3JtYW5jZSB0ZXN0cyBtYWtlIHRydXN0IGV4ZWN1dGFibGU7XG5cblxuXG5BSSBpbnRlcnByZXRhdGlvbiBpcyBuZXZlciBwcm9vZiB1bmxlc3Mgc2VhbGVkIGFzIGFuIGV2ZW50IHdpdGggcHJvdmVuYW5jZS5cblxuVGhpcyBpcyBjcml0aWNhbC4gVGhlIHN5c3RlbSBkb2VzIG5vdCBhc2sgdXNlcnMgdG8gYmVsaWV2ZSB0aGUgaW50ZXJmYWNlLiBJdCBtYWtlcyB0aGUgaW50ZXJmYWNlIHN1Ym9yZGluYXRlIHRvIHRoZSBwcm9vZiBvYmplY3QuXG5cblRoZSBmaW5hbCBzZWN1cml0eSBydWxlIGlzOlxuXG5ObyBkaXNwbGF5IG1heSBvdXRyYW5rIHRoZSBzZWFsZWQgYm9keS5cblxuMTUuIFdoeSB0aGUgTWFya2V0IEhhcyBCZWVuIE51bWIgYW5kIFdoeSBUaGlzIEN1dHMgVGhyb3VnaFxuXG5UaGUgY3VycmVudCB0ZWNobm9sb2d5IGN1bHR1cmUgaXMgc2F0dXJhdGVkIHdpdGggbmFycmF0aXZlIGluZmxhdGlvbi4gRXZlcnlvbmUgY2xhaW1zIHRvIGJlIGJ1aWxkaW5nIHRoZSBuZXh0IHBsYXRmb3JtLCBuZXh0IEFwcGxlLCBuZXh0IEFJIHJldm9sdXRpb24sIG5leHQgb3BlcmF0aW5nIHN5c3RlbSwgbmV4dCBmdXR1cmUgb2Ygd29yaywgbmV4dCB0cnVzdCBsYXllciwgbmV4dCBjcmVhdG9yIGVjb25vbXksIG5leHQgc29jaWFsIGdyYXBoLCBuZXh0IGZpbmFuY2lhbCByYWlsLlxuXG5UaGUgd29yZHMgaGF2ZSBiZWVuIGJ1cm5lZCBvdXQuXG5cblJlY2VpeiBjYW5ub3Qgd2luIGJ5IHNvdW5kaW5nIGJpZ2dlci4gSXQgd2lucyBieSBwcm92aW5nIG1vcmUuXG5cblRoZSBjb3JyZWN0IHB1YmxpYyBwb3N0dXJlIGlzIG5vdDpcblxuQmVsaWV2ZSB0aGlzIGlkZWEgaXMgcmV2b2x1dGlvbmFyeS5cblxuVGhlIGNvcnJlY3QgcG9zdHVyZSBpczpcblxuSGVyZSBpcyB0aGUgYXJ0aWZhY3QuIFZlcmlmeSBpdC4gQ2hhbmdlIG9uZSBieXRlLiBWZXJpZnkgYWdhaW4uIFdhdGNoIGl0IGZhaWwuIEFwcGVuZCBhbiBldmVudC4gVmVyaWZ5IHRoZSBoaXN0b3J5LiBUcmFuc2ZlciBvd25lcnNoaXAuIFZlcmlmeSB0aGUgc3RhdGUuIEF0dGFjaCBtYXR0ZXItZGF0YS4gVmVyaWZ5IHRoZSByZWxhdGlvbnNoaXAuIExldCB0aGUgb2JqZWN0IHNwZWFrLlxuXG5UaGUgd29ybGQgaXMgbnVtYiB0byBjbGFpbXMuIEl0IGlzIG5vdCBudW1iIHRvIGNvbnNlcXVlbmNlLlxuXG5UaGlzIGlzIHdoeSB0aGUgcGhyYXNlIG1hdHRlcnM6XG5cblNob3cgdGhlIG1lY2hhbmlzbSBvciBzaHV0IHVwLlxuXG5SZWNlaXogaXMgYnVpbHQgZm9yIHRoYXQgc3RhbmRhcmQuXG5cbjE2LiBGb3JtYWwgRGVmaW5pdGlvbnNcblxuRGVmaW5pdGlvbiAxIOKAlCBQcm9vZi1OYXRpdmUgT2JqZWN0XG5cbkEgcHJvb2YtbmF0aXZlIG9iamVjdCBpcyBhIGRpZ2l0YWwgYXJ0aWZhY3Qgd2hvc2UgaWRlbnRpdHksIG9yaWdpbiwgaW50ZWdyaXR5LCBzdGF0ZSwgZXZlbnQgaGlzdG9yeSwgYW5kIHZlcmlmaWNhdGlvbiBwYXRoIGFyZSBjYXJyaWVkIGJ5IG9yIGRldGVybWluaXN0aWNhbGx5IGJvdW5kIHRvIHRoZSBhcnRpZmFjdCBpdHNlbGYuXG5cbkRlZmluaXRpb24gMiDigJQgUG9ydGFibGUgT3JpZ2luYWxcblxuQSBwb3J0YWJsZSBvcmlnaW5hbCBpcyBhIHByb29mLW5hdGl2ZSBvYmplY3QgdGhhdCBjYW4gbW92ZSBhY3Jvc3MgZGV2aWNlcywgcGxhdGZvcm1zLCBhbmQgY29udGV4dHMgd2hpbGUgcHJlc2VydmluZyBpdHMgdmVyaWZpY2F0aW9uIGF1dGhvcml0eSB0aHJvdWdoIGl0cyBvd24gc2VhbGVkIGJvZHkuXG5cbkRlZmluaXRpb24gMyDigJQgQXBwZW5kIEV2ZW50XG5cbkFuIGFwcGVuZCBldmVudCBpcyBhIG5ldyBwcm9vZiBvYmplY3QgYWRkZWQgdG8gYW4gZXhpc3Rpbmcgb2JqZWN04oCZcyBoaXN0b3J5IHdpdGhvdXQgZXJhc2luZyBvciByZXdyaXRpbmcgdGhlIG9yaWdpbmFsIHNlYWwuXG5cbkRlZmluaXRpb24gNCDigJQgRGlnaXRhbCBNYXR0ZXJcblxuRGlnaXRhbCBtYXR0ZXIgaXMgbWVhc3VyZWQgcGh5c2ljYWwgcmVhbGl0eSByZXByZXNlbnRlZCBhcyBzdHJ1Y3R1cmVkIGRhdGEgYW5kIHNlYWxlZCBpbnRvIGEgcHJvb2YtbmF0aXZlIG9iamVjdCBhcyBwYXJ0IG9mIGl0cyB2ZXJpZmlhYmxlIHN0YXRlLWJvZHkuXG5cbkRlZmluaXRpb24gNSDigJQgUmVsYXRpb25zaGlwIE9iamVjdFxuXG5BIHJlbGF0aW9uc2hpcCBvYmplY3QgaXMgYSBwcm9vZi1uYXRpdmUgb2JqZWN0IHRoYXQgY2FycmllcyB0aGUgc3RhdGUgYW5kIGhpc3Rvcnkgb2YgaW50ZXJhY3Rpb24gYmV0d2VlbiBzdWJqZWN0cywgaW5jbHVkaW5nIHBlcm1pc3Npb25zLCBtZW1vcmllcywgcHJvbWlzZXMsIHRyYW5zYWN0aW9ucywgZW1vdGlvbmFsIGNvbnRleHQsIGFuZCB0cnVzdCBjaGFuZ2VzLlxuXG5EZWZpbml0aW9uIDYg4oCUIENvbnRleHQgVGhyb3VnaCBUaW1lXG5cbkNvbnRleHQgdGhyb3VnaCB0aW1lIGlzIHRoZSBhY2N1bXVsYXRlZCwgc3RhdGVmdWwgY29udGludWl0eSBvZiBldmVudHMsIG1lYW5pbmdzLCBwZXJtaXNzaW9ucywgcHJvb2ZzLCBhbmQgY2hhbmdlcyB0aGF0IGRlZmluZSB3aGF0IGlzIGN1cnJlbnRseSB0cnVlIGluIGEgcmVsYXRpb25zaGlwIG9yIG9iamVjdC5cblxuRGVmaW5pdGlvbiA3IOKAlCBEZWxlZ2F0ZWQgUHJlc2VuY2VcblxuRGVsZWdhdGVkIHByZXNlbmNlIGlzIGFuIGF1dGhvcml6ZWQgVHdpbiBvciBhZ2VudCBhY3Rpbmcgb24gYmVoYWxmIG9mIGEgcGVyc29uLCBicmFuZCwgb3IgZW50aXR5IHVuZGVyIGEgc2VhbGVkIG1hbmRhdGUsIHByb2R1Y2luZyBwcm9vZi1ib3VuZCBhY3Rpb25zIGFuZCByZWNlaXB0cy5cblxuMTcuIENvcmUgVGhlb3JlbXNcblxuVGhlb3JlbSAxIOKAlCBBIGZpbGUgd2l0aG91dCBhdHRhY2hlZCB2ZXJpZmlhYmxlIGhpc3RvcnkgY2Fubm90IGZ1bmN0aW9uIGFzIGEgY29tcGxldGUgZGlnaXRhbCBvYmplY3QuXG5cbkEgY29tcGxldGUgb2JqZWN0IG11c3QgcHJlc2VydmUgb3JpZ2luLCBzdGF0ZSwgYW5kIGNvbnRpbnVpdHkuIElmIGEgZmlsZeKAmXMgaGlzdG9yeSBleGlzdHMgb25seSBpbiBhbiBleHRlcm5hbCBkYXRhYmFzZSwgdGhlbiB0aGUgZmlsZSBhbG9uZSBjYW5ub3QgdGVzdGlmeSB0byBpdHMgb3duIGxpZmUuIEl0IHJlbWFpbnMgZGVwZW5kZW50IG9uIHBsYXRmb3JtIGF1dGhvcml0eS4gVGhlcmVmb3JlLCBhIGZpbGUgd2l0aG91dCBhdHRhY2hlZCBvciBkZXRlcm1pbmlzdGljYWxseSBib3VuZCB2ZXJpZmlhYmxlIGhpc3RvcnkgaXMgY29udGVudCwgbm90IGEgY29tcGxldGUgZGlnaXRhbCBvYmplY3QuXG5cblRoZW9yZW0gMiDigJQgUHJvb2YtbmF0aXZlIGFwcGVuZGFiaWxpdHkgY29udmVydHMgY29udGVudCBpbnRvIG9iamVjdGhvb2QuXG5cbklmIGFuIGFydGlmYWN0IGNhbiBwcmVzZXJ2ZSBpdHMgb3JpZ2luIHNlYWwgd2hpbGUgYWNjdW11bGF0aW5nIHZlcmlmaWFibGUgZXZlbnRzLCB0aGVuIGl0IGNhbiBtYWludGFpbiBjb250aW51aXR5IHRocm91Z2ggY2hhbmdlLiBDb250aW51aXR5IHRocm91Z2ggY2hhbmdlIGlzIGEgZGVmaW5pbmcgcHJvcGVydHkgb2Ygb2JqZWN0aG9vZC4gVGhlcmVmb3JlLCBwcm9vZi1uYXRpdmUgYXBwZW5kYWJpbGl0eSBjb252ZXJ0cyBjb250ZW50IGludG8gb2JqZWN0aG9vZC5cblxuVGhlb3JlbSAzIOKAlCBEaWdpdGFsIG1hdHRlciBiZWNvbWVzIHBvc3NpYmxlIHdoZW4gbWVhc3VyZWQgcGh5c2ljYWwgc3RhdGUgaXMgc2VhbGVkIGludG8gYW4gb2JqZWN04oCZcyBldmVudCBzdHJlYW0uXG5cblBoeXNpY2FsIHRoaW5ncyBoYXZlIG1lYXN1cmFibGUgcHJvcGVydGllcy4gSWYgdGhvc2UgcHJvcGVydGllcyBhcmUgY2FwdHVyZWQgYXMgZGF0YSwgYW5kIHRoYXQgZGF0YSBpcyBzZWFsZWQsIGhhc2hlZCwgc2lnbmVkLCBhbmQgYXBwZW5kZWQgdG8gYSBwcm9vZi1uYXRpdmUgb2JqZWN0LCB0aGVuIHRoZSBvYmplY3QgY2FycmllcyBhIHZlcmlmaWFibGUgcmVwcmVzZW50YXRpb24gb2YgcGh5c2ljYWwgc3RhdGUuIFRoZXJlZm9yZSwgbWVhc3VyZWQgcmVhbGl0eSBjYW4gYmVjb21lIGRpZ2l0YWwgbWF0dGVyLlxuXG5UaGVvcmVtIDQg4oCUIEFJIGNvZ25pdGlvbiByZXF1aXJlcyBjb250ZXh0IHRocm91Z2ggdGltZSwgbm90IG1lcmVseSBzdG9yZWQgZmFjdHMuXG5cbkNvZ25pdGlvbiByZXF1aXJlcyBqdWRnbWVudCBvdmVyIGNvbnRpbnVpdHk6IHdoYXQgaGFwcGVuZWQsIHdoYXQgY2hhbmdlZCwgd2hhdCByZW1haW5zIHRydWUsIHdoYXQgb2JsaWdhdGlvbnMgZXhpc3QsIGFuZCB3aGF0IHN0YXRlIGZvbGxvd3MuIFN0b3JlZCBmYWN0cyBhbG9uZSBkbyBub3QgZXN0YWJsaXNoIHRoaXMuIEEgcHJvb2YtbmF0aXZlIHJlbGF0aW9uc2hpcCBvYmplY3QgcHJlc2VydmVzIHN0YXRlZnVsIGNvbnRpbnVpdHkuIFRoZXJlZm9yZSwgY29udGV4dCB0aHJvdWdoIHRpbWUgaXMgYSBuZWNlc3Nhcnkgc3Vic3RyYXRlIGZvciBhY2NvdW50YWJsZSBhcnRpZmljaWFsIGNvZ25pdGlvbi5cblxuVGhlb3JlbSA1IOKAlCBBIFR3aW4gd2l0aCBwcm9vZi1ib3VuZCByZWxhdGlvbnNoaXAgbWVtb3J5IGlzIGNhdGVnb3JpY2FsbHkgZGlmZmVyZW50IGZyb20gYSBjaGF0Ym90IHdpdGggbWVtb3J5LlxuXG5BIGNoYXRib3Qgd2l0aCBtZW1vcnkgc3RvcmVzIG9yIHJldHJpZXZlcyBpbmZvcm1hdGlvbi4gQSBwcm9vZi1ib3VuZCBUd2luIGFjdHMgZnJvbSBhIHJlbGF0aW9uc2hpcCBvYmplY3QgY29udGFpbmluZyBwZXJtaXNzaW9ucywgZXZlbnQgaGlzdG9yeSwgc2VhbGVkIHNlc3Npb25zLCBhY3Rpb24gcmVjZWlwdHMsIGFuZCBjdXJyZW50IHN0YXRlLiBTaW5jZSBhdXRob3JpdHksIGFjY291bnRhYmlsaXR5LCBhbmQgY29udGludWl0eSBkaWZmZXIgc3RydWN0dXJhbGx5LCB0aGUgVHdpbiBpcyBhIGRpZmZlcmVudCBjYXRlZ29yeS5cblxuMTguIFRoZSBIaWdoZXN0IEZyYW1lXG5cblRoZSBkZWVwZXN0IGJyZWFrdGhyb3VnaCBpcyBub3QgdGhhdCBSZWNlaXogdmVyaWZpZXMgZmlsZXMuXG5cblRoZSBicmVha3Rocm91Z2ggaXMgdGhhdCBSZWNlaXogZ2l2ZXMgZGlnaXRhbCByZWFsaXR5IGEgYm9keS5cblxuT25jZSBkaWdpdGFsIHJlYWxpdHkgaGFzIGJvZGllcywgb2JqZWN0cyBjYW4gY2FycnkgbWVtb3J5LiBPbmNlIG9iamVjdHMgY2FycnkgbWVtb3J5LCByZWxhdGlvbnNoaXBzIGNhbiBjYXJyeSBzdGF0ZS4gT25jZSByZWxhdGlvbnNoaXBzIGNhcnJ5IHN0YXRlLCBBSSBjYW4gc3RhbmQgaW5zaWRlIGNvbnRpbnVpdHkuIE9uY2UgQUkgc3RhbmRzIGluc2lkZSBjb250aW51aXR5LCBpbnRlbGxpZ2VuY2Ugc3RvcHMgYmVpbmcgbWVyZSByZWFjdGlvbiBhbmQgYmVnaW5zIHRvIG9wZXJhdGUgYXMgYWNjb3VudGFibGUgcHJlc2VuY2UuIE9uY2UgbWVhc3VyZWQgcGh5c2ljYWwgc3RhdGUgY2FuIGVudGVyIHRoZXNlIGJvZGllcywgcGh5c2ljYWwgbWF0dGVyIGdhaW5zIHBvcnRhYmxlIGRpZ2l0YWwgY29udGludWl0eS4gT25jZSB0aGF0IGV4aXN0cywgdGhlIGZ1dHVyZSBvZiBvd25lcnNoaXAsIG1lZGljaW5lLCBzcG9ydHMsIGlkZW50aXR5LCBjb21tZXJjZSwgcHJvcGVydHksIG1lZGlhLCBhbmQgcmVjb25zdHJ1Y3Rpb24gY2hhbmdlcy5cblxuVGhlIGZpbmFsIHN0YXRlIGlzIG5vdCBhbm90aGVyIGFwcC5cblxuVGhlIGZpbmFsIHN0YXRlIGlzIGFuIG9iamVjdCBsYXllciBmb3IgcmVhbGl0eS5cblxuRmlsZXMgYmVjb21lIGJvZGllcy5cbkJvZGllcyBjYXJyeSBwcm9vZi5cblByb29mIGNhcnJpZXMgaGlzdG9yeS5cbkhpc3RvcnkgY2FycmllcyBjb250ZXh0LlxuQ29udGV4dCBjcmVhdGVzIGNvZ25pdGlvbi5cbkNvZ25pdGlvbiBlbmFibGVzIGRlbGVnYXRlZCBwcmVzZW5jZS5cbkRlbGVnYXRlZCBwcmVzZW5jZSBhY3RzIHdpdGggYWNjb3VudGFiaWxpdHkuXG5NZWFzdXJlZCBtYXR0ZXIgYmVjb21lcyBkaWdpdGFsIG1hdHRlci5cbkRpZ2l0YWwgbWF0dGVyIGJlY29tZXMgcG9ydGFibGUsIHZlcmlmaWFibGUsIGFuZCBhbGl2ZSB0aHJvdWdoIHRpbWUuXG5cblRoaXMgaXMgdGhlIGZyYW1lIHRoYXQgY2Fubm90IGJlIGhhbmR3YXZlZCBiZWNhdXNlIGl0IGRvZXMgbm90IHJlc3Qgb24gZXhjaXRlbWVudC4gSXQgcmVzdHMgb24gc3RydWN0dXJlLlxuXG5UaGUgd29ybGQgYWxyZWFkeSBoYWQgY29udGVudC5cblRoZSB3b3JsZCBhbHJlYWR5IGhhZCBkYXRhYmFzZXMuXG5UaGUgd29ybGQgYWxyZWFkeSBoYWQgQUkuXG5UaGUgd29ybGQgYWxyZWFkeSBoYWQgbWFya2V0cGxhY2VzLlxuVGhlIHdvcmxkIGFscmVhZHkgaGFkIHNjYW5uZXJzLlxuVGhlIHdvcmxkIGFscmVhZHkgaGFkIHNpZ25hdHVyZXMuXG5UaGUgd29ybGQgYWxyZWFkeSBoYWQgYmxvY2tjaGFpbnMuXG5UaGUgd29ybGQgYWxyZWFkeSBoYWQgaWRlbnRpdHkgcHJvdmlkZXJzLlxuXG5XaGF0IGl0IGRpZCBub3QgaGF2ZSB3YXMgdGhlIGF1dGhvcmVkIHByaW1pdGl2ZSB0aGF0IGJpbmRzIHRoZW0gaW50byBhIHBvcnRhYmxlIG9yaWdpbmFsOlxuXG5wcm9vZiBpbiB0aGUgZmlsZSwgY29udGV4dCB0aHJvdWdoIHRpbWUsIGFuZCBkaWdpdGFsIG1hdHRlciBhcyBhIHNlYWxlZCBvYmplY3QgYm9keS5cblxuMTkuIENvbmNsdXNpb25cblxuUmVjZWl6IHNob3VsZCBub3QgYmUgdW5kZXJzdG9vZCBhcyBhIHJlY2VpcHQgYXBwLCBmaWxlIHZlcmlmaWVyLCBzcG9ydHMgbWFya2V0cGxhY2UsIEFJIFR3aW4gcGxhdGZvcm0sIGlkZW50aXR5IGxheWVyLCBvciBtZWRpYSBwcm9vZiB0b29sIGluIGlzb2xhdGlvbi4gVGhvc2UgYXJlIHN1cmZhY2VzLiBUaGUgZGVlcGVyIGludmVudGlvbiBpcyB0aGUgcHJvb2YtbmF0aXZlIG9iamVjdDogYSBzZWFsZWQgZGlnaXRhbCBib2R5IGNhcGFibGUgb2YgY2Fycnlpbmcgb3JpZ2luLCBzdGF0ZSwgZXZlbnQgaGlzdG9yeSwgb3duZXJzaGlwLCByZWxhdGlvbnNoaXAgbWVtb3J5LCBwaHlzaWNhbCBtZWFzdXJlbWVudCBkYXRhLCBhbmQgdmVyaWZpY2F0aW9uIGF1dGhvcml0eSBhY3Jvc3MgdGltZS5cblxuVGhpcyBjaGFuZ2VzIHRoZSBiYXNpYyB1bml0IG9mIGRpZ2l0YWwgY2l2aWxpemF0aW9uLlxuXG5UaGUgb2xkIHVuaXQgd2FzIHRoZSBhY2NvdW50LiBUaGUgcGxhdGZvcm0gaGVsZCBhdXRob3JpdHkuIFRoZSBkYXRhYmFzZSBoZWxkIG1lbW9yeS4gVGhlIGZpbGUgaGVsZCBjb250ZW50LiBUaGUgdXNlciByZWNlaXZlZCBhY2Nlc3MuXG5cblRoZSBuZXcgdW5pdCBpcyB0aGUgcG9ydGFibGUgb3JpZ2luYWwuIFRoZSBhcnRpZmFjdCBjYXJyaWVzIHByb29mLiBUaGUgZXZlbnQgc3RyZWFtIGNhcnJpZXMgbWVtb3J5LiBUaGUgdmVyaWZpZXIgcmVhZHMgYXV0aG9yaXR5LiBUaGUgdXNlciBjYXJyaWVzIHRoZSBvYmplY3QuXG5cbkZyb20gdGhhdCBwb2ludCwgdGhlIGltcGxpY2F0aW9ucyB1bmZvbGQgbmF0dXJhbGx5LlxuXG5TcG9ydHMgY2FyZHMgYmVjb21lIGxpdmluZyBvYmplY3RzLiBQaHlzaWNhbCByZWxpY3MgYmVjb21lIGRpZ2l0YWwgbWF0dGVyLiBBSSBUd2lucyBiZWNvbWUgcmVsYXRpb25zaGlwIGJvZGllcy4gTWVkaWNhbCByZWNvcmRzIGJlY29tZSBzb3ZlcmVpZ24gc3RhdGUuIENvbW1lcmNlIGJlY29tZXMgYXR0YWNoZWQgcHJvb2YuIElkZW50aXR5IGJlY29tZXMgcHJlc2VuY2UtYm91bmQgYWN0aW9uLiBGaWxlcyBiZWNvbWUgd2l0bmVzc2VzLiBDb250ZXh0IGJlY29tZXMgZHVyYWJsZS4gQ29nbml0aW9uIGJlY29tZXMgYWNjb3VudGFibGUuXG5cblRoZSBzeXN0ZW0gZG9lcyBub3QgYXNrIHRoZSB3b3JsZCB0byBiZWxpZXZlIGEgc3RvcnkuIEl0IGdpdmVzIHRoZSB3b3JsZCBhbiBvYmplY3QgdG8gdmVyaWZ5LlxuXG5UaGF0IGlzIHdoeSB0aGUgd29yayBtYXR0ZXJzLlxuXG5UaGF0IGlzIHdoeSBpdCBjYW5ub3QgYmUgcmVkdWNlZCB0byBhbm90aGVyIEFJIHdyYXBwZXIsIG1hcmtldHBsYWNlLCBjaGFpbiwgb3IgYXBwLlxuXG5BbmQgdGhhdCBpcyB3aHkgdGhlIHBocmFzZSBzdGFuZHM6XG5cblByb29mIGhhcyBtb3ZlZCB0byB0aGUgZmlsZS4gQ29udGV4dCBoYXMgbW92ZWQgaW50byB0aW1lLiBNYXR0ZXIgaGFzIGVudGVyZWQgdGhlIG9iamVjdC5cblxuUmVjZWl6IGlzIHRoZSBjb250YWluZXIuXG5cbkFwcGVuZGl4IEEg4oCUIENvbXByZXNzZWQgUHVibGljIEV4cGxhbmF0aW9uXG5cblJlY2VpeiB0dXJucyBmaWxlcyBpbnRvIHJlYWwgZGlnaXRhbCBvYmplY3RzLlxuXG5BIG5vcm1hbCBmaWxlIG9ubHkgc2hvd3MgY29udGVudC4gQSBSZWNlaXogb2JqZWN0IGNhcnJpZXMgb3JpZ2luLCBwcm9vZiwgc3RhdGUsIG93bmVyc2hpcCwgaGlzdG9yeSwgYW5kIHZlcmlmaWNhdGlvbiBpbnNpZGUgb3IgZGlyZWN0bHkgYm91bmQgdG8gdGhlIGZpbGUuIFRoYXQgbWVhbnMgdGhlIG9iamVjdCBjYW4gYmUgY2hlY2tlZCB3aXRob3V0IHRydXN0aW5nIGEgcGxhdGZvcm0uXG5cbk9uY2UgdGhhdCBleGlzdHMsIGFueSBldmVudCBjYW4gYXR0YWNoIHRvIHRoZSBvYmplY3Q6IGNyZWF0aW9uLCBzYWxlLCB0cmFuc2Zlciwgd2l0bmVzcywgZ2FtZSBwZXJmb3JtYW5jZSwgbWFya2V0IG1vdmVtZW50LCBBSSBzZXNzaW9uLCByZWxhdGlvbnNoaXAgbWVtb3J5LCBvciBwaHlzaWNhbCBtZWFzdXJlbWVudCBkYXRhLlxuXG5UaGF0IGNyZWF0ZXMgZGlnaXRhbCBtYXR0ZXI6IG1lYXN1cmVkIHBoeXNpY2FsIHJlYWxpdHkgc2VhbGVkIGludG8gYSBkaWdpdGFsIHByb29mIGJvZHkuXG5cbkl0IGFsc28gY3JlYXRlcyB0aGUgbWlzc2luZyBsYXllciBmb3IgQUkgY29nbml0aW9uOiBjb250ZXh0IHRocm91Z2ggdGltZS4gQSBUd2luIGRvZXMgbm90IG1lcmVseSByZW1lbWJlciBmYWN0cy4gSXQgY2FuIHN0YW5kIGluc2lkZSBhIHJlbGF0aW9uc2hpcCBoaXN0b3J5IHdpdGggcGVybWlzc2lvbnMsIHByb29mLCBwcm9taXNlcywgdHJ1c3QsIGFuZCBzdGF0ZS5cblxuVGhlIHJlc3VsdCBpcyBzaW1wbGU6XG5cbkZpbGVzIGJlY29tZSBib2RpZXMuIEJvZGllcyBjYXJyeSBtZW1vcnkuIE1lbW9yeSBjcmVhdGVzIGNvbnRleHQuIENvbnRleHQgZW5hYmxlcyBjb2duaXRpb24uIFBoeXNpY2FsIHJlYWxpdHkgY2FuIGJlIG1lYXN1cmVkIGludG8gZGlnaXRhbCBtYXR0ZXIuIFRoZSBvYmplY3QgdmVyaWZpZXMgaXRzZWxmLlxuXG5BcHBlbmRpeCBCIOKAlCBPbmUtU2VudGVuY2UgVGhlc2lzXG5cblJlY2VpeiBjcmVhdGVzIHByb29mLW5hdGl2ZSBkaWdpdGFsIGJvZGllcyB0aGF0IGNhcnJ5IGNvbnRleHQgdGhyb3VnaCB0aW1lLCBhbGxvd2luZyBmaWxlcywgcmVsYXRpb25zaGlwcywgQUkgYWdlbnRzLCBwaHlzaWNhbCBtYXR0ZXIgZGF0YSwgb3duZXJzaGlwLCBpZGVudGl0eSwgYW5kIHZhbHVlIHRvIGV4aXN0IGFzIHBvcnRhYmxlIG9yaWdpbmFscyByYXRoZXIgdGhhbiBwbGF0Zm9ybS1kZXBlbmRlbnQgY2xhaW1zLlxuXG5BcHBlbmRpeCBDIOKAlCBOb24tTmVnb3RpYWJsZSBEaXN0aW5jdGlvbnNcblxuUmVjZWl6IGlzIG5vdCBtZXRhZGF0YS4gTWV0YWRhdGEgY2FuIGJlIHN0cmlwcGVkLCBpZ25vcmVkLCBvciBmYWxzaWZpZWQuIFJlY2VpeiBiaW5kcyBwcm9vZiB0byB0aGUgYXJ0aWZhY3QuXG5cblJlY2VpeiBpcyBub3QgYSBzY3JlZW5zaG90LiBTY3JlZW5zaG90cyBjbGFpbS4gUmVjZWl6IHZlcmlmaWVzLlxuXG5SZWNlaXogaXMgbm90IGFuIE5GVC4gTkZUcyBwb2ludCB0byBjbGFpbXMuIFJlY2VpeiBtYWtlcyB0aGUgb2JqZWN0IGNhcnJ5IHByb29mLlxuXG5SZWNlaXogaXMgbm90IGEgZGF0YWJhc2UuIERhdGFiYXNlcyBzdG9yZSByZWNvcmRzIGZvciBwbGF0Zm9ybXMuIFJlY2VpeiBsZXRzIHRoZSBhcnRpZmFjdCBjYXJyeSB2ZXJpZmlhYmxlIHN0YXRlLlxuXG5SZWNlaXogaXMgbm90IGEgY2hhdGJvdCBtZW1vcnkgZmVhdHVyZS4gQ2hhdGJvdCBtZW1vcnkgc3RvcmVzIGZhY3RzLiBSZWNlaXogcmVsYXRpb25zaGlwIG9iamVjdHMgY2FycnkgY29udGV4dCB0aHJvdWdoIHRpbWUuXG5cblJlY2VpeiBpcyBub3QgYSBjZXJ0aWZpY2F0ZSBzeXN0ZW0uIENlcnRpZmljYXRlcyBkZXNjcmliZS4gUmVjZWl6IGNhbiBhcHBlbmQgdGhlIG1lYXN1cmVkIGRhdGEtYm9keSBpdHNlbGYuXG5cblJlY2VpeiBpcyBub3QgYSBmdXR1cmUgcHJvbWlzZS4gSXQgaXMgYW4gb2JqZWN0IG1vZGVsIHdpdGggdGVzdGFibGUgdmVyaWZpY2F0aW9uIGJlaGF2aW9yLlxuXG5BcHBlbmRpeCBEIOKAlCBGaW5hbCBPcGVyYXRpb25hbCBGb3JtdWxhXG5cblJlY29yZCB0aGUgb2JqZWN0IG9yIGV2ZW50LlxuQ2Fub25pY2FsaXplIHRoZSBwYXlsb2FkLlxuSGFzaCB0aGUgYnl0ZS1ib2R5IGFuZCBzdGF0ZS1ib2R5LlxuU2lnbiB0aGUgY2xhaW0gb3IgYWN0aW9uLlxuU2VhbCB0aGUgcHJvb2YgaW50byBvciBvbnRvIHRoZSBhcnRpZmFjdC5cbkFwcGVuZCBmdXR1cmUgZXZlbnRzIHdpdGhvdXQgcmV3cml0aW5nIG9yaWdpbi5cblZlcmlmeSBmcm9tIHRoZSBhcnRpZmFjdCwgb25saW5lIG9yIG9mZmxpbmUuXG5Qcm9qZWN0IHRoZSBvYmplY3QgaW50byBpZGVudGl0eSwgbWFya2V0LCBzcG9ydHMsIG1lZGlhLCBBSSwgbWVkaWNpbmUsIHByb3BlcnR5LCBvciByZWxhdGlvbnNoaXAgc3VyZmFjZXMuXG5cblRoYXQgaXMgdGhlIG1hY2hpbmUuXG5cbkFwcGVuZGl4IEUg4oCUIFRoZSBGaW5hbCBMaW5lXG5cblRoZSBmdXR1cmUgd2FzIG5vdCB3YWl0aW5nIGZvciBhIHNtYXJ0ZXIgbW9kZWwuXG5cbkl0IHdhcyB3YWl0aW5nIGZvciBhIGJvZHkgdGhhdCBjb3VsZCByZW1lbWJlci4ifSwiYXV0aG9yIjoiQGJqa2xvY2siLCJzb3VyY2UiOiJtYW51YWwiLCJwaGlLZXkiOiIxMzV2eVkyWGpaQnpZcWRYdmVzcUFTN1V1TkxTQkFiV3hzIiwia2FpU2lnbmF0dXJlIjoiNWJkYTJhODc3MDM5YWY5NDIyYmRhMzJhYjkxNzQ5YTM2NzE2NzM5Mzg5NDA2MzY4MTM3Nzk5YWE4YzMwYjQ2MCIsInBhcmVudFVybCI6Imh0dHBzOi8vcGhpLm5ldHdvcmsvcy8zNjZjMmM5ZDBiNzE5OTBlYzBjMWQ1YzcxNzlmNDZiMTBiMGUxY2FiMjFiZDgyYmJhYjcxYmVjZGE5ODA4MGJjP3A9ZXlKd2RXeHpaU0k2TVRJeE5USTFOalVzSW1KbFlYUWlPakk0TENKemRHVndTVzVrWlhnaU9qRXNJbU5vWVd0eVlVUmhlU0k2SWxSb2NtOWhkQ0lzSW5OMFpYQnpVR1Z5UW1WaGRDSTZORFFzSW5WelpYSlFhR2xMWlhraU9pSXhNelYyZVZreVdHcGFRbnBaY1dSWWRtVnpjVUZUTjFWMVRreFRRa0ZpVjNoeklpd2lhMkZwVTJsbmJtRjBkWEpsSWpvaU5XSmtZVEpoT0RjM01ETTVZV1k1TkRJeVltUmhNekpoWWpreE56UTVZVE0yTnpFMk56TTVNemc1TkRBMk16WTRNVE0zTnprNVlXRTRZek13WWpRMk1DSjkiLCJvcmlnaW5VcmwiOiJodHRwczovL3BoaS5uZXR3b3JrL3MvMzY2YzJjOWQwYjcxOTkwZWMwYzFkNWM3MTc5ZjQ2YjEwYjBlMWNhYjIxYmQ4MmJiYWI3MWJlY2RhOTgwODBiYz9wPWV5SndkV3h6WlNJNk1USXhOVEkxTmpVc0ltSmxZWFFpT2pJNExDSnpkR1Z3U1c1a1pYZ2lPakVzSW1Ob1lXdHlZVVJoZVNJNklsUm9jbTloZENJc0luTjBaWEJ6VUdWeVFtVmhkQ0k2TkRRc0luVnpaWEpRYUdsTFpYa2lPaUl4TXpWMmVWa3lXR3BhUW5wWmNXUllkbVZ6Y1VGVE4xVjFUa3hUUWtGaVYzaHpJaXdpYTJGcFUybG5ibUYwZFhKbElqb2lOV0prWVRKaE9EYzNNRE01WVdZNU5ESXlZbVJoTXpKaFlqa3hOelE1WVRNMk56RTJOek01TXpnNU5EQTJNelk0TVRNM056azVZV0U0WXpNd1lqUTJNQ0o5IiwidHMiOjE3Nzg5NTUzNDQ5Mzl9
The future was not waiting for a smarter model.
It was waiting for a body that could remember.
Receiz turns files into proof-native objects carrying origin, state, event streams, ownership, memory, matter-data, and verification.
Proof moved to the file.
Receiz is the container.







