Files
tasks/docs/_assets/chasm-task-handler.svg

183 lines
23 KiB
XML

<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.6.3-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 543 970"><svg id="d2-svg" class="d2-1241116587" width="543" height="970" viewBox="-101 -101 543 970"><rect x="-101.000000" y="-101.000000" width="543.000000" height="970.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
.d2-1241116587 .text-bold {
font-family: "d2-1241116587-font-bold";
}
@font-face {
font-family: d2-1241116587-font-bold;
src: url("data:application/font-woff;base64,d09GRgABAAAAAAtAAAoAAAAAEWQAAguFAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAAGAAAABgXxHXrmNtYXAAAAFUAAAAiAAAALADZgMvZ2x5ZgAAAdwAAAULAAAGTEv+PyJoZWFkAAAG6AAAADYAAAA2G38e1GhoZWEAAAcgAAAAJAAAACQKfwXXaG10eAAAB0QAAABgAAAAYCskA6tsb2NhAAAHpAAAADIAAAAyE7QSRm1heHAAAAfYAAAAIAAAACAAMAD3bmFtZQAAB/gAAAMoAAAIKgjwVkFwb3N0AAALIAAAAB0AAAAg/9EAMgADAioCvAAFAAACigJYAAAASwKKAlgAAAFeADIBKQAAAgsHAwMEAwICBGAAAvcAAAADAAAAAAAAAABBREJPACAAIP//Au7/BgAAA9gBESAAAZ8AAAAAAfAClAAAACAAA3icdM05isIAGEDhL5PMlsnMZBYbKy8jeACxF0EIioggeBlxIdbai4fxJL9oZ+Frv+IhkUpQyNRoKqVyLW0dXT19Q5WxqblFBHc2UBmZmF0tznGKYxxiH7uoYxubWMcqlrfDoxJPUplnL169eZf7UPj05Vvpx68//xpcAAAA//8BAAD//yXEIoB4nGRUW2wUZRt+v6+7M3QZup2d/Wb20D1Od6bbw5bu7Mz8pS3LtltK/78LbQktp7K/XCBaaA1dpGKNFxATtQbNNqQaBS800QtNDDeKKYmJRAlcmEDkRlESr3U1G6OynTUzu1CJF5O5efM873P4XrDDOAA+ilegARrBCS4gAAobYWOKLIu0rui6KDToMmLpcewy3n9PjtvicVt7eDV0Np9HuSN4Zf3EodzRo7/n+/qMS59dNV5DC1cBEOQA0C94GTZbeCRCFCKSCMmhVePBvXvIiZeXzj1/cQnqs3jfw1mFKKrCiqzI5or3V1bu4+UHD9YLqNkoWbNeAMzhZaDNWVGNEJG9dQX9dQU3Ly2tmyOAqn8CYAUvwxYApUHheF5QNE3nlIZr19/e7RSctiZPU+7il3jZ+EY9pmnHVLR1vQAY2qtldAdVwAsigBCV1JSmS5IYpWhZ05QkT1hRFilKT2q6SlHEzV/Ljp8vYjEe2tGqds9uyx9bdNhCI5u8MW53f4iZTu/e74zIHvJEoHXulPGT0iKeErhpR0fAI1haWqtltIYq4AOwRyWTzmQRaJOSuHklqekCRSHv8Hxm17PZxEjLsBhW0+mtngS3LTbFDJye3FsYCAr5wFhmR444/x/2m/oxyNUyquA14CD8UIcFLJvGPlIg1Wl+Ozzfl0/F/+OliosOm28n9sgursMtat3Mq89NnN7e4hn7cH2oxycuur03XU1DI6PDgK3d76MKeCD02PY8cVN0hOeVpLl7g5IyWVBo5NTg0Im+kZluGzbuOnb2qFqPdOStK3JnVGO2FyYnCun0bJaLNWpK5IAviLbF1W4rS/AAoAK+Yf7NvPUNk6z1zVqxBwcHW8eHQqlm/xYf4w8eOIBeOGn3q1Mphjpht0ek4IJxDqpV0AHge3wbS8ADAA0CvGJxZABwEK8BY/WPVXSF5kSZJpkLtnfe/fjzy8+k8Zoxd/2W8d0XI2fN+WoZufAaOGvusgr7KKyvx/qKbKOdplxMjDn0Pyyu3xVcCJ2003UeQBVwWzxmKWulYi2TaDaz6LCFc8mJ0WIg3NLmQaV0sGt2xriFIlqbVzA+gZrvmEYVcIL/X75TclJTU/VYEZ+ez2bn0+m5bHYu3ZVIdCW6uuqdGSjsnTw9cCa3IzNmVsfEzVR3YR5VgIMggLCxnZuixKgkC4QzscUoTXje3DMwKh883p/Xwv0++x5Jm+pod7d9ij/o8YkvL+xbTPu9e95ArTvHXuq66Wqqe4wuoAq4/qm9nmJNuX9MIi0OzxZvc8uAG5Wmkz12+4s2Wzxp/AgISLWMLqMKyJbnsm42zBQryQmspjbAiJsXgpi4qds9T0qD0XQoEgwkfMG+tqf29U6HBn0pX2+vFB6IH2ek0GGvX+BYnnMwrb3x4SnZs9/Nyx5v02axNzE0U+sfWy2jOVwAwXJbVUVV1xXrmG08UDi8JzvGnj1zRgwwXofA6czTUzdOUufPL3zVHqNssxRTw+qvltEfqGTm/1hv2Pqz/HZitBgMt0h8cXFzQ+i/zOwMShk/qHFfAO0ymodjnYDANLOMSuYdVDhZEerHTVdoQZQlyYSh6abVC5c6HbzDtsm1Kbr6+puXtjICY2t0N8oI/zxOOgjpIOPVXydJJyEd/GQ9H7iDStBQewOZIioZzYCqH+Fe2Itvm7eZtS5JrRSxRCIWSyRwb7sotpsf/A0AAP//AQAA//+FzFK4AAABAAAAAguFbRz8N18PPPUAAQPoAAAAANhdoIQAAAAA3WYvNv43/sQIbQPxAAEAAwACAAAAAAAAAAEAAAPY/u8AAAiY/jf+NwhtAAEAAAAAAAAAAAAAAAAAAAAYArIAUADIAAACJABNAqIATQIsABkCLP/5Ag8AKgHTACQCPQAnAgYAJAFVABgBFAA3AiQAQQEeAEECPABBAisAJAI9AEEBjgBBAbsAFQF/ABECOAA8AgIADgEUAEEAAP+tAAAALAAsAEIAWABqAIYAvgDqARwBUAF2AYIBmgG2AdgCBAI0AlQCkAK2AtgDBAMQAyYAAAABAAAAGACQAAwAYwAHAAEAAAAAAAAAAAAAAAAABAADeJyclM9uG1UUxn9ObNMKwQJFVbqJ7oJFkejYVEnVNiuH1IpFFAePC0JCSBPP+I8ynhl5Jg7hCVjzFrxFVzwEz4FYo/l87NgF0SaKknx37vnznXO+c4Ed/mabSvUh8Ec9MVxhr35ueIsH9RPD27TrW4arPKn9abhGWJsbrvN5rWf4I95WfzP8gP3qT4YfslttG/6YZ9Udw59sO/4y/Cn7vF3gCrzgV8MVdskMb7HDj4a3eYTFrFR5RNNwjc/YM1xnD+gzoSBmQsIIx5AJI66YEZHjEzFjwpCIEEeHFjGFviYEQo7Rf34N8CmYESjimAJHjE9MQM7YIv4ir5RzZRzqNLO7FgVjAi7kcUlAgiNlREpCxKXiFBRkvKJBg5yB+GYU5HjkTIjxSJkxokGXNqf0GTMhx9FWpJKZT8qQgmsC5XdmUXZmQERCbqyuSAjF04lfJO8Opzi6ZLJdj3y6EeFLHN/Ju+SWyvYrPP26NWabeZdsAubqZ6yuxLq51gTHui3ztvhWuOAV7l792WTy/h6F+l8o8gVXmn+oSSVikuDcLi18Kch3j3Ec6dzBV0e+p0OfE7q8oa9zix49WpzRp8Nr+Xbp4fiaLmccy6MjvLhrSzFn/IDjGzqyKWNH1p/FxCJ+JjN15+I4Ux1TMvW8ZO6p1kgV3n3C5Q6lG+rI5TPQHpWWTvNLtGcBI1NFJoZT9XKpjdz6F5oipqqlnO3tfbkNc9u95RbfkGqHS7UuOJWTWzB631S9dzRzrR+PgJCUC1kMSJnSoOBGvM8JuCLGcazunWhLClornzLPjVQSMRWDDonizMj0NzDd+MZ9sKF7Z29JKP+S6eWqqvtkcerV7YzeqHvLO9+6HK1NoGFTTdfUNBDXxLQfaafW+fvyzfW6pTzliJSY8F8vwDM8muxzwCFjZRjoZm6vQ1MvRJOXHKr6SyJZDaXnyCIc4PGcAw54yfN3+rhk4oyLW3FZz93imCO6HH5QFQv7Lke8Xn37/6y/i2lTtTierk4v7j3FJ3dQ6xfas9v3sqeJlZOYW7TbrTgjYFpycbvrNbnHeP8AAAD//wEAAP//9LdPUXicYmBmAIP/5xiMGLAAAAAAAP//AQAA//8vAQIDAAAA");
}
.d2-1241116587 .text-italic {
font-family: "d2-1241116587-font-italic";
}
@font-face {
font-family: d2-1241116587-font-italic;
src: url("data:application/font-woff;base64,d09GRgABAAAAAAt8AAoAAAAAEgAAARhRAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAAGAAAABgW1SVeGNtYXAAAAFUAAAAiAAAALADZgMvZ2x5ZgAAAdwAAAVHAAAG4CpnE3NoZWFkAAAHJAAAADYAAAA2G7Ur2mhoZWEAAAdcAAAAJAAAACQLeAi8aG10eAAAB4AAAABgAAAAYCcvA0tsb2NhAAAH4AAAADIAAAAyFWYT3G1heHAAAAgUAAAAIAAAACAAMAD2bmFtZQAACDQAAAMmAAAIMgntVzNwb3N0AAALXAAAACAAAAAg/8YAMgADAeEBkAAFAAACigJY//EASwKKAlgARAFeADIBIwAAAgsFAwMEAwkCBCAAAHcAAAADAAAAAAAAAABBREJPAAEAIP//Au7/BgAAA9gBESAAAZMAAAAAAeYClAAAACAAA3icdM05isIAGEDhL5PMlsnMZBYbKy8jeACxF0EIioggeBlxIdbai4fxJL9oZ+Frv+IhkUpQyNRoKqVyLW0dXT19Q5WxqblFBHc2UBmZmF0tznGKYxxiH7uoYxubWMcqlrfDoxJPUplnL169eZf7UPj05Vvpx68//xpcAAAA//8BAAD//yXEIoB4nHyVT2wT6RnG3++byUz+2E7ssWdiJ/bEHnsmccZO4s+eSSC24zghf52QgGnU4ECgVEBDG4GQWlFECxKqKlGlEpf20kpVKxC3oB56AanqISrissqu2N3jQrTaLGKxsmhBm/FqxoYEDnuZ0/e97/s8z+/9BuogDIB/iW8DBQ3QDC7wABAuSFFE1yWBIooisayucBwbvo42rv+Vzv/0WeffX6siPfb7u1Nfn7yHb++uoN+Vrl0zFv9w5sxPtreNKPpkGwAAgQSAW/AaNFk12SBLWIkNstINdN5ufBF96XhBkOzAa7mPh18N186fe3ueUEGOUBIXpKQbM/2os79wYyZrPMngNWMbeXZXUb+xAQhKADiF14A170h6kJWof11+YEeP7A8v40I+v3u/Oss8AM7hNbADEIpwPC8QTdM5gm4dnG2rq6dob8r376PGXbxm3E5d0FK/SqKV3VXzLgalsoO+Q2VwmxMKITmVzGCS4AWiE0rSJYZREpquy7IUcmCPm78/NK1OLhEl7aS5zHK2npYWXPJsWPUk2sP5lNhnWywe+s1x0hlMG77xSM9QvOdTORSdKCWy6eqskcoOWkdlaH+vG2s2YBiPmycJTRcY5snsz9TCckod5GOc7O89pg0c6ND4kK9g+3lp5FKxJ+TtFTwjq/nhQz5nwh15pwUreAM8ZvLvaflxMQdcVItcWKupmYl8qEbpOPFgt/9DOdjS8hCVwQeR/f14j5thgwz/VgtFNC2VtBQ+PXYuNnW8V88FbHXG/xo68lH/gBDwz/2lgilXl5Rasp1fHl2dV+OHE+3EkT0c8TqJR0SRplZ7e59YBATdAOgW3gTBYiKLNW3PP9aEkOouZptyLc0zaV/U1dbY5gx21TtP2U4X0Z2BurnJI/YmnW1MdB/JGAtQqYAIAG/wOpaBBwAGhPFqTiIAeo43wFbllXCE5SSFZcU/FU7i1wv/vTxTWvXhDcOP0CPj2fOLVwCBWtmBN3gDXKYbqaTOEcrMtGbDhRxzpXAVISfFsKiRt2WdXvyL3T+zDZQL4YM0vdf3CSpDq9WXJZY+j5ulJM500VRJictZlu6aj2dS9ZnpQZoebx+Pj6KtiXBfrl8MG/9HqrvVPhWNG3f2GP8claEZ/Ptz8rgdWElY2dTg25xdUieXErMn1KmlaGyOaAnzYzu7OHqpGK9+h4ZXR4bH8qsjw4fM2pVXFYK+QeUqc+y+iR1YCsnmC8MlMrjagmV5vvGPWYaKFOMWegl5kMMu8Z/hfCrQ2xWak+Ju8hjfHxJjNfDEs39DKDpRIpl0VP4yEtzz6LeoDC37PBJY+a03TbR/Oub1tLX4wtNiGm2V1HTDSH32oPEYUOX7yg66isqgWE4oukVpKikrspxK7ofJ4+YFC2XmH30lb68wJEfTXf3xAXVCjU+2xzkSlPu0jkyyd96W7JTFzrjkU0Rfpqs7FwkHOt2+mBiQXaFBNTYSMWcerOygBbzybu813aSXWMTu2/v/DCVpNDDWNB3OtV2xXR2g2kMOX5OzpceWjTX77Mg1UHfzZsb4yuUKBBrrdLbZrN1f2UEv0BZ492rvkcfVVv9eWqPpTCFN0+P+MXV02ny8Oo/ahnWnyCHN2OS8JjJowfBNSsTyubIJgD6q1pU4hQi1h1UnrCApsqxIDMOy6meLM9F6B0s3dzQXj2ycnlXrnY10S4hbQvjpCq943F2elW9fXuTjPK8Kl2r5wWO0BVR1t8Tlwim0ZfisbMfwFKzjdfM/wVlaLJiYX3MBSXD7JTwl8N5gK+/t+AEAAP//AQAA//8dbGcWAAABAAAAARhRuAmvLV8PPPUAAQPoAAAAANhdoMwAAAAA3WYvN/69/t0IHQPJAAIAAwACAAAAAAAAAAEAAAPY/u8AAAhA/r39vAgdA+gAwv/RAAAAAAAAAAAAAAAYAnQAJADIAAAB9wAjAm4AIwH+AF0B8ABSAhkAJwGzACUCFwAnAeEAJQEaACsA7QAfAdwAHwD4ACwCDQAfAgMAJwIX//YBVgAfAZL//AFFADwCEAA4Aa3/1ADtAB8AAABHAAAALgAuAEYAYAB0AJIAygD4ATABagGSAZ4BuAHaAgQCMgJsAooCxgL0AyADTANaA3AAAAABAAAAGACMAAwAZgAHAAEAAAAAAAAAAAAAAAAABAADeJyclNtOG1cUhj8H2216uqhQRG7QvkylZEyjECXhypSgjIpw6nF6kKpKgz0+iPHMyDOYkifodd+ib5GrPkafoup1tX8vgx1FQSAE/Hv2OvxrrX9tYJP/2KBWvwv83ZwbrrHd/NnwHb5oHhneYL/5meE6Dxv/GG4waLw13ORBo2v4E97V/zT8KU/qvxm+y1b90PDnPK5vGv5yw/Gv4a94wrsFrsEz/jBcY4vC8B02+dXwBvewmLU699gx3OBrtg032QZ6TKhImZAxwjFkwogzZiSURCTMmDAkYYAjpE1Kpa8ZsZBj9MGvMREVM2JFHFPhSIlIiSkZW8S38sp5rYxDnWZ216ZiTMyJPE6JyXDkjMjJSDhVnIqKghe0aFHSF9+CipKAkgkpATkzRrTocMgRPcZMKHEcKpJnFpEzpOKcWPmdWfjO9EnIKI3VGRkD8XTil8g75AhHh0K2q5GP1iI8xPGjvD23XLbfEujXrTBbz7tkEzNXP1N1JdXNuSY41q3P2+YH4YoXuFv1Z53J9T0a6H+lyCecaf4DTSoTkwzntmgTSUGRu49jX+eQSB35iZAer+jwhp7Obbp0aXNMj5CX8u3QxfEdHY45kEcovLg7lGKO+QXH94Sy8bET689iYgm/U5i6S3GcqY4phXrumQeqNVGFN5+w36F8TR2lfPraI2/pNL9MexYzMlUUYjhVL5faKK1/A1PEVLX42V7d+22Y2+4tt/iCXDvs1brg5Ce3YHTdVIP3NHOun4CYATknsuiTM6VFxYV4vybmjBTHgbr3SltS0b708XkupJKEqRiEZIozo9Df2HQTGff+mu6dvSUD+Xump5dV3SaLU6+uZvRG3VveRdblZGUCLZtqvqKmvrhmpv1EO7XKP5Jvqdct5xGh4i52+0OvwA7P2WWPsbL0dTO/vPOvhLfYUwdOSWQ1lKZ9DY8J2CXgKbvs8pyn7/VyycYZH7fGZzV/mwP26bB3bTUL2w77vFyL9vHMf4ntjupxPLo8Pbv1NB/cQLXfaN+u3s2uJuenMbdoV9txTMzUc3FbqzW5+wT/AwAA//8BAAD//3KhUUAAAAADAAD/9QAA/84AMgAAAAAAAAAAAAAAAAAAAAAAAAAA");
}]]></style><style type="text/css"><![CDATA[.shape {
shape-rendering: geometricPrecision;
stroke-linejoin: round;
}
.connection {
stroke-linecap: round;
stroke-linejoin: round;
}
.blend {
mix-blend-mode: multiply;
opacity: 0.5;
}
.d2-1241116587 .fill-N1{fill:#0A0F25;}
.d2-1241116587 .fill-N2{fill:#676C7E;}
.d2-1241116587 .fill-N3{fill:#9499AB;}
.d2-1241116587 .fill-N4{fill:#CFD2DD;}
.d2-1241116587 .fill-N5{fill:#DEE1EB;}
.d2-1241116587 .fill-N6{fill:#EEF1F8;}
.d2-1241116587 .fill-N7{fill:#FFFFFF;}
.d2-1241116587 .fill-B1{fill:#170034;}
.d2-1241116587 .fill-B2{fill:#7639C5;}
.d2-1241116587 .fill-B3{fill:#8F70D1;}
.d2-1241116587 .fill-B4{fill:#D0B9F5;}
.d2-1241116587 .fill-B5{fill:#E7DEFF;}
.d2-1241116587 .fill-B6{fill:#F4F0FF;}
.d2-1241116587 .fill-AA2{fill:#0F66B7;}
.d2-1241116587 .fill-AA4{fill:#87BFF3;}
.d2-1241116587 .fill-AA5{fill:#BCDDFB;}
.d2-1241116587 .fill-AB4{fill:#92E3E3;}
.d2-1241116587 .fill-AB5{fill:#D7F5F5;}
.d2-1241116587 .stroke-N1{stroke:#0A0F25;}
.d2-1241116587 .stroke-N2{stroke:#676C7E;}
.d2-1241116587 .stroke-N3{stroke:#9499AB;}
.d2-1241116587 .stroke-N4{stroke:#CFD2DD;}
.d2-1241116587 .stroke-N5{stroke:#DEE1EB;}
.d2-1241116587 .stroke-N6{stroke:#EEF1F8;}
.d2-1241116587 .stroke-N7{stroke:#FFFFFF;}
.d2-1241116587 .stroke-B1{stroke:#170034;}
.d2-1241116587 .stroke-B2{stroke:#7639C5;}
.d2-1241116587 .stroke-B3{stroke:#8F70D1;}
.d2-1241116587 .stroke-B4{stroke:#D0B9F5;}
.d2-1241116587 .stroke-B5{stroke:#E7DEFF;}
.d2-1241116587 .stroke-B6{stroke:#F4F0FF;}
.d2-1241116587 .stroke-AA2{stroke:#0F66B7;}
.d2-1241116587 .stroke-AA4{stroke:#87BFF3;}
.d2-1241116587 .stroke-AA5{stroke:#BCDDFB;}
.d2-1241116587 .stroke-AB4{stroke:#92E3E3;}
.d2-1241116587 .stroke-AB5{stroke:#D7F5F5;}
.d2-1241116587 .background-color-N1{background-color:#0A0F25;}
.d2-1241116587 .background-color-N2{background-color:#676C7E;}
.d2-1241116587 .background-color-N3{background-color:#9499AB;}
.d2-1241116587 .background-color-N4{background-color:#CFD2DD;}
.d2-1241116587 .background-color-N5{background-color:#DEE1EB;}
.d2-1241116587 .background-color-N6{background-color:#EEF1F8;}
.d2-1241116587 .background-color-N7{background-color:#FFFFFF;}
.d2-1241116587 .background-color-B1{background-color:#170034;}
.d2-1241116587 .background-color-B2{background-color:#7639C5;}
.d2-1241116587 .background-color-B3{background-color:#8F70D1;}
.d2-1241116587 .background-color-B4{background-color:#D0B9F5;}
.d2-1241116587 .background-color-B5{background-color:#E7DEFF;}
.d2-1241116587 .background-color-B6{background-color:#F4F0FF;}
.d2-1241116587 .background-color-AA2{background-color:#0F66B7;}
.d2-1241116587 .background-color-AA4{background-color:#87BFF3;}
.d2-1241116587 .background-color-AA5{background-color:#BCDDFB;}
.d2-1241116587 .background-color-AB4{background-color:#92E3E3;}
.d2-1241116587 .background-color-AB5{background-color:#D7F5F5;}
.d2-1241116587 .color-N1{color:#0A0F25;}
.d2-1241116587 .color-N2{color:#676C7E;}
.d2-1241116587 .color-N3{color:#9499AB;}
.d2-1241116587 .color-N4{color:#CFD2DD;}
.d2-1241116587 .color-N5{color:#DEE1EB;}
.d2-1241116587 .color-N6{color:#EEF1F8;}
.d2-1241116587 .color-N7{color:#FFFFFF;}
.d2-1241116587 .color-B1{color:#170034;}
.d2-1241116587 .color-B2{color:#7639C5;}
.d2-1241116587 .color-B3{color:#8F70D1;}
.d2-1241116587 .color-B4{color:#D0B9F5;}
.d2-1241116587 .color-B5{color:#E7DEFF;}
.d2-1241116587 .color-B6{color:#F4F0FF;}
.d2-1241116587 .color-AA2{color:#0F66B7;}
.d2-1241116587 .color-AA4{color:#87BFF3;}
.d2-1241116587 .color-AA5{color:#BCDDFB;}
.d2-1241116587 .color-AB4{color:#92E3E3;}
.d2-1241116587 .color-AB5{color:#D7F5F5;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#170034;--color-border-muted:#7639C5;--color-neutral-muted:#EEF1F8;--color-accent-fg:#7639C5;--color-accent-emphasis:#7639C5;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-B4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}@media screen and (prefers-color-scheme:dark){
.d2-1241116587 .fill-N1{fill:#CDD6F4;}
.d2-1241116587 .fill-N2{fill:#BAC2DE;}
.d2-1241116587 .fill-N3{fill:#A6ADC8;}
.d2-1241116587 .fill-N4{fill:#585B70;}
.d2-1241116587 .fill-N5{fill:#45475A;}
.d2-1241116587 .fill-N6{fill:#313244;}
.d2-1241116587 .fill-N7{fill:#1E1E2E;}
.d2-1241116587 .fill-B1{fill:#CBA6f7;}
.d2-1241116587 .fill-B2{fill:#CBA6f7;}
.d2-1241116587 .fill-B3{fill:#6C7086;}
.d2-1241116587 .fill-B4{fill:#585B70;}
.d2-1241116587 .fill-B5{fill:#45475A;}
.d2-1241116587 .fill-B6{fill:#313244;}
.d2-1241116587 .fill-AA2{fill:#f38BA8;}
.d2-1241116587 .fill-AA4{fill:#45475A;}
.d2-1241116587 .fill-AA5{fill:#313244;}
.d2-1241116587 .fill-AB4{fill:#45475A;}
.d2-1241116587 .fill-AB5{fill:#313244;}
.d2-1241116587 .stroke-N1{stroke:#CDD6F4;}
.d2-1241116587 .stroke-N2{stroke:#BAC2DE;}
.d2-1241116587 .stroke-N3{stroke:#A6ADC8;}
.d2-1241116587 .stroke-N4{stroke:#585B70;}
.d2-1241116587 .stroke-N5{stroke:#45475A;}
.d2-1241116587 .stroke-N6{stroke:#313244;}
.d2-1241116587 .stroke-N7{stroke:#1E1E2E;}
.d2-1241116587 .stroke-B1{stroke:#CBA6f7;}
.d2-1241116587 .stroke-B2{stroke:#CBA6f7;}
.d2-1241116587 .stroke-B3{stroke:#6C7086;}
.d2-1241116587 .stroke-B4{stroke:#585B70;}
.d2-1241116587 .stroke-B5{stroke:#45475A;}
.d2-1241116587 .stroke-B6{stroke:#313244;}
.d2-1241116587 .stroke-AA2{stroke:#f38BA8;}
.d2-1241116587 .stroke-AA4{stroke:#45475A;}
.d2-1241116587 .stroke-AA5{stroke:#313244;}
.d2-1241116587 .stroke-AB4{stroke:#45475A;}
.d2-1241116587 .stroke-AB5{stroke:#313244;}
.d2-1241116587 .background-color-N1{background-color:#CDD6F4;}
.d2-1241116587 .background-color-N2{background-color:#BAC2DE;}
.d2-1241116587 .background-color-N3{background-color:#A6ADC8;}
.d2-1241116587 .background-color-N4{background-color:#585B70;}
.d2-1241116587 .background-color-N5{background-color:#45475A;}
.d2-1241116587 .background-color-N6{background-color:#313244;}
.d2-1241116587 .background-color-N7{background-color:#1E1E2E;}
.d2-1241116587 .background-color-B1{background-color:#CBA6f7;}
.d2-1241116587 .background-color-B2{background-color:#CBA6f7;}
.d2-1241116587 .background-color-B3{background-color:#6C7086;}
.d2-1241116587 .background-color-B4{background-color:#585B70;}
.d2-1241116587 .background-color-B5{background-color:#45475A;}
.d2-1241116587 .background-color-B6{background-color:#313244;}
.d2-1241116587 .background-color-AA2{background-color:#f38BA8;}
.d2-1241116587 .background-color-AA4{background-color:#45475A;}
.d2-1241116587 .background-color-AA5{background-color:#313244;}
.d2-1241116587 .background-color-AB4{background-color:#45475A;}
.d2-1241116587 .background-color-AB5{background-color:#313244;}
.d2-1241116587 .color-N1{color:#CDD6F4;}
.d2-1241116587 .color-N2{color:#BAC2DE;}
.d2-1241116587 .color-N3{color:#A6ADC8;}
.d2-1241116587 .color-N4{color:#585B70;}
.d2-1241116587 .color-N5{color:#45475A;}
.d2-1241116587 .color-N6{color:#313244;}
.d2-1241116587 .color-N7{color:#1E1E2E;}
.d2-1241116587 .color-B1{color:#CBA6f7;}
.d2-1241116587 .color-B2{color:#CBA6f7;}
.d2-1241116587 .color-B3{color:#6C7086;}
.d2-1241116587 .color-B4{color:#585B70;}
.d2-1241116587 .color-B5{color:#45475A;}
.d2-1241116587 .color-B6{color:#313244;}
.d2-1241116587 .color-AA2{color:#f38BA8;}
.d2-1241116587 .color-AA4{color:#45475A;}
.d2-1241116587 .color-AA5{color:#313244;}
.d2-1241116587 .color-AB4{color:#45475A;}
.d2-1241116587 .color-AB5{color:#313244;}.appendix text.text{fill:#CDD6F4}.md{--color-fg-default:#CDD6F4;--color-fg-muted:#BAC2DE;--color-fg-subtle:#A6ADC8;--color-canvas-default:#1E1E2E;--color-canvas-subtle:#313244;--color-border-default:#CBA6f7;--color-border-muted:#CBA6f7;--color-neutral-muted:#313244;--color-accent-fg:#CBA6f7;--color-accent-emphasis:#CBA6f7;--color-attention-subtle:#BAC2DE;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-B2{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-B4{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-B5{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B6{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-AA2{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-AA4{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-AA5{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-AB4{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-AB5{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N1{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N2{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N6{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N7{fill:url(#streaks-darker);mix-blend-mode:lighten}.light-code{display: none}.dark-code{display: block}}]]></style><g id="drop"><g class="shape" ><ellipse rx="48.000000" ry="48.000000" cx="48.000000" cy="451.000000" class="shape stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="48.000000" y="456.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">drop</text></g><g id="done"><g class="shape" ><ellipse rx="49.000000" ry="49.000000" cx="257.000000" cy="719.000000" class="shape stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="257.000000" y="724.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">done</text></g><g id="Task"><g class="shape" ><rect x="193.000000" y="0.000000" width="79.000000" height="66.000000" class=" stroke-B1 fill-B6" style="stroke-width:2;" /></g><text x="232.500000" y="38.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Task</text></g><g id="Task Handler"><g class="shape" ><rect x="146.000000" y="186.000000" width="195.000000" height="328.000000" class=" stroke-B1 fill-B4" style="stroke-width:2;" /></g><text x="243.500000" y="173.000000" class="text-bold fill-N1" style="text-anchor:middle;font-size:28px">Task Handler</text></g><g id="Task Handler.Validator"><g class="shape" ><rect x="176.000000" y="216.000000" width="112.000000" height="66.000000" class=" stroke-B1 fill-B5" style="stroke-width:2;" /></g><text x="232.000000" y="254.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Validator</text></g><g id="Task Handler.Executor"><g class="shape" ><rect x="203.000000" y="418.000000" width="108.000000" height="66.000000" class=" stroke-B1 fill-B5" style="stroke-width:2;" /></g><text x="257.000000" y="456.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">Executor</text></g><g id="(Task -&gt; Task Handler.Validator)[0]"><marker id="mk-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 232.000000 68.000000 C 232.000000 106.000000 232.000000 176.000000 232.000000 212.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-1241116587)" /></g><g id="(Task Handler.Validator -&gt; drop)[0]"><path d="M 220.405233 283.409516 C 205.800003 330.299988 179.000000 358.799988 90.263540 421.687143" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-1241116587)" /><text x="170.000000" y="371.000000" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">false</text></g><g id="Task Handler.(Validator -&gt; Executor)[0]"><path d="M 241.507426 283.434559 C 253.800003 330.299988 257.000000 357.700012 257.000000 414.500000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-1241116587)" /><text x="256.000000" y="355.000000" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">true</text></g><g id="(Task Handler.Executor -&gt; done)[0]"><path d="M 257.000000 486.000000 C 257.000000 536.000000 257.000000 621.599976 257.000000 666.000000" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-3488378134)" mask="url(#d2-1241116587)" /><text x="257.500000" y="583.000000" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">success</text></g><mask id="d2-1241116587" maskUnits="userSpaceOnUse" x="-101" y="-101" width="543" height="970">
<rect x="-101" y="-101" width="543" height="970" fill="white"></rect>
<rect x="31.000000" y="440.500000" width="34" height="21" fill="rgba(0,0,0,0.75)"></rect>
<rect x="239.000000" y="708.500000" width="36" height="21" fill="rgba(0,0,0,0.75)"></rect>
<rect x="215.500000" y="22.500000" width="34" height="21" fill="rgba(0,0,0,0.75)"></rect>
<rect x="161.500000" y="145.000000" width="164" height="36" fill="rgba(0,0,0,0.75)"></rect>
<rect x="198.500000" y="238.500000" width="67" height="21" fill="rgba(0,0,0,0.75)"></rect>
<rect x="225.500000" y="440.500000" width="63" height="21" fill="rgba(0,0,0,0.75)"></rect>
<rect x="154.000000" y="355.000000" width="32" height="21" fill="black"></rect>
<rect x="242.000000" y="339.000000" width="28" height="21" fill="black"></rect>
<rect x="232.000000" y="567.000000" width="51" height="21" fill="black"></rect>
</mask></svg></svg>