Tiny URL
Diagram: Tiny URL · 176 elements
{
"type": "excalidraw",
"version": 2,
"source": "https://marketplace.visualstudio.com/items?itemName=pomdtr.excalidraw-editor",
"elements": [
{
"type": "text",
"version": 2687,
"versionNonce": 423810927,
"isDeleted": false,
"id": "fvY_cTE49UPBlLZ7gzKIn",
"fillStyle": "cross-hatch",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1273.3253238858188,
"y": -25285.38440445232,
"strokeColor": "#000",
"backgroundColor": "#000",
"width": 33,
"height": 45,
"seed": 46326697,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 33.23791410279167,
"fontFamily": 1,
"text": "✨",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "✨",
"lineHeight": 1.3538755729626375,
"index": "a0",
"autoResize": true
},
{
"type": "text",
"version": 3498,
"versionNonce": 848026369,
"isDeleted": false,
"id": "0wnBzZsi_tM-pMBhoWlu8",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1320.2767041180568,
"y": -25273.104431403222,
"strokeColor": "#495057",
"backgroundColor": "#fff",
"width": 186.1759033203125,
"height": 20,
"seed": 1662956169,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 16,
"fontFamily": 1,
"text": "Functional Requirements",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Functional Requirements",
"lineHeight": 1.25,
"index": "a1",
"autoResize": true
},
{
"type": "line",
"version": 1788,
"versionNonce": 1895043471,
"isDeleted": false,
"id": "gcmPVNnY9zNTQ9XlZi28a",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1274.0494136077232,
"y": -25237.91864850504,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 165.2005648542745,
"height": 0.8295616012067057,
"seed": 756250569,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
165.2005648542745,
0.8295616012067057
]
],
"index": "a2"
},
{
"type": "text",
"version": 1559,
"versionNonce": 1429918433,
"isDeleted": false,
"id": "3HsmbXx6GUv8wI3qORiaR",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 1280.6543254032526,
"y": -25218.06277251854,
"strokeColor": "#1e1e1e",
"backgroundColor": "#fefefe",
"width": 446.13970947265625,
"height": 182,
"seed": 344376297,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "1. Generate unique shortURL per long\nURL/paste\n - How can we ensure these are unique?\n\n2. Per generated URL allow the original\nposter to see the number of clicks\n - How can we ensure these are accurate",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "1. Generate unique shortURL per long\nURL/paste\n - How can we ensure these are unique?\n\n2. Per generated URL allow the original\nposter to see the number of clicks\n - How can we ensure these are accurate",
"lineHeight": 1.3,
"index": "a3",
"autoResize": true
},
{
"type": "text",
"version": 5314,
"versionNonce": 1320748975,
"isDeleted": false,
"id": "JLfwjcPDnvqBCWBbxCgky",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 1294.9002740149233,
"y": -24614.316055733852,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 441.6796569824219,
"height": 260,
"seed": 2056547369,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "1. Median URL has 10k clicks, most popular\nURL in millions of clicks\n2. At a time may have to support about to\n1 trillion URLs\n3. For certain pastes, text sizes can be in \nthe gigabytes, average size in kilobytes,\n1 trillion X 1kb = 1 petabyte\n\n# of Reads >> # of Writes (want to \noptimize these)",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "1. Median URL has 10k clicks, most popular\nURL in millions of clicks\n2. At a time may have to support about to\n1 trillion URLs\n3. For certain pastes, text sizes can be in \nthe gigabytes, average size in kilobytes,\n1 trillion X 1kb = 1 petabyte\n\n# of Reads >> # of Writes (want to \noptimize these)",
"lineHeight": 1.3,
"index": "a4",
"autoResize": true
},
{
"type": "text",
"version": 4278,
"versionNonce": 1526714049,
"isDeleted": false,
"id": "CGyIYH8CdO3jhFJvMJZaw",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1339.319340867621,
"y": -24670.797153198368,
"strokeColor": "#495057",
"backgroundColor": "#fff",
"width": 238.6078643798828,
"height": 20,
"seed": 60389737,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 16,
"fontFamily": 1,
"text": "Back of Envelope Calculations",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Back of Envelope Calculations",
"lineHeight": 1.25,
"index": "a5",
"autoResize": true
},
{
"type": "line",
"version": 2476,
"versionNonce": 817510863,
"isDeleted": false,
"id": "02RXaxoIfX_wvDNpgtYbU",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1291.5221915260142,
"y": -24631.749843951842,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 263.6620648633493,
"height": 1.238537448047282,
"seed": 1430492841,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
263.6620648633493,
-1.238537448047282
]
],
"index": "a6"
},
{
"type": "rectangle",
"version": 2450,
"versionNonce": 2054835873,
"isDeleted": false,
"id": "-qPTi6tSQydcUU4fa_aq1",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1770.228248682442,
"y": -25283.33110371985,
"strokeColor": "#495057",
"backgroundColor": "transparent",
"width": 908.4307242809056,
"height": 944.7621335088247,
"seed": 1508556905,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "a7"
},
{
"type": "rectangle",
"version": 2399,
"versionNonce": 1007691759,
"isDeleted": false,
"id": "hYLVW619S7NFf7gYbHFd9",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1267.2811285047214,
"y": -25289.52366748303,
"strokeColor": "#495057",
"backgroundColor": "transparent",
"width": 471.3223044676661,
"height": 292.6447790905742,
"seed": 1164495689,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "a8"
},
{
"type": "rectangle",
"version": 2679,
"versionNonce": 1784271489,
"isDeleted": false,
"id": "auc2Y-H1_1PMLp2v5aNGY",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 1275.8760062523274,
"y": -24681.62932175046,
"strokeColor": "#495057",
"backgroundColor": "transparent",
"width": 470.34480081656045,
"height": 350.2186005317186,
"seed": 1719880969,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "a9"
},
{
"type": "text",
"version": 567,
"versionNonce": 1589858831,
"isDeleted": false,
"id": "2G7hR-3VHk_Rvp1NYYR5h",
"fillStyle": "cross-hatch",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 1272.8880244299035,
"y": -25358.553504557593,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 458.099853515625,
"height": 46,
"seed": 2111080489,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 36,
"fontFamily": 1,
"text": "Design TinyUrl + Pastebin",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Design TinyUrl + Pastebin",
"lineHeight": 1.2777777777777777,
"index": "aA",
"autoResize": true
},
{
"type": "text",
"version": 3322,
"versionNonce": 1599986273,
"isDeleted": false,
"id": "2nW9X5cOb90pg1C4Qnv5e",
"fillStyle": "cross-hatch",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1289.7200455974905,
"y": -24677.900576227148,
"strokeColor": "#000",
"backgroundColor": "#000",
"width": 36,
"height": 49.15083451704544,
"seed": 681962311,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 36.30380479462411,
"fontFamily": 1,
"text": "✉️",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "✉️",
"lineHeight": 1.353875572962637,
"index": "aB",
"autoResize": true
},
{
"type": "text",
"version": 2807,
"versionNonce": 835467311,
"isDeleted": false,
"id": "aAjDpBeDVH0BsPh7vMDzm",
"fillStyle": "cross-hatch",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1785.1225052392133,
"y": -25267.887906545253,
"strokeColor": "#000",
"backgroundColor": "#000",
"width": 33,
"height": 45,
"seed": 1353336969,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 33.23791410279167,
"fontFamily": 1,
"text": "✨",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "✨",
"lineHeight": 1.3538755729626375,
"index": "aC",
"autoResize": true
},
{
"type": "text",
"version": 3666,
"versionNonce": 1247143489,
"isDeleted": false,
"id": "UJ7RJPgL1gVeoqMLBl4Id",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1832.0738854714514,
"y": -25255.607933496158,
"strokeColor": "#495057",
"backgroundColor": "#fff",
"width": 132.81593322753906,
"height": 20,
"seed": 658657129,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 16,
"fontFamily": 1,
"text": "High Level Design",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "High Level Design",
"lineHeight": 1.25,
"index": "aD",
"autoResize": true
},
{
"type": "line",
"version": 1908,
"versionNonce": 454253135,
"isDeleted": false,
"id": "3o_D70YfW3ot3wYLuUTq1",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1785.8465949611177,
"y": -25220.422150597977,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 165.2005648542745,
"height": 0.8295616012067057,
"seed": 1056340553,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
165.2005648542745,
0.8295616012067057
]
],
"index": "aE"
},
{
"type": "text",
"version": 2610,
"versionNonce": 1170769633,
"isDeleted": false,
"id": "aUEMc4P-okpklmJGb1_AQ",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 1783.3100589261567,
"y": -25197.42415098148,
"strokeColor": "#1e1e1e",
"backgroundColor": "#fefefe",
"width": 845.4793090820312,
"height": 884,
"seed": 1100119239,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909719386,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "Link Generator Service\n\nIdea: We probably want to hash (longURL, userId, create timeStamp)\n\n-> h(\"google.com\", 1, 01/01/2024) = tinyurl.com/32fz1c98\n\nNumber of characters? -> possiblilites = 36^n if we use 0-9, a - z\n\nif n = 8, we have around 2 trillion combinations\n\nHash Collisions? If 32f21ca8 is taken try 32fz1ca9 (basically try probing)\n\n\nAssigning URLs - Replication\n\nWe want to try to maximize our write throughput where possible!\n-> Can we use multi-leader/leaderless replication? NO!\n-> Telling people a few minutes later is too late\n-> Rules out Cassandra, Scylla, Riak, etcs (Need to use Single Leader)\n\nAssigning URLs - Replication\n\nSometimes, we can speed up our writes via the use of a write back cache\n\nBut run into same issue as above\n\nAssigning URLs - Partitioning\n\nNot only is partitioning very important if we have a lot of data, it can help us\nspeed up our reads and writes by reducing load on every node\n\nCan partition by range of short URL, they're already hashes so should be relatively\neven (use consistent hashing)\n",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Link Generator Service\n\nIdea: We probably want to hash (longURL, userId, create timeStamp)\n\n-> h(\"google.com\", 1, 01/01/2024) = tinyurl.com/32fz1c98\n\nNumber of characters? -> possiblilites = 36^n if we use 0-9, a - z\n\nif n = 8, we have around 2 trillion combinations\n\nHash Collisions? If 32f21ca8 is taken try 32fz1ca9 (basically try probing)\n\n\nAssigning URLs - Replication\n\nWe want to try to maximize our write throughput where possible!\n-> Can we use multi-leader/leaderless replication? NO!\n-> Telling people a few minutes later is too late\n-> Rules out Cassandra, Scylla, Riak, etcs (Need to use Single Leader)\n\nAssigning URLs - Replication\n\nSometimes, we can speed up our writes via the use of a write back cache\n\nBut run into same issue as above\n\nAssigning URLs - Partitioning\n\nNot only is partitioning very important if we have a lot of data, it can help us\nspeed up our reads and writes by reducing load on every node\n\nCan partition by range of short URL, they're already hashes so should be relatively\neven (use consistent hashing)\n",
"lineHeight": 1.3,
"index": "aF",
"autoResize": true
},
{
"type": "rectangle",
"version": 2989,
"versionNonce": 795949167,
"isDeleted": false,
"id": "esX7hzqVKjBVgak6JZP6O",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 2707.296771126412,
"y": -25275.61658110379,
"strokeColor": "#495057",
"backgroundColor": "transparent",
"width": 908.4307242809056,
"height": 944.7621335088247,
"seed": 1078071047,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "aG"
},
{
"type": "text",
"version": 3346,
"versionNonce": 632293889,
"isDeleted": false,
"id": "PJbS2L89OIUZEH3RimH5I",
"fillStyle": "cross-hatch",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 2722.191027683183,
"y": -25260.173383929192,
"strokeColor": "#000",
"backgroundColor": "#000",
"width": 33,
"height": 45,
"seed": 2002294311,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 33.23791410279167,
"fontFamily": 1,
"text": "✨",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "✨",
"lineHeight": 1.3538755729626375,
"index": "aH",
"autoResize": true
},
{
"type": "text",
"version": 4217,
"versionNonce": 1420710543,
"isDeleted": false,
"id": "MB8l2TTwR0kXB2m1XTig6",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 2769.1424079154212,
"y": -25247.893410880097,
"strokeColor": "#495057",
"backgroundColor": "#fff",
"width": 224.19189453125,
"height": 20,
"seed": 340867399,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 16,
"fontFamily": 1,
"text": "High Level Design (continued)",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "High Level Design (continued)",
"lineHeight": 1.25,
"index": "aI",
"autoResize": true
},
{
"type": "line",
"version": 2447,
"versionNonce": 1375805921,
"isDeleted": false,
"id": "JmLbiZkqCF_HuUwWYFGqJ",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 2722.9151174050876,
"y": -25212.707627981916,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 165.2005648542745,
"height": 0.8295616012067057,
"seed": 1284012135,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
165.2005648542745,
0.8295616012067057
]
],
"index": "aJ"
},
{
"type": "text",
"version": 3009,
"versionNonce": 595798191,
"isDeleted": false,
"id": "PVzZApbkMbjj_KI26Kr5A",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 2719.6640134904783,
"y": -25190.125121808094,
"strokeColor": "#1e1e1e",
"backgroundColor": "#fefefe",
"width": 784.1593627929688,
"height": 910,
"seed": 1976226695,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "Assigning URLs - Single Node\n\nWe need to lock on rows that don't exist ( can use predicate locks)\n-> Index on ShortURL makes predicate query much faster!\n-> Using a stored procedure can reduce network calls in event of hash collision\n\nAssigning URLs - Materializing Conflicts\n\nCan prepopulate every possible row in our database so they exist to lock on!\n(8 bytes * 1 trillion = ~16tb)\n\nAssigning URLs - Engine Implementation?\n\nWe don't need range queries, so a hash index would be super fast,\nbut we're storing 1pb of data so probably too expensive for in memory DB\n\nB - Tree is probably better for us!\n+Reads, -Writes\n\nAssigning URLs - Database Choice\n\nSo far we have:\n - Single Leader Replication\n - Partitioned\n - B-tree based\n\nSeems ok to use a relational DB, no plan to create distributed joins. MySQL?\n\nMaximizing Read Speeds\n\nReplicas + multiple partions ensure adequate ability to handle load\n-> Possilbe to get stale reads from replica, could check leader on null result\n\n\n",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Assigning URLs - Single Node\n\nWe need to lock on rows that don't exist ( can use predicate locks)\n-> Index on ShortURL makes predicate query much faster!\n-> Using a stored procedure can reduce network calls in event of hash collision\n\nAssigning URLs - Materializing Conflicts\n\nCan prepopulate every possible row in our database so they exist to lock on!\n(8 bytes * 1 trillion = ~16tb)\n\nAssigning URLs - Engine Implementation?\n\nWe don't need range queries, so a hash index would be super fast,\nbut we're storing 1pb of data so probably too expensive for in memory DB\n\nB - Tree is probably better for us!\n+Reads, -Writes\n\nAssigning URLs - Database Choice\n\nSo far we have:\n - Single Leader Replication\n - Partitioned\n - B-tree based\n\nSeems ok to use a relational DB, no plan to create distributed joins. MySQL?\n\nMaximizing Read Speeds\n\nReplicas + multiple partions ensure adequate ability to handle load\n-> Possilbe to get stale reads from replica, could check leader on null result\n\n\n",
"lineHeight": 1.3,
"index": "aK",
"autoResize": true
},
{
"type": "rectangle",
"version": 2596,
"versionNonce": 673463745,
"isDeleted": false,
"id": "ZdLlxKj7d-TsyWAkhA2vQ",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1270.1892091330462,
"y": -24315.424461947616,
"strokeColor": "#495057",
"backgroundColor": "transparent",
"width": 908.4307242809056,
"height": 1027.450254178248,
"seed": 518288972,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "aL"
},
{
"type": "text",
"version": 2904,
"versionNonce": 160971471,
"isDeleted": false,
"id": "ExGvokmfdai2I7gSXOsg_",
"fillStyle": "cross-hatch",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1285.0834656898176,
"y": -24299.981264773018,
"strokeColor": "#000",
"backgroundColor": "#000",
"width": 33,
"height": 45,
"seed": 840420556,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 33.23791410279167,
"fontFamily": 1,
"text": "✨",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "✨",
"lineHeight": 1.3538755729626375,
"index": "aM",
"autoResize": true
},
{
"type": "text",
"version": 3777,
"versionNonce": 658038177,
"isDeleted": false,
"id": "7-QNiat88qMkarnaCVlfo",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1332.0348459220556,
"y": -24287.701291723923,
"strokeColor": "#495057",
"backgroundColor": "#fff",
"width": 224.19189453125,
"height": 20,
"seed": 1637634892,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 16,
"fontFamily": 1,
"text": "High Level Design (continued)",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "High Level Design (continued)",
"lineHeight": 1.25,
"index": "aN",
"autoResize": true
},
{
"type": "line",
"version": 2005,
"versionNonce": 730204399,
"isDeleted": false,
"id": "srOMd3wGAG6_EHxS6kLJN",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1285.807555411722,
"y": -24252.51550882574,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 165.2005648542745,
"height": 0.8295616012067057,
"seed": 1808533964,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
165.2005648542745,
0.8295616012067057
]
],
"index": "aO"
},
{
"type": "text",
"version": 2599,
"versionNonce": 1047429505,
"isDeleted": false,
"id": "QgGAZ1OtP7mOrDnwLA865",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 1282.3856974786074,
"y": -24229.32412961776,
"strokeColor": "#1e1e1e",
"backgroundColor": "#fefefe",
"width": 856.499267578125,
"height": 910,
"seed": 868282444,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "Hot Links -> basically use cache \n\nWrite back, can have write conflicts\nWrite through, slows down write speeds\nWrite around, causes initial cache miss best option for us\n-> Write to db first, as users read from DB, DB sends to cache first\n-> Use LRU eviction\n\nAnalytics - Naive solution\n\nWe keep a clicks counter per row, could we just increment it?\n\nWe would have to grab a lock/use atomic increment operation per row\n-> For super popular links this is too slow\n\nAnalytics - Stream Processing\n\nIdea: We can place individual data somewhere that doesn't require grabbing locks, and\nthen aggregate them later!\n\nOptions:\nDatabase -> relatively, slow\nIn memory message broker -> super fast, not durable\nLog Based message -> Basically writing to write ahead, durable\n\nCan use Kafka as messaging broker\n\nAnalytics - Click Consumer\n\nOptions:\nHDFS + Spark -> Batch job to aggregate clicks, may be too infrequent\nFlink -> Processes each event individually, may send too many writes to database\ndepending on implementation\nSpark Streaming -> Processes events in configurable mini-batch siz\n",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Hot Links -> basically use cache \n\nWrite back, can have write conflicts\nWrite through, slows down write speeds\nWrite around, causes initial cache miss best option for us\n-> Write to db first, as users read from DB, DB sends to cache first\n-> Use LRU eviction\n\nAnalytics - Naive solution\n\nWe keep a clicks counter per row, could we just increment it?\n\nWe would have to grab a lock/use atomic increment operation per row\n-> For super popular links this is too slow\n\nAnalytics - Stream Processing\n\nIdea: We can place individual data somewhere that doesn't require grabbing locks, and\nthen aggregate them later!\n\nOptions:\nDatabase -> relatively, slow\nIn memory message broker -> super fast, not durable\nLog Based message -> Basically writing to write ahead, durable\n\nCan use Kafka as messaging broker\n\nAnalytics - Click Consumer\n\nOptions:\nHDFS + Spark -> Batch job to aggregate clicks, may be too infrequent\nFlink -> Processes each event individually, may send too many writes to database\ndepending on implementation\nSpark Streaming -> Processes events in configurable mini-batch siz\n",
"lineHeight": 1.3,
"index": "aP",
"autoResize": true
},
{
"type": "rectangle",
"version": 2630,
"versionNonce": 114627343,
"isDeleted": false,
"id": "K_9cYNKffaMoOerN9wVaT",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 2188.979807497199,
"y": -24311.09380554676,
"strokeColor": "#495057",
"backgroundColor": "transparent",
"width": 974.2373280901254,
"height": 1013.2005798889625,
"seed": 590160244,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "aQ"
},
{
"type": "text",
"version": 2988,
"versionNonce": 1258596705,
"isDeleted": false,
"id": "VxjrilE5Pwx4DVQq-8RE3",
"fillStyle": "cross-hatch",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 2204.9530020665966,
"y": -24294.531905172396,
"strokeColor": "#000",
"backgroundColor": "#000",
"width": 36,
"height": 48.25979416180467,
"seed": 1366348532,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 35.645664288188236,
"fontFamily": 1,
"text": "✨",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "✨",
"lineHeight": 1.3538755729626375,
"index": "aR",
"autoResize": true
},
{
"type": "text",
"version": 3863,
"versionNonce": 1409145135,
"isDeleted": false,
"id": "lczP7Z8V89jru47fWN_hC",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 2255.3055341914956,
"y": -24281.362372468804,
"strokeColor": "#495057",
"backgroundColor": "#fff",
"width": 240.30564880371094,
"height": 21.448797405246523,
"seed": 792876148,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 17.159037924197218,
"fontFamily": 1,
"text": "High Level Design (continued)",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "High Level Design (continued)",
"lineHeight": 1.25,
"index": "aS",
"autoResize": true
},
{
"type": "line",
"version": 2088,
"versionNonce": 1447744833,
"isDeleted": false,
"id": "26qlWkcP5iw9zFgNuznX-",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 2205.729544754014,
"y": -24243.627736022394,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 177.16767233958112,
"height": 0.889654935972727,
"seed": 711435764,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
177.16767233958112,
0.889654935972727
]
],
"index": "aT"
},
{
"type": "text",
"version": 2700,
"versionNonce": 677960527,
"isDeleted": false,
"id": "E-yex1G4-5pnP5RI3qPNe",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 2202.713806990277,
"y": -24219.615542169326,
"strokeColor": "#1e1e1e",
"backgroundColor": "#fefefe",
"width": 945.9962158203125,
"height": 892.2699720582553,
"seed": 132564852,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 21.448797405246523,
"fontFamily": 1,
"text": "Analytics - Exactly Once?\n\nEvents are only processed exactly once internally \n\nOptions: Two Phase Commit (super slow) or Idempotency Key (scales poorly if\nmany publishes for same row)\n\nAnalytics - One Publisher per Row\n\nPartition by short URL\n\nWe can ensure that only one consumer is publishing clicks for a shortId at \ntime. Benefits include fewer idempotence keys to store, no need to grab locks on \npublish step\n\nDeleting Expired Links\n\nCan use batch job every x hours to check for expired links. (MySQL event scheduler)\n-> Only has to grab lock of row currently being read\n-> if currentTime > row.expiredTime:\n row.delete()\n\nPasteBin - Huge Pastes\n\nFor pastes that are multiple GB, we cannot store them in our DB (64kb limit for\nMySql and 4gb limit for PostgresSQL)\n-> Could store in an objector store or HDFS\n-> Object store likely preferable, cheaper, no batch jobs to run, don't need data locality\n-> CDNs will greatly improve latency, if the massive files are infrequent enough\na write through model could make sense.\n\nWriting in series allows us to avoid 2 phase commit",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Analytics - Exactly Once?\n\nEvents are only processed exactly once internally \n\nOptions: Two Phase Commit (super slow) or Idempotency Key (scales poorly if\nmany publishes for same row)\n\nAnalytics - One Publisher per Row\n\nPartition by short URL\n\nWe can ensure that only one consumer is publishing clicks for a shortId at \ntime. Benefits include fewer idempotence keys to store, no need to grab locks on \npublish step\n\nDeleting Expired Links\n\nCan use batch job every x hours to check for expired links. (MySQL event scheduler)\n-> Only has to grab lock of row currently being read\n-> if currentTime > row.expiredTime:\n row.delete()\n\nPasteBin - Huge Pastes\n\nFor pastes that are multiple GB, we cannot store them in our DB (64kb limit for\nMySql and 4gb limit for PostgresSQL)\n-> Could store in an objector store or HDFS\n-> Object store likely preferable, cheaper, no batch jobs to run, don't need data locality\n-> CDNs will greatly improve latency, if the massive files are infrequent enough\na write through model could make sense.\n\nWriting in series allows us to avoid 2 phase commit",
"lineHeight": 1.3,
"index": "aU",
"autoResize": true
},
{
"type": "text",
"version": 917,
"versionNonce": 329286945,
"isDeleted": false,
"id": "915MF7nYQpOlfq-i7lBP8",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3235.956440425425,
"y": -24158.0056895338,
"strokeColor": "#000000",
"backgroundColor": "#7950f2",
"width": 58.73994445800781,
"height": 50,
"seed": 1475713228,
"groupIds": [
"7chQWbwtbkHby7R1FIw3O",
"k5B5kMx23X4HC9g2jYQF2"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "Writer\n",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Writer\n",
"lineHeight": 1.25,
"index": "aV",
"autoResize": true
},
{
"type": "ellipse",
"version": 828,
"versionNonce": 1483643247,
"isDeleted": false,
"id": "9_3uwKHbJogIVdKDUHCd4",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3240.6267608441185,
"y": -24122.386126978596,
"strokeColor": "#000000",
"backgroundColor": "#ced4da",
"width": 37.57595022445071,
"height": 37.57595022445071,
"seed": 568368972,
"groupIds": [
"yloxKyjpTzQZZYGdADuLQ",
"k5B5kMx23X4HC9g2jYQF2"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "aW"
},
{
"type": "line",
"version": 1141,
"versionNonce": 510998785,
"isDeleted": false,
"id": "Jr8URnGW3VpHLxoBAyjCk",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3275.5764508899656,
"y": -24033.489858874058,
"strokeColor": "#000000",
"backgroundColor": "#ced4da",
"width": 35.75952384469121,
"height": 45.45060850648245,
"seed": 900126156,
"groupIds": [
"yloxKyjpTzQZZYGdADuLQ",
"k5B5kMx23X4HC9g2jYQF2"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
1.4303809537876475,
-32.082782475164095
],
[
-4.29114286136295,
-42.77704330021877
],
[
-20.740523829920903,
-45.45060850648245
],
[
-32.898761937115914,
-37.429912887691444
],
[
-34.32914289090356,
-0.8911884020878897
],
[
0,
0
]
],
"index": "aX"
},
{
"type": "rectangle",
"version": 1334,
"versionNonce": 425169807,
"isDeleted": false,
"id": "_56lXGyBefnvPUDz88S7w",
"fillStyle": "hachure",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3417.0747127579916,
"y": -24125.223333963833,
"strokeColor": "#000000",
"backgroundColor": "#ced4da",
"width": 112.66774779966488,
"height": 30.16569648281405,
"seed": 1809324108,
"groupIds": [
"yvbu149sAMcTrGAU0jnoo",
"1GlrLObdPNhgqR2BbgLjI"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "aY"
},
{
"type": "rectangle",
"version": 1427,
"versionNonce": 2018013409,
"isDeleted": false,
"id": "7LIvBnAQ0Qb2NNFmAzqbA",
"fillStyle": "hachure",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3417.0747127579916,
"y": -24091.23069785571,
"strokeColor": "#000000",
"backgroundColor": "#ced4da",
"width": 112.66774779966488,
"height": 30.16569648281405,
"seed": 608644812,
"groupIds": [
"yvbu149sAMcTrGAU0jnoo",
"1GlrLObdPNhgqR2BbgLjI"
],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "fgho-3Ybp-IeMgXs0XRRa",
"type": "arrow"
},
{
"id": "8RsgbFfLWNXBHQ0Lubois",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "aZ"
},
{
"type": "rectangle",
"version": 1482,
"versionNonce": 1666992559,
"isDeleted": false,
"id": "t1HAKEBDSWSr-n1mtzQS6",
"fillStyle": "hachure",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3417.0747127579916,
"y": -24057.182217179346,
"strokeColor": "#000000",
"backgroundColor": "#ced4da",
"width": 112.66774779966488,
"height": 30.16569648281405,
"seed": 1536128332,
"groupIds": [
"yvbu149sAMcTrGAU0jnoo",
"1GlrLObdPNhgqR2BbgLjI"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "aa"
},
{
"type": "ellipse",
"version": 1383,
"versionNonce": 1185524929,
"isDeleted": false,
"id": "ds-DOhALX7asT_cYjhtop",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3510.8433154603254,
"y": -24079.765834987586,
"strokeColor": "#000000",
"backgroundColor": "#ffff",
"width": 8.75961710275031,
"height": 8.75961710275031,
"seed": 1057680332,
"groupIds": [
"yvbu149sAMcTrGAU0jnoo",
"1GlrLObdPNhgqR2BbgLjI"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "ab"
},
{
"type": "ellipse",
"version": 1426,
"versionNonce": 329595855,
"isDeleted": false,
"id": "R0VpYFRyxs6zGMN51_t2M",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3510.8322698351412,
"y": -24046.50079568808,
"strokeColor": "#000000",
"backgroundColor": "#ffff",
"width": 8.75961710275031,
"height": 8.75961710275031,
"seed": 1087607372,
"groupIds": [
"yvbu149sAMcTrGAU0jnoo",
"1GlrLObdPNhgqR2BbgLjI"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "ac"
},
{
"type": "ellipse",
"version": 1355,
"versionNonce": 1362652321,
"isDeleted": false,
"id": "PgDNZwVaPXgt2emCCkOJb",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3510.8322698351412,
"y": -24113.88374157931,
"strokeColor": "#000000",
"backgroundColor": "#ffff",
"width": 8.75961710275031,
"height": 8.75961710275031,
"seed": 2143512780,
"groupIds": [
"yvbu149sAMcTrGAU0jnoo",
"1GlrLObdPNhgqR2BbgLjI"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "ad"
},
{
"type": "text",
"version": 1307,
"versionNonce": 1313532399,
"isDeleted": false,
"id": "cnLKyW40qN8v4QOxEojyw",
"fillStyle": "solid",
"strokeWidth": 4,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3399.1790910433247,
"y": -24154.984407386462,
"strokeColor": "#000000",
"backgroundColor": "#ffff",
"width": 143.17991638183594,
"height": 25,
"seed": 796159820,
"groupIds": [
"1GlrLObdPNhgqR2BbgLjI"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "Load Balancer",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Load Balancer",
"lineHeight": 1.25,
"index": "ae",
"autoResize": true
},
{
"type": "rectangle",
"version": 721,
"versionNonce": 1067724929,
"isDeleted": false,
"id": "FtMx6WlR11mSHXnMvrulB",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3672.204999322099,
"y": -24133.77407439035,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 118.3203125,
"height": 119.703125,
"seed": 1077406796,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "0cT_depus13ARt_XPmpyz",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "af"
},
{
"type": "rectangle",
"version": 661,
"versionNonce": 542495759,
"isDeleted": false,
"id": "wILGN_qIcghmfdM0JpQvN",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3664.8509047850985,
"y": -24142.764102821362,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 118.3203125,
"height": 119.703125,
"seed": 93094604,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "BcfV7zc3Kjklzf9eJn3VH",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "ag"
},
{
"type": "rectangle",
"version": 785,
"versionNonce": 397178977,
"isDeleted": false,
"id": "l4uHDV-Lwx_yoPr14da7N",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3655.6126235350985,
"y": -24152.467227821362,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 118.3203125,
"height": 119.703125,
"seed": 285886796,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"type": "text",
"id": "uZNkhIY3PhucyHCQvR5rh"
},
{
"id": "8RsgbFfLWNXBHQ0Lubois",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "ah"
},
{
"type": "text",
"version": 455,
"versionNonce": 1639873071,
"isDeleted": false,
"id": "uZNkhIY3PhucyHCQvR5rh",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3684.7581313475985,
"y": -24115.615665321362,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 60.029296875,
"height": 46,
"seed": 887347956,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "URL\nAssign",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "l4uHDV-Lwx_yoPr14da7N",
"originalText": "URL\nAssign",
"lineHeight": 1.15,
"index": "ai",
"autoResize": true
},
{
"type": "ellipse",
"version": 1576,
"versionNonce": 2065744961,
"isDeleted": false,
"id": "I0Sm-ag0jtU36pCAwTkmF",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 3900.429511070296,
"y": -24276.975061951507,
"strokeColor": "#343a40",
"backgroundColor": "#ced4da",
"width": 109.8321415321732,
"height": 35.97949463984984,
"seed": 1264922956,
"groupIds": [
"uDVjbqWoJi3ozLF4qw4dV",
"dYjxaMeZ7iqHW9HbnxUDF"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "aj"
},
{
"type": "ellipse",
"version": 1639,
"versionNonce": 1466784847,
"isDeleted": false,
"id": "yGk8RPEnmXLaiPq4N4buc",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 3898.8297165667736,
"y": -24222.13275309881,
"strokeColor": "#343a40",
"backgroundColor": "#ced4da",
"width": 109.8321415321732,
"height": 35.97949463984984,
"seed": 617162700,
"groupIds": [
"uDVjbqWoJi3ozLF4qw4dV",
"dYjxaMeZ7iqHW9HbnxUDF"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "ak"
},
{
"type": "line",
"version": 2641,
"versionNonce": 635474977,
"isDeleted": false,
"id": "nEQupR3SWZmdPRrhYDWni",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4007.6370874815775,
"y": -24250.44789270831,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 62.9199730922038,
"height": 16.569826567722288,
"seed": 1265258060,
"groupIds": [
"uDVjbqWoJi3ozLF4qw4dV",
"dYjxaMeZ7iqHW9HbnxUDF"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
-7.717788171236833,
4.324090850727728
],
[
-19.183327474436958,
7.7110082617861595
],
[
-42.81629072420273,
10.406308680810248
],
[
-61.81392396082347,
10.018292165497847
],
[
-51.88601215932861,
16.569826567722288
],
[
0.6039230297040357,
15.130832712019613
],
[
1.106049131380324,
0.15087939971484624
]
],
"index": "al"
},
{
"type": "line",
"version": 3599,
"versionNonce": 356186735,
"isDeleted": false,
"id": "W0quzuitCWzOmR9dpnOFj",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3899.5892585891133,
"y": -24257.721195930695,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 56.91296547607416,
"height": 22.041797053944865,
"seed": 2270412,
"groupIds": [
"uDVjbqWoJi3ozLF4qw4dV",
"dYjxaMeZ7iqHW9HbnxUDF"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
7.065736032717557,
6.881076768591961
],
[
17.995008500752938,
11.734153706773773
],
[
40.417659232343,
16.48280391057008
],
[
56.91296547607416,
18.341940802077865
],
[
50.169384719348834,
22.041797053944865
],
[
0.791927866256203,
18.72707725538081
],
[
0.05115903779665124,
5.6467225601126
]
],
"index": "am"
},
{
"type": "rectangle",
"version": 2182,
"versionNonce": 735799297,
"isDeleted": false,
"id": "gmdLRhErw-lsUfUZLQQA2",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3901.606035895911,
"y": -24239.421371397086,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 106.25696548475567,
"height": 34.374661986468986,
"seed": 1485581132,
"groupIds": [
"uDVjbqWoJi3ozLF4qw4dV",
"dYjxaMeZ7iqHW9HbnxUDF"
],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "BcfV7zc3Kjklzf9eJn3VH",
"type": "arrow"
},
{
"id": "cCgdzTsx4-Z9nE8Rjwze7",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "an"
},
{
"type": "line",
"version": 1678,
"versionNonce": 535811215,
"isDeleted": false,
"id": "LdTbdkwVPFD3St675oq7Q",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 3899.749427239047,
"y": -24262.09829541332,
"strokeColor": "#343a40",
"backgroundColor": "white",
"width": 1.7391052169640349,
"height": 58.886483736523175,
"seed": 654369228,
"groupIds": [
"uDVjbqWoJi3ozLF4qw4dV",
"dYjxaMeZ7iqHW9HbnxUDF"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
1.7391052169640349,
58.886483736523175
]
],
"index": "ao"
},
{
"type": "line",
"version": 1546,
"versionNonce": 1997586401,
"isDeleted": false,
"id": "OzOMSq4ilKXCN8HbuKp-b",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 4007.5332649895363,
"y": -24262.93522497758,
"strokeColor": "#343a40",
"backgroundColor": "white",
"width": 1.4566597020185434,
"height": 61.17970748476482,
"seed": 1654310988,
"groupIds": [
"uDVjbqWoJi3ozLF4qw4dV",
"dYjxaMeZ7iqHW9HbnxUDF"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
1.4566597020185434,
61.17970748476482
]
],
"index": "ap"
},
{
"type": "text",
"version": 2003,
"versionNonce": 1329883823,
"isDeleted": false,
"id": "VgDGd8-O36a7LUDORiiNH",
"fillStyle": "solid",
"strokeWidth": 4,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3851.3111395352016,
"y": -24309.935222745982,
"strokeColor": "#000000",
"backgroundColor": "#ffff",
"width": 123.31997680664062,
"height": 25,
"seed": 255057612,
"groupIds": [
"djiIB0NDdlo06CM5pe9K-",
"qrgMlfl1PRmTBvpXAEIDY",
"dYjxaMeZ7iqHW9HbnxUDF"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": " A - L",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": " A - L",
"lineHeight": 1.25,
"index": "aq",
"autoResize": true
},
{
"type": "ellipse",
"version": 1749,
"versionNonce": 93330369,
"isDeleted": false,
"id": "f5aUWJ1fCPZAQ1SXJO4ti",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 3902.2160916155135,
"y": -24051.21806968377,
"strokeColor": "#343a40",
"backgroundColor": "#ced4da",
"width": 109.8321415321732,
"height": 35.97949463984984,
"seed": 578875212,
"groupIds": [
"xpsfcxTcJamHceoFWUzY6",
"TyKsFQ5EHhYyI8SmSmviv"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "ar"
},
{
"type": "ellipse",
"version": 1812,
"versionNonce": 1877032143,
"isDeleted": false,
"id": "5j6MocND4Dk3wPdNq5FcC",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 3900.616297111991,
"y": -23996.375760831066,
"strokeColor": "#343a40",
"backgroundColor": "#ced4da",
"width": 109.8321415321732,
"height": 35.97949463984984,
"seed": 1572677068,
"groupIds": [
"xpsfcxTcJamHceoFWUzY6",
"TyKsFQ5EHhYyI8SmSmviv"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "as"
},
{
"type": "line",
"version": 2814,
"versionNonce": 1735981985,
"isDeleted": false,
"id": "jrxgEzx5Bej-S9nKXrBLd",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4009.423668026794,
"y": -24024.69090044057,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 62.9199730922038,
"height": 16.569826567722288,
"seed": 19827788,
"groupIds": [
"xpsfcxTcJamHceoFWUzY6",
"TyKsFQ5EHhYyI8SmSmviv"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
-7.717788171236833,
4.324090850727728
],
[
-19.183327474436958,
7.7110082617861595
],
[
-42.81629072420273,
10.406308680810248
],
[
-61.81392396082347,
10.018292165497847
],
[
-51.88601215932861,
16.569826567722288
],
[
0.6039230297040357,
15.130832712019613
],
[
1.106049131380324,
0.15087939971484624
]
],
"index": "at"
},
{
"type": "line",
"version": 3772,
"versionNonce": 626969327,
"isDeleted": false,
"id": "XHLTh7YzkME2cPEUD1xzM",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3901.37583913433,
"y": -24031.964203662956,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 56.91296547607416,
"height": 22.041797053944865,
"seed": 783229644,
"groupIds": [
"xpsfcxTcJamHceoFWUzY6",
"TyKsFQ5EHhYyI8SmSmviv"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
7.065736032717557,
6.881076768591961
],
[
17.995008500752938,
11.734153706773773
],
[
40.417659232343,
16.48280391057008
],
[
56.91296547607416,
18.341940802077865
],
[
50.169384719348834,
22.041797053944865
],
[
0.791927866256203,
18.72707725538081
],
[
0.05115903779665124,
5.6467225601126
]
],
"index": "au"
},
{
"type": "rectangle",
"version": 2355,
"versionNonce": 2096816001,
"isDeleted": false,
"id": "C4GaAvc0fTmuJPAudcJI1",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3903.3926164411287,
"y": -24013.664379129343,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 106.25696548475567,
"height": 34.374661986468986,
"seed": 1020848460,
"groupIds": [
"xpsfcxTcJamHceoFWUzY6",
"TyKsFQ5EHhYyI8SmSmviv"
],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "0cT_depus13ARt_XPmpyz",
"type": "arrow"
},
{
"id": "_3KPnPu9aCc8sSTcmpwSH",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "av"
},
{
"type": "line",
"version": 1851,
"versionNonce": 205886735,
"isDeleted": false,
"id": "dvCtbBhE2tqqbiNSyskBH",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 3901.5360077842643,
"y": -24036.341303145582,
"strokeColor": "#343a40",
"backgroundColor": "white",
"width": 1.7391052169640349,
"height": 58.886483736523175,
"seed": 520478668,
"groupIds": [
"xpsfcxTcJamHceoFWUzY6",
"TyKsFQ5EHhYyI8SmSmviv"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
1.7391052169640349,
58.886483736523175
]
],
"index": "aw"
},
{
"type": "line",
"version": 1719,
"versionNonce": 1951745889,
"isDeleted": false,
"id": "6CH1_aCkt99oDp12xjXLw",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 4009.319845534753,
"y": -24037.178232709844,
"strokeColor": "#343a40",
"backgroundColor": "white",
"width": 1.4566597020185434,
"height": 61.17970748476482,
"seed": 1297090124,
"groupIds": [
"xpsfcxTcJamHceoFWUzY6",
"TyKsFQ5EHhYyI8SmSmviv"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
1.4566597020185434,
61.17970748476482
]
],
"index": "ax"
},
{
"type": "text",
"version": 2192,
"versionNonce": 470686511,
"isDeleted": false,
"id": "knFEZS7CqIKHEHIahA9ZC",
"fillStyle": "solid",
"strokeWidth": 4,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3853.097720080418,
"y": -24084.178230478243,
"strokeColor": "#000000",
"backgroundColor": "#ffff",
"width": 119.47996520996094,
"height": 25,
"seed": 747723980,
"groupIds": [
"zNSBccifWyqwbN4_AbrY2",
"9OxrZs2-TAjSJnEawuiyt",
"TyKsFQ5EHhYyI8SmSmviv"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": " M - Z",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": " M - Z",
"lineHeight": 1.25,
"index": "ay",
"autoResize": true
},
{
"type": "ellipse",
"version": 1664,
"versionNonce": 131576641,
"isDeleted": false,
"id": "aqDyuomwmWo6KtIRnLt-o",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 4140.88497858882,
"y": -24279.160917560195,
"strokeColor": "#343a40",
"backgroundColor": "#ced4da",
"width": 109.8321415321732,
"height": 35.97949463984984,
"seed": 1546210636,
"groupIds": [
"fsnzjMuS4Cl6TKJMx8VIg",
"3Mk836KF1MkvVx_0HInjU"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "az"
},
{
"type": "ellipse",
"version": 1727,
"versionNonce": 1226890575,
"isDeleted": false,
"id": "nOrA083VzyC78qmNFWCuc",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 4139.285184085297,
"y": -24224.318608707497,
"strokeColor": "#343a40",
"backgroundColor": "#ced4da",
"width": 109.8321415321732,
"height": 35.97949463984984,
"seed": 1051313100,
"groupIds": [
"fsnzjMuS4Cl6TKJMx8VIg",
"3Mk836KF1MkvVx_0HInjU"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b00"
},
{
"type": "line",
"version": 2729,
"versionNonce": 2078384929,
"isDeleted": false,
"id": "qChq_DNYZdGAJeGsDc8Iu",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4248.092555000101,
"y": -24252.633748317003,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 62.9199730922038,
"height": 16.569826567722288,
"seed": 383216204,
"groupIds": [
"fsnzjMuS4Cl6TKJMx8VIg",
"3Mk836KF1MkvVx_0HInjU"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
-7.717788171236833,
4.324090850727728
],
[
-19.183327474436958,
7.7110082617861595
],
[
-42.81629072420273,
10.406308680810248
],
[
-61.81392396082347,
10.018292165497847
],
[
-51.88601215932861,
16.569826567722288
],
[
0.6039230297040357,
15.130832712019613
],
[
1.106049131380324,
0.15087939971484624
]
],
"index": "b01"
},
{
"type": "line",
"version": 3687,
"versionNonce": 1725324143,
"isDeleted": false,
"id": "fuxvljJ7VUfOMmyGaisaq",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4140.044726107637,
"y": -24259.90705153938,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 56.91296547607416,
"height": 22.041797053944865,
"seed": 395067596,
"groupIds": [
"fsnzjMuS4Cl6TKJMx8VIg",
"3Mk836KF1MkvVx_0HInjU"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
7.065736032717557,
6.881076768591961
],
[
17.995008500752938,
11.734153706773773
],
[
40.417659232343,
16.48280391057008
],
[
56.91296547607416,
18.341940802077865
],
[
50.169384719348834,
22.041797053944865
],
[
0.791927866256203,
18.72707725538081
],
[
0.05115903779665124,
5.6467225601126
]
],
"index": "b02"
},
{
"type": "rectangle",
"version": 2270,
"versionNonce": 1558353665,
"isDeleted": false,
"id": "SR-V7TfG8TAbur59SBxEh",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4142.061503414435,
"y": -24241.607227005774,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 106.25696548475567,
"height": 34.374661986468986,
"seed": 140658508,
"groupIds": [
"fsnzjMuS4Cl6TKJMx8VIg",
"3Mk836KF1MkvVx_0HInjU"
],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "cCgdzTsx4-Z9nE8Rjwze7",
"type": "arrow"
},
{
"id": "NXUqr8EMDAyMlvOJ0Is8g",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b03"
},
{
"type": "line",
"version": 1766,
"versionNonce": 1232541071,
"isDeleted": false,
"id": "3w1FkqmtJf-RZ4TMMHutF",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 4140.20489475757,
"y": -24264.284151022013,
"strokeColor": "#343a40",
"backgroundColor": "white",
"width": 1.7391052169640349,
"height": 58.886483736523175,
"seed": 766737868,
"groupIds": [
"fsnzjMuS4Cl6TKJMx8VIg",
"3Mk836KF1MkvVx_0HInjU"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
1.7391052169640349,
58.886483736523175
]
],
"index": "b04"
},
{
"type": "line",
"version": 1634,
"versionNonce": 2103054049,
"isDeleted": false,
"id": "H6DOebYSC4PXmCUXAw_VK",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 4247.98873250806,
"y": -24265.12108058627,
"strokeColor": "#343a40",
"backgroundColor": "white",
"width": 1.4566597020185434,
"height": 61.17970748476482,
"seed": 815391820,
"groupIds": [
"fsnzjMuS4Cl6TKJMx8VIg",
"3Mk836KF1MkvVx_0HInjU"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
1.4566597020185434,
61.17970748476482
]
],
"index": "b05"
},
{
"type": "rectangle",
"version": 892,
"versionNonce": 674991023,
"isDeleted": false,
"id": "HAI5_ccVU4MKLIK8JbzFm",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4399.200158904701,
"y": -24318.709506367555,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 118.3203125,
"height": 119.703125,
"seed": 2023891060,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"type": "text",
"id": "ploVAG6-y-MjDHnvMvqu1"
},
{
"id": "NXUqr8EMDAyMlvOJ0Is8g",
"type": "arrow"
},
{
"id": "5pDMW6BsD-HsE18axPgch",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b06"
},
{
"type": "text",
"version": 443,
"versionNonce": 869763777,
"isDeleted": false,
"id": "ploVAG6-y-MjDHnvMvqu1",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4437.803674529701,
"y": -24270.357943867555,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 41.11328125,
"height": 23,
"seed": 2084045132,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "F - L",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "HAI5_ccVU4MKLIK8JbzFm",
"originalText": "F - L",
"lineHeight": 1.15,
"index": "b07",
"autoResize": true
},
{
"type": "rectangle",
"version": 547,
"versionNonce": 1061961167,
"isDeleted": false,
"id": "Dq_2JnZS9MRUKVLpIU91d",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4407.939183894895,
"y": -24454.296696009314,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 118.3203125,
"height": 119.703125,
"seed": 540174452,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b08"
},
{
"type": "rectangle",
"version": 487,
"versionNonce": 1492814497,
"isDeleted": false,
"id": "_gQgqG6zZ-J7QkD4YHCS3",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4400.5850893578945,
"y": -24463.286724440328,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 118.3203125,
"height": 119.703125,
"seed": 741685748,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b09"
},
{
"type": "rectangle",
"version": 562,
"versionNonce": 834776047,
"isDeleted": false,
"id": "ddJJvDi4DOXqfdyXtevfl",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4391.3468081078945,
"y": -24472.989849440328,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 118.3203125,
"height": 119.703125,
"seed": 585227124,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"type": "text",
"id": "18UhwKeWlBAmTHrb_y2pX"
},
{
"id": "ScuIBj3phJeI6MBoVWDO5",
"type": "arrow"
},
{
"id": "RLIkw0243N2H-bd2z2fQw",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0A"
},
{
"type": "text",
"version": 252,
"versionNonce": 91393665,
"isDeleted": false,
"id": "18UhwKeWlBAmTHrb_y2pX",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4431.0587221703945,
"y": -24424.638286940328,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 38.896484375,
"height": 23,
"seed": 1302445300,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "A -E",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "ddJJvDi4DOXqfdyXtevfl",
"originalText": "A -E",
"lineHeight": 1.15,
"index": "b0B",
"autoResize": true
},
{
"type": "rectangle",
"version": 975,
"versionNonce": 732190223,
"isDeleted": false,
"id": "9e6XyqUzBW0TjNSIiTxCs",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4402.091890335882,
"y": -24174.52174091718,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 118.3203125,
"height": 119.703125,
"seed": 1545314548,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"type": "text",
"id": "_IF5rNnPHGm2faJYiG8Ns"
},
{
"id": "Fy4FzdBdy7PTv0RjAMDtR",
"type": "arrow"
},
{
"id": "AOE3iaKHGIqWlCTZj8bs5",
"type": "arrow"
},
{
"id": "OyfDRLKzILZOMXPMVdvMB",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0C"
},
{
"type": "text",
"version": 443,
"versionNonce": 268375649,
"isDeleted": false,
"id": "_IF5rNnPHGm2faJYiG8Ns",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4437.365327835882,
"y": -24126.17017841718,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 47.7734375,
"height": 23,
"seed": 185395404,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "M - S",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "9e6XyqUzBW0TjNSIiTxCs",
"originalText": "M - S",
"lineHeight": 1.15,
"index": "b0D",
"autoResize": true
},
{
"type": "rectangle",
"version": 957,
"versionNonce": 1139588143,
"isDeleted": false,
"id": "9TofxVN7c1yIELG-4UXOP",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4403.713227274578,
"y": -24025.324964704272,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 118.3203125,
"height": 119.703125,
"seed": 1130057076,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"type": "text",
"id": "74aRBqUYdfOSK9tQSCToo"
},
{
"id": "K1W2frbL77bGvvhzG8bVZ",
"type": "arrow"
},
{
"id": "QWwNZq_mLm5o_rVc9VHO-",
"type": "arrow"
},
{
"id": "8RiuNBZFMd_IuXadLJwFM",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0E"
},
{
"type": "text",
"version": 444,
"versionNonce": 1265607233,
"isDeleted": false,
"id": "74aRBqUYdfOSK9tQSCToo",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4441.769867899578,
"y": -23976.973402204272,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 42.20703125,
"height": 23,
"seed": 1363112436,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "T - Z",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "9TofxVN7c1yIELG-4UXOP",
"originalText": "T - Z",
"lineHeight": 1.15,
"index": "b0F",
"autoResize": true
},
{
"type": "rectangle",
"version": 771,
"versionNonce": 511925839,
"isDeleted": false,
"id": "_-1XjqvtPVaMIvEumXS-q",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4675.523835056899,
"y": -24200.76141181895,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 118.3203125,
"height": 119.703125,
"seed": 1973989364,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "4fw5xotb0IJ4s5CILDKgW",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0G"
},
{
"type": "rectangle",
"version": 711,
"versionNonce": 77836833,
"isDeleted": false,
"id": "sWoLzW25dvx81-68Db1iu",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4668.169740519898,
"y": -24209.751440249962,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 118.3203125,
"height": 119.703125,
"seed": 443978100,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "4fw5xotb0IJ4s5CILDKgW",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0H"
},
{
"type": "rectangle",
"version": 838,
"versionNonce": 1312865391,
"isDeleted": false,
"id": "grNsSzAQRRTStS1KcievQ",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4658.931459269898,
"y": -24219.454565249962,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 118.3203125,
"height": 119.703125,
"seed": 2114732788,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"type": "text",
"id": "5Cj5ARyWrWG0pKT6NRJod"
},
{
"id": "5pDMW6BsD-HsE18axPgch",
"type": "arrow"
},
{
"id": "RLIkw0243N2H-bd2z2fQw",
"type": "arrow"
},
{
"id": "8RiuNBZFMd_IuXadLJwFM",
"type": "arrow"
},
{
"id": "MAwJAFSvc1uF3BVqk-VRv",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0I"
},
{
"type": "text",
"version": 509,
"versionNonce": 1082836481,
"isDeleted": false,
"id": "5Cj5ARyWrWG0pKT6NRJod",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4694.185365519898,
"y": -24182.603002749962,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 47.8125,
"height": 46,
"seed": 384812148,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "URL\nRead",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "grNsSzAQRRTStS1KcievQ",
"originalText": "URL\nRead",
"lineHeight": 1.15,
"index": "b0J",
"autoResize": true
},
{
"type": "rectangle",
"version": 1394,
"versionNonce": 1995265679,
"isDeleted": false,
"id": "EX3TaZRHNr-ZHO5lg4TuP",
"fillStyle": "hachure",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4947.805898672684,
"y": -24191.39250491403,
"strokeColor": "#000000",
"backgroundColor": "#ced4da",
"width": 112.66774779966488,
"height": 30.16569648281405,
"seed": 1246950220,
"groupIds": [
"Sxz3WazX68uoLnYLgXxVR",
"Tenk_ZvtWebqp2oumd3JM"
],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "MAwJAFSvc1uF3BVqk-VRv",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0K"
},
{
"type": "rectangle",
"version": 1485,
"versionNonce": 975461857,
"isDeleted": false,
"id": "MbTi6cx9WFHjXczLKP_P6",
"fillStyle": "hachure",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4947.805898672684,
"y": -24157.399868805915,
"strokeColor": "#000000",
"backgroundColor": "#ced4da",
"width": 112.66774779966488,
"height": 30.16569648281405,
"seed": 1152297420,
"groupIds": [
"Sxz3WazX68uoLnYLgXxVR",
"Tenk_ZvtWebqp2oumd3JM"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0L"
},
{
"type": "rectangle",
"version": 1543,
"versionNonce": 1955809231,
"isDeleted": false,
"id": "bGL0uCagY3092YA-pHmn_",
"fillStyle": "hachure",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4947.805898672684,
"y": -24123.351388129544,
"strokeColor": "#000000",
"backgroundColor": "#ced4da",
"width": 112.66774779966488,
"height": 30.16569648281405,
"seed": 391090252,
"groupIds": [
"Sxz3WazX68uoLnYLgXxVR",
"Tenk_ZvtWebqp2oumd3JM"
],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "mwyLQty3MtixJtFteY-gK",
"type": "arrow"
},
{
"id": "qWpvLonxBjR9AoqYIGp2g",
"type": "arrow"
}
],
"updated": 1760909982030,
"link": null,
"locked": false,
"index": "b0M"
},
{
"type": "ellipse",
"version": 1442,
"versionNonce": 545257921,
"isDeleted": false,
"id": "X3UPM0szXLDdGcnroNsaj",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 5041.5745013750175,
"y": -24145.935005937783,
"strokeColor": "#000000",
"backgroundColor": "#ffff",
"width": 8.75961710275031,
"height": 8.75961710275031,
"seed": 1645192908,
"groupIds": [
"Sxz3WazX68uoLnYLgXxVR",
"Tenk_ZvtWebqp2oumd3JM"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0N"
},
{
"type": "ellipse",
"version": 1485,
"versionNonce": 585514703,
"isDeleted": false,
"id": "aP4__aByOLSGlEX2dEdLg",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 5041.563455749833,
"y": -24112.669966638285,
"strokeColor": "#000000",
"backgroundColor": "#ffff",
"width": 8.75961710275031,
"height": 8.75961710275031,
"seed": 965274956,
"groupIds": [
"Sxz3WazX68uoLnYLgXxVR",
"Tenk_ZvtWebqp2oumd3JM"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0O"
},
{
"type": "ellipse",
"version": 1414,
"versionNonce": 347937185,
"isDeleted": false,
"id": "dazBuEQqlcIj5Fm5yUAEN",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 5041.563455749833,
"y": -24180.052912529507,
"strokeColor": "#000000",
"backgroundColor": "#ffff",
"width": 8.75961710275031,
"height": 8.75961710275031,
"seed": 253060044,
"groupIds": [
"Sxz3WazX68uoLnYLgXxVR",
"Tenk_ZvtWebqp2oumd3JM"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0P"
},
{
"type": "text",
"version": 1366,
"versionNonce": 1953729775,
"isDeleted": false,
"id": "DmWHoPSDlaHCz85oHZhmu",
"fillStyle": "solid",
"strokeWidth": 4,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4929.910276958017,
"y": -24221.153578336663,
"strokeColor": "#000000",
"backgroundColor": "#ffff",
"width": 143.17991638183594,
"height": 25,
"seed": 416221772,
"groupIds": [
"Tenk_ZvtWebqp2oumd3JM"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "Load Balancer",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Load Balancer",
"lineHeight": 1.25,
"index": "b0Q",
"autoResize": true
},
{
"type": "text",
"version": 984,
"versionNonce": 1745567105,
"isDeleted": false,
"id": "LfWy8GSPYJx22y1Sq2Xj-",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 5216.846903827474,
"y": -24213.675463252795,
"strokeColor": "#000000",
"backgroundColor": "#7950f2",
"width": 68.75994873046875,
"height": 25,
"seed": 1848380276,
"groupIds": [
"SYGiM7JAw6Vn_XSzrobFe",
"1Jvxs1xCQkyM8BVRJe-b3"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "Reader",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Reader",
"lineHeight": 1.25,
"index": "b0R",
"autoResize": true
},
{
"type": "ellipse",
"version": 886,
"versionNonce": 1601312527,
"isDeleted": false,
"id": "55yCnLzrDpgshfY-kPnDb",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 5221.517224246168,
"y": -24177.869509634926,
"strokeColor": "#000000",
"backgroundColor": "#ced4da",
"width": 37.57595022445071,
"height": 37.57595022445071,
"seed": 1895988468,
"groupIds": [
"BT1s4c1czskgJ3IEd9HfJ",
"1Jvxs1xCQkyM8BVRJe-b3"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0S"
},
{
"type": "line",
"version": 1199,
"versionNonce": 430564705,
"isDeleted": false,
"id": "YZsVRcxCOP9zA9I4FiGcw",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 5256.466914292015,
"y": -24088.973241530388,
"strokeColor": "#000000",
"backgroundColor": "#ced4da",
"width": 35.75952384469121,
"height": 45.45060850648245,
"seed": 51297908,
"groupIds": [
"BT1s4c1czskgJ3IEd9HfJ",
"1Jvxs1xCQkyM8BVRJe-b3"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
1.4303809537876475,
-32.082782475164095
],
[
-4.29114286136295,
-42.77704330021877
],
[
-20.740523829920903,
-45.45060850648245
],
[
-32.898761937115914,
-37.429912887691444
],
[
-34.32914289090356,
-0.8911884020878897
],
[
0,
0
]
],
"index": "b0T"
},
{
"type": "arrow",
"version": 1061,
"versionNonce": 442129711,
"isDeleted": false,
"id": "fgho-3Ybp-IeMgXs0XRRa",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3287.1549976437045,
"y": -24079.24693894379,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 125.04432179098399,
"height": 1.6613202593798633,
"seed": 547316300,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": {
"elementId": "7LIvBnAQ0Qb2NNFmAzqbA",
"focus": 0.039450466953580794,
"gap": 4.875393323303115
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
125.04432179098399,
1.6613202593798633
]
],
"index": "b0U"
},
{
"type": "arrow",
"version": 1414,
"versionNonce": 350785857,
"isDeleted": false,
"id": "8RsgbFfLWNXBHQ0Lubois",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3542.1762209648587,
"y": -24073.61215167229,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 110.00680439165717,
"height": 3.562418700523267,
"seed": 45802356,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "7LIvBnAQ0Qb2NNFmAzqbA",
"focus": 0.2816941306847082,
"gap": 12.433760407201817
},
"endBinding": {
"elementId": "l4uHDV-Lwx_yoPr14da7N",
"focus": -0.21717306894839325,
"gap": 3.429598178582637
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
110.00680439165717,
-3.562418700523267
]
],
"index": "b0V"
},
{
"type": "arrow",
"version": 1325,
"versionNonce": 2023022415,
"isDeleted": false,
"id": "BcfV7zc3Kjklzf9eJn3VH",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3810.196847140329,
"y": -24104.62060867853,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 80.23149232021137,
"height": 126.76558659580405,
"seed": 1812188236,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "wILGN_qIcghmfdM0JpQvN",
"focus": 0.7465558494285033,
"gap": 27.025629855230363
},
"endBinding": {
"elementId": "gmdLRhErw-lsUfUZLQQA2",
"focus": 1.0951798617103403,
"gap": 11.177696435371217
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
80.23149232021137,
-126.76558659580405
]
],
"index": "b0W"
},
{
"type": "arrow",
"version": 1355,
"versionNonce": 791068961,
"isDeleted": false,
"id": "0cT_depus13ARt_XPmpyz",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3820.027752592736,
"y": -24096.922016342545,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 69.94672102374716,
"height": 91.20990764250018,
"seed": 179438196,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "FtMx6WlR11mSHXnMvrulB",
"focus": -1.01181688529734,
"gap": 29.502440770636895
},
"endBinding": {
"elementId": "C4GaAvc0fTmuJPAudcJI1",
"focus": -0.8967778100736121,
"gap": 13.418142824645656
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
69.94672102374716,
91.20990764250018
]
],
"index": "b0X"
},
{
"type": "arrow",
"version": 1319,
"versionNonce": 1283071343,
"isDeleted": false,
"id": "cCgdzTsx4-Z9nE8Rjwze7",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4019.797232029804,
"y": -24229.54504137863,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 117.27722140306287,
"height": 0.7022075323147874,
"seed": 663366772,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [
{
"type": "text",
"id": "w6sdWeoQsWVFfKJE-gu22"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "gmdLRhErw-lsUfUZLQQA2",
"focus": -0.39538745621788823,
"gap": 11.934230649137135
},
"endBinding": {
"elementId": "SR-V7TfG8TAbur59SBxEh",
"focus": 0.35276598854681573,
"gap": 4.987049981567907
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
117.27722140306287,
-0.7022075323147874
]
],
"index": "b0Y"
},
{
"type": "text",
"version": 58,
"versionNonce": 1708389633,
"isDeleted": false,
"id": "w6sdWeoQsWVFfKJE-gu22",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 2098.8055073642736,
"y": -22870.34171765927,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 79.15625,
"height": 55.199999999999996,
"seed": 1287156468,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 16,
"fontFamily": 2,
"text": "Single\nLeader\nReplication",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "cCgdzTsx4-Z9nE8Rjwze7",
"originalText": "Single\nLeader\nReplication",
"lineHeight": 1.15,
"index": "b0Z",
"autoResize": true
},
{
"type": "ellipse",
"version": 1756,
"versionNonce": 156407695,
"isDeleted": false,
"id": "mOEKEY1_ZVB5bXCftCxH2",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 4144.591246375671,
"y": -24052.047869147416,
"strokeColor": "#343a40",
"backgroundColor": "#ced4da",
"width": 109.8321415321732,
"height": 35.97949463984984,
"seed": 419876340,
"groupIds": [
"yVLqIy-YupTcARDe0Ho6H",
"vWGaJubssOSXVkBfNH_FF"
],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "AOE3iaKHGIqWlCTZj8bs5",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0a"
},
{
"type": "ellipse",
"version": 1818,
"versionNonce": 1550822625,
"isDeleted": false,
"id": "msUoAYrMyuIKlfG8jC3w2",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 4142.991451872148,
"y": -23997.20556029471,
"strokeColor": "#343a40",
"backgroundColor": "#ced4da",
"width": 109.8321415321732,
"height": 35.97949463984984,
"seed": 677441396,
"groupIds": [
"yVLqIy-YupTcARDe0Ho6H",
"vWGaJubssOSXVkBfNH_FF"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0b"
},
{
"type": "line",
"version": 2820,
"versionNonce": 626445743,
"isDeleted": false,
"id": "Opv4gTX4RSrc9ym-S59ZP",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4251.798822786953,
"y": -24025.520699904217,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 62.9199730922038,
"height": 16.569826567722288,
"seed": 1526391028,
"groupIds": [
"yVLqIy-YupTcARDe0Ho6H",
"vWGaJubssOSXVkBfNH_FF"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
-7.717788171236833,
4.324090850727728
],
[
-19.183327474436958,
7.7110082617861595
],
[
-42.81629072420273,
10.406308680810248
],
[
-61.81392396082347,
10.018292165497847
],
[
-51.88601215932861,
16.569826567722288
],
[
0.6039230297040357,
15.130832712019613
],
[
1.106049131380324,
0.15087939971484624
]
],
"index": "b0c"
},
{
"type": "line",
"version": 3778,
"versionNonce": 445212865,
"isDeleted": false,
"id": "sEn_1Tiw3C1eWy6xe4jHL",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4143.750993894489,
"y": -24032.794003126593,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 56.91296547607416,
"height": 22.041797053944865,
"seed": 1482334836,
"groupIds": [
"yVLqIy-YupTcARDe0Ho6H",
"vWGaJubssOSXVkBfNH_FF"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
7.065736032717557,
6.881076768591961
],
[
17.995008500752938,
11.734153706773773
],
[
40.417659232343,
16.48280391057008
],
[
56.91296547607416,
18.341940802077865
],
[
50.169384719348834,
22.041797053944865
],
[
0.791927866256203,
18.72707725538081
],
[
0.05115903779665124,
5.6467225601126
]
],
"index": "b0d"
},
{
"type": "rectangle",
"version": 2361,
"versionNonce": 1001340879,
"isDeleted": false,
"id": "Bk5zayrngAK9Eu_mHfZCX",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 4145.7677712012855,
"y": -24014.494178592988,
"strokeColor": "transparent",
"backgroundColor": "#ced4da",
"width": 106.25696548475567,
"height": 34.374661986468986,
"seed": 1732654068,
"groupIds": [
"yVLqIy-YupTcARDe0Ho6H",
"vWGaJubssOSXVkBfNH_FF"
],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "_3KPnPu9aCc8sSTcmpwSH",
"type": "arrow"
},
{
"id": "Fy4FzdBdy7PTv0RjAMDtR",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0e"
},
{
"type": "line",
"version": 1857,
"versionNonce": 163621025,
"isDeleted": false,
"id": "LO7_LcaaX1u_3dBlOFj9h",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 4143.911162544421,
"y": -24037.171102609227,
"strokeColor": "#343a40",
"backgroundColor": "white",
"width": 1.7391052169640349,
"height": 58.886483736523175,
"seed": 96703860,
"groupIds": [
"yVLqIy-YupTcARDe0Ho6H",
"vWGaJubssOSXVkBfNH_FF"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
1.7391052169640349,
58.886483736523175
]
],
"index": "b0f"
},
{
"type": "line",
"version": 1725,
"versionNonce": 1853124079,
"isDeleted": false,
"id": "CMxxRHJGt1VeUgD9p2_-X",
"fillStyle": "cross-hatch",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0.028963420403457896,
"x": 4251.695000294912,
"y": -24038.00803217349,
"strokeColor": "#343a40",
"backgroundColor": "white",
"width": 1.4566597020185434,
"height": 61.17970748476482,
"seed": 18401012,
"groupIds": [
"yVLqIy-YupTcARDe0Ho6H",
"vWGaJubssOSXVkBfNH_FF"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
1.4566597020185434,
61.17970748476482
]
],
"index": "b0g"
},
{
"type": "arrow",
"version": 1501,
"versionNonce": 868543617,
"isDeleted": false,
"id": "_3KPnPu9aCc8sSTcmpwSH",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4023.5034998166548,
"y": -24002.43199296585,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 117.27722140306287,
"height": 0.7022075323147874,
"seed": 231458932,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [
{
"type": "text",
"id": "ZPy5e8znDArKmfReiJCI2"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "C4GaAvc0fTmuJPAudcJI1",
"focus": -0.3172660121347748,
"gap": 13.85391789077039
},
"endBinding": {
"elementId": "Bk5zayrngAK9Eu_mHfZCX",
"focus": 0.3527659885470236,
"gap": 4.987049981567907
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
117.27722140306287,
-0.7022075323147874
]
],
"index": "b0h"
},
{
"type": "text",
"version": 61,
"versionNonce": 145676303,
"isDeleted": false,
"id": "ZPy5e8znDArKmfReiJCI2",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 2214.179899802161,
"y": -22677.319988589727,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 79.15625,
"height": 55.199999999999996,
"seed": 1604491764,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 16,
"fontFamily": 2,
"text": "Single\nLeader\nReplication",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "_3KPnPu9aCc8sSTcmpwSH",
"originalText": "Single\nLeader\nReplication",
"lineHeight": 1.15,
"index": "b0i",
"autoResize": true
},
{
"type": "text",
"version": 490,
"versionNonce": 1079358561,
"isDeleted": false,
"id": "lP_EL-1N5GP4HnWcg1krW",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4390.408665975167,
"y": -23870.233852755995,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 173.388671875,
"height": 23,
"seed": 376515020,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "URL Cache (Redis)",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "URL Cache (Redis)",
"lineHeight": 1.15,
"index": "b0j",
"autoResize": true
},
{
"type": "arrow",
"version": 704,
"versionNonce": 1616313903,
"isDeleted": false,
"id": "ScuIBj3phJeI6MBoVWDO5",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4271.315981195876,
"y": -24233.63839748165,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 119.03274023384984,
"height": 188.42283333564046,
"seed": 250951412,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": {
"elementId": "ddJJvDi4DOXqfdyXtevfl",
"focus": 0.678508250006605,
"gap": 1
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
119.03274023384984,
-188.42283333564046
]
],
"index": "b0k"
},
{
"type": "arrow",
"version": 1327,
"versionNonce": 859996225,
"isDeleted": false,
"id": "NXUqr8EMDAyMlvOJ0Is8g",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4262.135902236833,
"y": -24219.508611770438,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 136.08268165871277,
"height": 40.599584276882524,
"seed": 258095564,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "SR-V7TfG8TAbur59SBxEh",
"focus": 0.7532024317094854,
"gap": 13.817433337642797
},
"endBinding": {
"elementId": "HAI5_ccVU4MKLIK8JbzFm",
"focus": 0.24764922615648619,
"gap": 1
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
136.08268165871277,
-40.599584276882524
]
],
"index": "b0l"
},
{
"type": "arrow",
"version": 1343,
"versionNonce": 2018861135,
"isDeleted": false,
"id": "Fy4FzdBdy7PTv0RjAMDtR",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4267.008537430579,
"y": -24018.771456099814,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 128.72662958239061,
"height": 104.38914413313614,
"seed": 857730676,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "Bk5zayrngAK9Eu_mHfZCX",
"focus": 0.5603034105842057,
"gap": 14.983800744537803
},
"endBinding": {
"elementId": "9e6XyqUzBW0TjNSIiTxCs",
"focus": 0.5714768274154338,
"gap": 6.35672332291233
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
128.72662958239061,
-104.38914413313614
]
],
"index": "b0m"
},
{
"type": "arrow",
"version": 897,
"versionNonce": 1785384993,
"isDeleted": false,
"id": "K1W2frbL77bGvvhzG8bVZ",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4270.999131455685,
"y": -24000.26571857137,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 115.27336088401808,
"height": 39.05815310838807,
"seed": 1058389324,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": {
"elementId": "9TofxVN7c1yIELG-4UXOP",
"focus": -0.37824487477301794,
"gap": 17.440734934874854
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
115.27336088401808,
39.05815310838807
]
],
"index": "b0n"
},
{
"type": "arrow",
"version": 1332,
"versionNonce": 1652719215,
"isDeleted": false,
"id": "AOE3iaKHGIqWlCTZj8bs5",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4381.468365197891,
"y": -24142.479870878098,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 114.76811400101133,
"height": 101.48611543246807,
"seed": 990621556,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "9e6XyqUzBW0TjNSIiTxCs",
"focus": 0.8769218256574646,
"gap": 20.623525137991237
},
"endBinding": {
"elementId": "mOEKEY1_ZVB5bXCftCxH2",
"focus": 0.9882616874622355,
"gap": 14.095141804125376
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-114.76811400101133,
101.48611543246807
]
],
"index": "b0o"
},
{
"type": "arrow",
"version": 899,
"versionNonce": 1539187713,
"isDeleted": false,
"id": "QWwNZq_mLm5o_rVc9VHO-",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4378.411193380373,
"y": -23937.812065727812,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 107.61758608048831,
"height": 38.31312804361369,
"seed": 1032950988,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "9TofxVN7c1yIELG-4UXOP",
"focus": -0.7134907217366171,
"gap": 25.302033894204214
},
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-107.61758608048831,
-38.31312804361369
]
],
"index": "b0p"
},
{
"type": "arrow",
"version": 905,
"versionNonce": 1638324367,
"isDeleted": false,
"id": "OyfDRLKzILZOMXPMVdvMB",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4623.755654365971,
"y": -24160.377599445634,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 75.1105154382085,
"height": 44.735757912345434,
"seed": 1691869940,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": {
"elementId": "9e6XyqUzBW0TjNSIiTxCs",
"focus": 0.5371862151493895,
"gap": 28.23293609188022
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-75.1105154382085,
44.735757912345434
]
],
"index": "b0q"
},
{
"type": "arrow",
"version": 1326,
"versionNonce": 322698209,
"isDeleted": false,
"id": "5pDMW6BsD-HsE18axPgch",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4638.673282674415,
"y": -24193.58687762023,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 95.65436751166226,
"height": 68.53374245262603,
"seed": 826222668,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "grNsSzAQRRTStS1KcievQ",
"focus": -0.2241548881178962,
"gap": 20.258176595483746
},
"endBinding": {
"elementId": "HAI5_ccVU4MKLIK8JbzFm",
"focus": -0.6251895286357184,
"gap": 25.498443758051508
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-95.65436751166226,
-68.53374245262603
]
],
"index": "b0r"
},
{
"type": "arrow",
"version": 1125,
"versionNonce": 1266347695,
"isDeleted": false,
"id": "RLIkw0243N2H-bd2z2fQw",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4657.478742930064,
"y": -24228.919905404753,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 120.17168659723848,
"height": 172.691671910492,
"seed": 2129553012,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "grNsSzAQRRTStS1KcievQ",
"focus": -0.12277660177626773,
"gap": 9.465340154791193
},
"endBinding": {
"elementId": "ddJJvDi4DOXqfdyXtevfl",
"focus": -0.7814649869844873,
"gap": 27.639935724931092
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-120.17168659723848,
-172.691671910492
]
],
"index": "b0s"
},
{
"type": "arrow",
"version": 1338,
"versionNonce": 1895028673,
"isDeleted": false,
"id": "8RiuNBZFMd_IuXadLJwFM",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4644.9417694262975,
"y": -24110.366721534436,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 112.82419802740787,
"height": 140.0904026968019,
"seed": 687377484,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "grNsSzAQRRTStS1KcievQ",
"focus": 0.311994638660793,
"gap": 13.9896898436009
},
"endBinding": {
"elementId": "9TofxVN7c1yIELG-4UXOP",
"focus": 0.6089276540818116,
"gap": 10.084031624312047
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-112.82419802740787,
140.0904026968019
]
],
"index": "b0t"
},
{
"type": "arrow",
"version": 1302,
"versionNonce": 715604175,
"isDeleted": false,
"id": "MAwJAFSvc1uF3BVqk-VRv",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4949.323044165285,
"y": -24152.679007109648,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 145.00585542300587,
"height": 0.7535885712641175,
"seed": 963833460,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "EX3TaZRHNr-ZHO5lg4TuP",
"focus": -1.5183635309233732,
"gap": 8.54780132156884
},
"endBinding": {
"elementId": "grNsSzAQRRTStS1KcievQ",
"focus": 0.1350702705532436,
"gap": 27.065416972381172
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-145.00585542300587,
0.7535885712641175
]
],
"index": "b0u"
},
{
"type": "arrow",
"version": 563,
"versionNonce": 654653345,
"isDeleted": false,
"id": "SiWqf0rKiEBOdxn5MveAr",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 5216.179033457891,
"y": -24130.071349971706,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 0,
"height": 0,
"seed": 1719022284,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
0,
0
]
],
"index": "b0v"
},
{
"type": "arrow",
"version": 889,
"versionNonce": 549736175,
"isDeleted": false,
"id": "mwyLQty3MtixJtFteY-gK",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 5203.539297876225,
"y": -24134.806969061585,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 134.3442898409089,
"height": 0,
"seed": 2083315660,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": {
"elementId": "bGL0uCagY3092YA-pHmn_",
"focus": -1.7595104551003835,
"gap": 11.455580932040903
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-134.3442898409089,
0
]
],
"index": "b0w"
},
{
"type": "arrow",
"version": 1616,
"versionNonce": 2006948737,
"isDeleted": false,
"id": "4fw5xotb0IJ4s5CILDKgW",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4729.793635100858,
"y": -24068.568676961273,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 485.1487104762605,
"height": 519.0604997988157,
"seed": 583372788,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [
{
"type": "text",
"id": "DSpmFCBAftjqfsnvFgpsm"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "sWoLzW25dvx81-68Db1iu",
"focus": 0.7263814378582493,
"gap": 21.479638288688875
},
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
485.1487104762605,
404.20861047750924
],
[
184.24094865163715,
519.0604997988157
]
],
"index": "b0x"
},
{
"type": "text",
"version": 32,
"versionNonce": 140155151,
"isDeleted": false,
"id": "DSpmFCBAftjqfsnvFgpsm",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3255.368895147121,
"y": -22278.936811425086,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 91.1328125,
"height": 23,
"seed": 189622900,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "Click Data",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "4fw5xotb0IJ4s5CILDKgW",
"originalText": "Click Data",
"lineHeight": 1.15,
"index": "b0y",
"autoResize": true
},
{
"type": "ellipse",
"version": 1551,
"versionNonce": 855802721,
"isDeleted": false,
"id": "ti3ffVdxpssz40N2pWXTq",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4828.305968941667,
"y": -23711.007071623102,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 105.37241752151081,
"height": 16.09993939049615,
"seed": 538197236,
"groupIds": [
"W7VJUTxrHBSNUgMtgNS6I"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b0z"
},
{
"type": "ellipse",
"version": 1650,
"versionNonce": 1457692463,
"isDeleted": false,
"id": "g5o0nRo1IN_7DuNwif2xT",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4686.909133866481,
"y": -23713.58655309971,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 105.55784934164876,
"height": 19.99444553474398,
"seed": 1776844404,
"groupIds": [
"W7VJUTxrHBSNUgMtgNS6I"
],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "Sc9PVi6uXaHn788NFW-gi",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b10"
},
{
"type": "rectangle",
"version": 1869,
"versionNonce": 1971154753,
"isDeleted": false,
"id": "jS-ZyT69RMddxqzzNvrkz",
"fillStyle": "solid",
"strokeWidth": 4,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4695.851476025039,
"y": -23710.258663459663,
"strokeColor": "#ffff",
"backgroundColor": "#fff",
"width": 102.83113490376846,
"height": 13.256708444005548,
"seed": 1119391732,
"groupIds": [
"W7VJUTxrHBSNUgMtgNS6I"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b11"
},
{
"type": "line",
"version": 1565,
"versionNonce": 1053090127,
"isDeleted": false,
"id": "BA82mK-8EktQOaorVnSjL",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4808.632170064825,
"y": -23720.008359628846,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 0.2808665506560146,
"height": 140.16514003919394,
"seed": 2055893364,
"groupIds": [
"W7VJUTxrHBSNUgMtgNS6I"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
-0.2808665506560146,
140.16514003919394
]
],
"index": "b12"
},
{
"type": "line",
"version": 1571,
"versionNonce": 628088609,
"isDeleted": false,
"id": "ykoGHgsBmTSHEa-hh2CvJ",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4809.537208630346,
"y": -23826.448360891172,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 0.6270726080122131,
"height": 141.0224995633755,
"seed": 1889805044,
"groupIds": [
"W7VJUTxrHBSNUgMtgNS6I"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
0.6270726080122131,
141.0224995633755
]
],
"index": "b13"
},
{
"type": "ellipse",
"version": 1583,
"versionNonce": 291102575,
"isDeleted": false,
"id": "xzI3D3R62jp895IjFS9kH",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4826.397435377142,
"y": -23541.829203510548,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 105.37241752151081,
"height": 16.09993939049615,
"seed": 1328399476,
"groupIds": [
"LPJ5alIvcE9e0fkTICXwp"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b14"
},
{
"type": "ellipse",
"version": 1677,
"versionNonce": 826888961,
"isDeleted": false,
"id": "usSmCeCKn_3ALNaIPHcvb",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4685.000600301956,
"y": -23544.40868498716,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 105.55784934164876,
"height": 19.99444553474398,
"seed": 459609588,
"groupIds": [
"LPJ5alIvcE9e0fkTICXwp"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b15"
},
{
"type": "rectangle",
"version": 1898,
"versionNonce": 1625954703,
"isDeleted": false,
"id": "WTM57jqnVuoIkg6aTOVDW",
"fillStyle": "solid",
"strokeWidth": 4,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4693.942942460514,
"y": -23541.080795347116,
"strokeColor": "#ffff",
"backgroundColor": "#fff",
"width": 102.83113490376846,
"height": 13.256708444005548,
"seed": 1471559540,
"groupIds": [
"LPJ5alIvcE9e0fkTICXwp"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b16"
},
{
"type": "line",
"version": 1597,
"versionNonce": 227101409,
"isDeleted": false,
"id": "CdoGxvu1pC_JoDKrEGiHS",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4806.7236365003,
"y": -23550.830491516295,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 0.2808665506560146,
"height": 140.16514003919394,
"seed": 6760692,
"groupIds": [
"LPJ5alIvcE9e0fkTICXwp"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
-0.2808665506560146,
140.16514003919394
]
],
"index": "b17"
},
{
"type": "line",
"version": 1603,
"versionNonce": 1655574447,
"isDeleted": false,
"id": "-2OHsMNZIc9Re7-3oSc-1",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4807.628675065821,
"y": -23657.270492778618,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 0.6270726080122131,
"height": 141.0224995633755,
"seed": 419293812,
"groupIds": [
"LPJ5alIvcE9e0fkTICXwp"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
0.6270726080122131,
141.0224995633755
]
],
"index": "b18"
},
{
"type": "ellipse",
"version": 1637,
"versionNonce": 1925138113,
"isDeleted": false,
"id": "_MObrzuHNP40TQMTKXSJC",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4826.397435377142,
"y": -23541.829203510548,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 105.37241752151081,
"height": 16.09993939049615,
"seed": 1586172020,
"groupIds": [
"zIueF1fJdaOhezfYBqhNZ"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b19"
},
{
"type": "ellipse",
"version": 1731,
"versionNonce": 281952719,
"isDeleted": false,
"id": "Zk46OvmcwBY4NDuA1Rkiy",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4685.000600301956,
"y": -23544.40868498716,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 105.55784934164876,
"height": 19.99444553474398,
"seed": 1765335540,
"groupIds": [
"zIueF1fJdaOhezfYBqhNZ"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b1A"
},
{
"type": "rectangle",
"version": 1953,
"versionNonce": 1535821473,
"isDeleted": false,
"id": "PXBb9fo1_VkTVxV-nzAGR",
"fillStyle": "solid",
"strokeWidth": 4,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4693.942942460514,
"y": -23541.080795347116,
"strokeColor": "#ffff",
"backgroundColor": "#fff",
"width": 102.83113490376846,
"height": 13.256708444005548,
"seed": 1362133876,
"groupIds": [
"zIueF1fJdaOhezfYBqhNZ"
],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "x07sbSECNJobS-4XZV37q",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b1B"
},
{
"type": "line",
"version": 1651,
"versionNonce": 207826927,
"isDeleted": false,
"id": "Tav5z6GPANPo3AEuQBU1t",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4806.7236365003,
"y": -23550.830491516295,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 0.2808665506560146,
"height": 140.16514003919394,
"seed": 1823995124,
"groupIds": [
"zIueF1fJdaOhezfYBqhNZ"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
-0.2808665506560146,
140.16514003919394
]
],
"index": "b1C"
},
{
"type": "line",
"version": 1657,
"versionNonce": 1117473409,
"isDeleted": false,
"id": "jF2j2WUjcgBbAiUXLba5N",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4807.628675065821,
"y": -23657.270492778618,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 0.6270726080122131,
"height": 141.0224995633755,
"seed": 1498756724,
"groupIds": [
"zIueF1fJdaOhezfYBqhNZ"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
0.6270726080122131,
141.0224995633755
]
],
"index": "b1D"
},
{
"type": "ellipse",
"version": 1734,
"versionNonce": 1064655375,
"isDeleted": false,
"id": "c1nTt6wUdNQxqfy4SuC3j",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4824.608698665506,
"y": -23373.46057525306,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 105.37241752151081,
"height": 16.09993939049615,
"seed": 47996020,
"groupIds": [
"HMdKQEY0gDdoEXPyaxzGz"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b1E"
},
{
"type": "ellipse",
"version": 1828,
"versionNonce": 548426337,
"isDeleted": false,
"id": "lgxTEldAetn8Z5XnooU4I",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4683.211863590321,
"y": -23376.040056729664,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 105.55784934164876,
"height": 19.99444553474398,
"seed": 226536948,
"groupIds": [
"HMdKQEY0gDdoEXPyaxzGz"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b1F"
},
{
"type": "rectangle",
"version": 2050,
"versionNonce": 1056784431,
"isDeleted": false,
"id": "D1v4XO3-rcSMmt5NQj1Pa",
"fillStyle": "solid",
"strokeWidth": 4,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4692.154205748879,
"y": -23372.71216708962,
"strokeColor": "#ffff",
"backgroundColor": "#fff",
"width": 102.83113490376846,
"height": 13.256708444005548,
"seed": 849268596,
"groupIds": [
"HMdKQEY0gDdoEXPyaxzGz"
],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "fYO9SL5FEhTnAebhBRVYD",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b1G"
},
{
"type": "line",
"version": 1748,
"versionNonce": 714694209,
"isDeleted": false,
"id": "a9DvKV7PWb5Qf3to3wJL1",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4804.934899788665,
"y": -23382.4618632588,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 0.2808665506560146,
"height": 140.16514003919394,
"seed": 578601204,
"groupIds": [
"HMdKQEY0gDdoEXPyaxzGz"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
-0.2808665506560146,
140.16514003919394
]
],
"index": "b1H"
},
{
"type": "line",
"version": 1754,
"versionNonce": 1826841167,
"isDeleted": false,
"id": "tXkx94dX1m2xDoTvRSunj",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 1.5810242806299604,
"x": 4805.8399383541855,
"y": -23488.90186452113,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 0.6270726080122131,
"height": 141.0224995633755,
"seed": 346063476,
"groupIds": [
"HMdKQEY0gDdoEXPyaxzGz"
],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
0.6270726080122131,
141.0224995633755
]
],
"index": "b1I"
},
{
"type": "text",
"version": 470,
"versionNonce": 1328934433,
"isDeleted": false,
"id": "yYXQwiy0jWZB9zals-t9R",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4811.312461032079,
"y": -23724.644912686002,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 45.556640625,
"height": 23,
"seed": 1972937332,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "A - H",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "A - H",
"lineHeight": 1.15,
"index": "b1J",
"autoResize": true
},
{
"type": "text",
"version": 433,
"versionNonce": 1509965935,
"isDeleted": false,
"id": "O9aWyy47X94IATgJRGLWF",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4826.812755654222,
"y": -23543.291465606933,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 38.88671875,
"height": 23,
"seed": 2051675852,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "I - Q",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "I - Q",
"lineHeight": 1.15,
"index": "b1K",
"autoResize": true
},
{
"type": "text",
"version": 432,
"versionNonce": 1970635265,
"isDeleted": false,
"id": "stc_yGkn8X2ENxdtJucVg",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4814.412519956508,
"y": -23360.387989065646,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 38.876953125,
"height": 23,
"seed": 1952171212,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "R -Z",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "R -Z",
"lineHeight": 1.15,
"index": "b1L",
"autoResize": true
},
{
"type": "text",
"version": 435,
"versionNonce": 1746688655,
"isDeleted": false,
"id": "mmjQ6uKygRNrcDkdHHwGC",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4763.261547703437,
"y": -23806.79647418336,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 51.142578125,
"height": 23,
"seed": 1394325620,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "Kafka",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Kafka",
"lineHeight": 1.15,
"index": "b1M",
"autoResize": true
},
{
"type": "rectangle",
"version": 1116,
"versionNonce": 2052561377,
"isDeleted": false,
"id": "Bguh6b2DnADmGDSfrZI2a",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4547.839046293959,
"y": -23753.38689949515,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 89.98383639389522,
"height": 94.6544066985116,
"seed": 1021825100,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "Sc9PVi6uXaHn788NFW-gi",
"type": "arrow"
},
{
"id": "yUXDbK0FBZ5q2VMSY3JGQ",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b1N"
},
{
"type": "rectangle",
"version": 1151,
"versionNonce": 737161391,
"isDeleted": false,
"id": "DSIeIeoN-PtvCpeWG1bQJ",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4536.98884005846,
"y": -23412.32289718344,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 89.98383639389522,
"height": 94.6544066985116,
"seed": 1887640820,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "fYO9SL5FEhTnAebhBRVYD",
"type": "arrow"
},
{
"id": "D3PlwxUWumMIfRGlV1S9X",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b1O"
},
{
"type": "rectangle",
"version": 1251,
"versionNonce": 1860941249,
"isDeleted": false,
"id": "RN5jMy_0ECdDog_7OYFuX",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4534.560864221163,
"y": -23574.621880521932,
"strokeColor": "#000000",
"backgroundColor": "#fff",
"width": 89.98383639389522,
"height": 94.6544066985116,
"seed": 753889268,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "x07sbSECNJobS-4XZV37q",
"type": "arrow"
},
{
"type": "text",
"id": "NX8G57F3pLqnnZ8rqTS8e"
},
{
"id": "7_Nq4LrZ3Ra3WgxCUn-fT",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b1P"
},
{
"type": "text",
"version": 438,
"versionNonce": 254034639,
"isDeleted": false,
"id": "NX8G57F3pLqnnZ8rqTS8e",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4550.089891793111,
"y": -23550.294677172675,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 58.92578125,
"height": 46,
"seed": 1221530700,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "10 sec\nmsg's",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "RN5jMy_0ECdDog_7OYFuX",
"originalText": "10 sec\nmsg's",
"lineHeight": 1.15,
"index": "b1Q",
"autoResize": true
},
{
"type": "arrow",
"version": 1283,
"versionNonce": 374429089,
"isDeleted": false,
"id": "Sc9PVi6uXaHn788NFW-gi",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4721.7316567607495,
"y": -23699.66885201556,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 79.26947546605197,
"height": 0.38750736555448384,
"seed": 757133900,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "g5o0nRo1IN_7DuNwif2xT",
"focus": -0.07594442433241431,
"gap": 7.947567188034734
},
"endBinding": {
"elementId": "Bguh6b2DnADmGDSfrZI2a",
"focus": 0.12115796683674782,
"gap": 4.6392986068435675
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-79.26947546605197,
-0.38750736555448384
]
],
"index": "b1R"
},
{
"type": "arrow",
"version": 1328,
"versionNonce": 844173551,
"isDeleted": false,
"id": "x07sbSECNJobS-4XZV37q",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4728.500926052763,
"y": -23535.123536917374,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 94.92719495545089,
"height": 7.592722443812818,
"seed": 563599732,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "PXBb9fo1_VkTVxV-nzAGR",
"focus": 0.038858823243917734,
"gap": 10.235211717737911
},
"endBinding": {
"elementId": "RN5jMy_0ECdDog_7OYFuX",
"focus": 0.08020897417940992,
"gap": 9.029030482255166
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-94.92719495545089,
7.592722443812818
]
],
"index": "b1S"
},
{
"type": "arrow",
"version": 1304,
"versionNonce": 599259521,
"isDeleted": false,
"id": "fYO9SL5FEhTnAebhBRVYD",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4730.377914854664,
"y": -23363.887664960803,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 97.43388322637566,
"height": 2.355318206253287,
"seed": 2028762444,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "D1v4XO3-rcSMmt5NQj1Pa",
"focus": -0.03636104217141538,
"gap": 6.54035241532074
},
"endBinding": {
"elementId": "DSIeIeoN-PtvCpeWG1bQJ",
"focus": 0.09698080704508055,
"gap": 5.971355175932786
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-97.43388322637566,
2.355318206253287
]
],
"index": "b1T"
},
{
"type": "text",
"version": 495,
"versionNonce": 251599631,
"isDeleted": false,
"id": "vhKULJJfqnAONB-yHHVvy",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3963.733563902045,
"y": -23882.254047963685,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 178.935546875,
"height": 23,
"seed": 531146316,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [
{
"id": "D3PlwxUWumMIfRGlV1S9X",
"type": "arrow"
}
],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "URL Table (MySQL)",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "URL Table (MySQL)",
"lineHeight": 1.15,
"index": "b1U",
"autoResize": true
},
{
"type": "text",
"version": 436,
"versionNonce": 945758561,
"isDeleted": false,
"id": "7KnPOaL0aj27c1rXRFW0y",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4552.074620175299,
"y": -23804.58738832139,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 91.15234375,
"height": 46,
"seed": 829765108,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 2,
"text": "Spark\nStreaming",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Spark\nStreaming",
"lineHeight": 1.15,
"index": "b1V",
"autoResize": true
},
{
"type": "arrow",
"version": 1166,
"versionNonce": 1504108847,
"isDeleted": false,
"id": "yUXDbK0FBZ5q2VMSY3JGQ",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4542.7500724583615,
"y": -23708.82504136175,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 457.20607545407665,
"height": 126.96546761241916,
"seed": 1445296116,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "Bguh6b2DnADmGDSfrZI2a",
"focus": 0.06855296807976008,
"gap": 5.088973835596789
},
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-407.535801761901,
4.154351340555877
],
[
-457.20607545407665,
-122.81111627186328
]
],
"index": "b1W"
},
{
"type": "arrow",
"version": 1102,
"versionNonce": 563498305,
"isDeleted": false,
"id": "7_Nq4LrZ3Ra3WgxCUn-fT",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4528.3993660940005,
"y": -23520.04464522583,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 483.14802853323135,
"height": 317.7093254220672,
"seed": 804816972,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "RN5jMy_0ECdDog_7OYFuX",
"focus": -0.16290400593362572,
"gap": 6.161498127161849
},
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-438.62520841812966,
-4.60162639363989
],
[
-483.14802853323135,
-317.7093254220672
]
],
"index": "b1X"
},
{
"type": "arrow",
"version": 1689,
"versionNonce": 598795087,
"isDeleted": false,
"id": "D3PlwxUWumMIfRGlV1S9X",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4527.0727028009405,
"y": -23369.691998990034,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 542.5370584637112,
"height": 483.9212837097584,
"seed": 1582440308,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": {
"elementId": "DSIeIeoN-PtvCpeWG1bQJ",
"focus": 0.05237903961143046,
"gap": 9.916137257519495
},
"endBinding": {
"elementId": "vhKULJJfqnAONB-yHHVvy",
"focus": 0.7757047560590503,
"gap": 5.640765263891808
},
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
-501.0087069243741,
-19.39960781109403
],
[
-542.5370584637112,
-483.9212837097584
]
],
"index": "b1Y"
},
{
"type": "text",
"version": 2787,
"versionNonce": 1455226145,
"isDeleted": false,
"id": "oQprwvieTHBexu0-k1TJ4",
"fillStyle": "cross-hatch",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1279.349487737862,
"y": -24971.766784416126,
"strokeColor": "#000",
"backgroundColor": "#000",
"width": 33,
"height": 45,
"seed": 965072846,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 33.23791410279167,
"fontFamily": 1,
"text": "✨",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "✨",
"lineHeight": 1.3538755729626375,
"index": "b1Z",
"autoResize": true
},
{
"type": "text",
"version": 3596,
"versionNonce": 1031119215,
"isDeleted": false,
"id": "xu5r8PpYBjBjEL0O2AoMl",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1326.3008679701002,
"y": -24959.486811367027,
"strokeColor": "#495057",
"backgroundColor": "#fff",
"width": 219.39187622070312,
"height": 20,
"seed": 450211342,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 16,
"fontFamily": 1,
"text": "Non-Functional Requirements",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "Non-Functional Requirements",
"lineHeight": 1.25,
"index": "b1a",
"autoResize": true
},
{
"type": "line",
"version": 1888,
"versionNonce": 927117569,
"isDeleted": false,
"id": "36azEl5g1ADVB6Ev_ZruL",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1280.0735774597665,
"y": -24924.301028468846,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 165.2005648542745,
"height": 0.8295616012067057,
"seed": 1750121550,
"groupIds": [],
"frameId": null,
"roundness": {
"type": 2
},
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
165.2005648542745,
0.8295616012067057
]
],
"index": "b1b"
},
{
"type": "text",
"version": 1981,
"versionNonce": 1480432527,
"isDeleted": false,
"id": "zTT1jBSSnAOT-Hgl8klHb",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 1287.162864255296,
"y": -24904.937339982345,
"strokeColor": "#1e1e1e",
"backgroundColor": "#fefefe",
"width": 444.69964599609375,
"height": 175,
"seed": 1741685390,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "1. The system should be highly available.\nThis is required since if the service is down\nall the URL directions will start failing\n2. URL redirection should happen in real time\nwith minimal latency\n3. Shortened links should not be predictable\n",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "1. The system should be highly available.\nThis is required since if the service is down\nall the URL directions will start failing\n2. URL redirection should happen in real time\nwith minimal latency\n3. Shortened links should not be predictable\n",
"lineHeight": 1.25,
"index": "b1c",
"autoResize": true
},
{
"type": "rectangle",
"version": 2474,
"versionNonce": 145156321,
"isDeleted": false,
"id": "Hxh2p0sImCagMgsjsIiTG",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 2,
"opacity": 100,
"angle": 0,
"x": 1273.3052923567648,
"y": -24975.906047446835,
"strokeColor": "#495057",
"backgroundColor": "transparent",
"width": 471.3223044676661,
"height": 278.69014260732473,
"seed": 1007452366,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b1d"
},
{
"type": "rectangle",
"version": 3629,
"versionNonce": 1749111215,
"isDeleted": false,
"id": "FNBaRe4FdVNvVIcFbtUbB",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"opacity": 100,
"angle": 0,
"x": 3653.7292605121984,
"y": -25253.21872944729,
"strokeColor": "#5f3dc4",
"backgroundColor": "#fefefe",
"width": 321.984089017418,
"height": 572.6827202854396,
"seed": 752019854,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b1e"
},
{
"type": "text",
"version": 5661,
"versionNonce": 880354497,
"isDeleted": false,
"id": "JCoM0jTk_lUJ_KNXJkA2o",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 3665.7209611228227,
"y": -25239.651453033017,
"strokeColor": "#5f3dc4",
"backgroundColor": "#fefefe",
"width": 290.625,
"height": 532,
"seed": 1310361550,
"groupIds": [],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 16,
"fontFamily": 3,
"text": "createUrlRequest {\n original_url\n custom_alias\n user_name\n expire_date\n}\n\ncreateUrlResponse {\n shortenedUrl\n}\n\ndeleteUrlRequest {\n shortenedUrl\n}\n\ndeleteUrlResponse - 200\n\nreadUrlRequest {\n shortenedUrl\n}\n\nreadUrlResponse - 301 vs 302\n\n301 -> redirects permanently,\nbrowser caches\n\n302 -> temporary relocation, no\ncaching, good for analytics",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "createUrlRequest {\n original_url\n custom_alias\n user_name\n expire_date\n}\n\ncreateUrlResponse {\n shortenedUrl\n}\n\ndeleteUrlRequest {\n shortenedUrl\n}\n\ndeleteUrlResponse - 200\n\nreadUrlRequest {\n shortenedUrl\n}\n\nreadUrlResponse - 301 vs 302\n\n301 -> redirects permanently,\nbrowser caches\n\n302 -> temporary relocation, no\ncaching, good for analytics",
"lineHeight": 1.1875,
"index": "b1f",
"autoResize": true
},
{
"type": "rectangle",
"version": 331,
"versionNonce": 1185498063,
"isDeleted": false,
"id": "A5WY15k0n5YThNnjyxOrL",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4222.850818390599,
"y": -25025.127627456222,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 181.203125,
"height": 242.5,
"seed": 50881806,
"groupIds": [
"tSQp-ZpoinoW42_T2oHuJ"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"index": "b1g"
},
{
"type": "line",
"version": 331,
"versionNonce": 1180230817,
"isDeleted": false,
"id": "i1XqsKGjOOyTNnMlm4x-B",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4222.850818390599,
"y": -24975.627627456222,
"strokeColor": "#000",
"backgroundColor": "transparent",
"width": 181.203125,
"height": 0,
"seed": 1192530766,
"groupIds": [
"tSQp-ZpoinoW42_T2oHuJ"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
181.203125,
0
]
],
"index": "b1h"
},
{
"type": "line",
"version": 331,
"versionNonce": 328069615,
"isDeleted": false,
"id": "ekgg2dOrioYyl2LrH1yEK",
"fillStyle": "solid",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4222.850818390599,
"y": -24793.627627456222,
"strokeColor": "#000",
"backgroundColor": "transparent",
"width": 181.203125,
"height": 0,
"seed": 234944910,
"groupIds": [
"tSQp-ZpoinoW42_T2oHuJ"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"startBinding": null,
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": null,
"points": [
[
0,
0
],
[
181.203125,
0
]
],
"index": "b1i"
},
{
"type": "text",
"version": 331,
"versionNonce": 703965313,
"isDeleted": false,
"id": "zjDy6a6VCVOtq8OiZv5A4",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4290.432849640599,
"y": -25020.127627456222,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 39.81999206542969,
"height": 25,
"seed": 2131138510,
"groupIds": [
"tSQp-ZpoinoW42_T2oHuJ"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "URL",
"textAlign": "left",
"verticalAlign": "middle",
"containerId": null,
"originalText": "URL",
"lineHeight": 1.25,
"index": "b1j",
"autoResize": true
},
{
"type": "text",
"version": 331,
"versionNonce": 1475861519,
"isDeleted": false,
"id": "jx8Muxr7A2D0QxBONmTlk",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4230.350818390599,
"y": -24966.627627456222,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 79.85992431640625,
"height": 25,
"seed": 1916694030,
"groupIds": [
"tSQp-ZpoinoW42_T2oHuJ"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "shortUrl",
"textAlign": "left",
"verticalAlign": "middle",
"containerId": null,
"originalText": "shortUrl",
"lineHeight": 1.25,
"index": "b1k",
"autoResize": true
},
{
"type": "text",
"version": 331,
"versionNonce": 688844897,
"isDeleted": false,
"id": "kUnJg_VFHJqDWijiu4OvQ",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4230.350818390599,
"y": -24925.127627456222,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 94.5399169921875,
"height": 25,
"seed": 1419869262,
"groupIds": [
"tSQp-ZpoinoW42_T2oHuJ"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "originalUrl",
"textAlign": "left",
"verticalAlign": "middle",
"containerId": null,
"originalText": "originalUrl",
"lineHeight": 1.25,
"index": "b1l",
"autoResize": true
},
{
"type": "text",
"version": 331,
"versionNonce": 1742701103,
"isDeleted": false,
"id": "HyHaTZYN45TxSGCLQ_VEs",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4230.350818390599,
"y": -24883.627627456222,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 116.33990478515625,
"height": 25,
"seed": 201900686,
"groupIds": [
"tSQp-ZpoinoW42_T2oHuJ"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "createDate",
"textAlign": "left",
"verticalAlign": "middle",
"containerId": null,
"originalText": "createDate",
"lineHeight": 1.25,
"index": "b1m",
"autoResize": true
},
{
"type": "text",
"version": 331,
"versionNonce": 695483457,
"isDeleted": false,
"id": "waVgqvUoTiC9RrGU5X4ho",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 4230.350818390599,
"y": -24842.127627456222,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"width": 145.63986206054688,
"height": 25,
"seed": 1529692366,
"groupIds": [
"tSQp-ZpoinoW42_T2oHuJ"
],
"frameId": null,
"roundness": null,
"boundElements": [],
"updated": 1760909551420,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 1,
"text": "expirationDate",
"textAlign": "left",
"verticalAlign": "middle",
"containerId": null,
"originalText": "expirationDate",
"lineHeight": 1.25,
"index": "b1n",
"autoResize": true
},
{
"id": "qWpvLonxBjR9AoqYIGp2g",
"type": "arrow",
"x": 5078.2560288331915,
"y": -24112.55595072082,
"width": 142.25429767020978,
"height": 0.00679666974247084,
"angle": 0,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"groupIds": [],
"frameId": null,
"index": "b1o",
"roundness": {
"type": 2
},
"seed": 668146241,
"version": 23,
"versionNonce": 1813763503,
"isDeleted": false,
"boundElements": null,
"updated": 1760909982030,
"link": null,
"locked": false,
"points": [
[
0,
0
],
[
142.25429767020978,
0.00679666974247084
]
],
"lastCommittedPoint": null,
"startBinding": {
"elementId": "bGL0uCagY3092YA-pHmn_",
"focus": -0.28444139520496564,
"gap": 14
},
"endBinding": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"elbowed": false
},
{
"id": "mwwhJ9DXOUOUtfoEtz9jO",
"type": "text",
"x": 5084.420608287892,
"y": -24085.54598517178,
"width": 170.57989501953125,
"height": 50,
"angle": 0,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"groupIds": [],
"frameId": null,
"index": "b1p",
"roundness": null,
"seed": 1647731841,
"version": 54,
"versionNonce": 696884463,
"isDeleted": false,
"boundElements": null,
"updated": 1760910002284,
"link": null,
"locked": false,
"text": " Long url\nStatus Code: 301",
"fontSize": 20,
"fontFamily": 5,
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": " Long url\nStatus Code: 301",
"autoResize": true,
"lineHeight": 1.25
}
],
"appState": {
"gridSize": 20,
"gridStep": 5,
"gridModeEnabled": false,
"viewBackgroundColor": "#f5faff"
},
"files": {}
}