B:BD[
3.1995] → [
3.1996:62665]
<svg aria-roledescription="flowchart-v2" role="graphics-document document" viewBox="0 0 5565.203125 2092.96875" style="max-width: 5565.2px; background-color: white;" class="flowchart" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" width="100%" id="my-svg"><style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#my-svg .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#my-svg .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:1px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-thickness-invisible{stroke-width:0;fill:none;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg p{margin:0;}#my-svg .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#my-svg .cluster-label text{fill:#333;}#my-svg .cluster-label span{color:#333;}#my-svg .cluster-label span p{background-color:transparent;}#my-svg .label text,#my-svg span{fill:#333;color:#333;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .rough-node .label text,#my-svg .node .label text,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-anchor:middle;}#my-svg .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#my-svg .rough-node .label,#my-svg .node .label,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-align:center;}#my-svg .node.clickable{cursor:pointer;}#my-svg .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#my-svg .arrowheadPath{fill:#333333;}#my-svg .edgePath .path{stroke:#333333;stroke-width:2.0px;}#my-svg .flowchart-link{stroke:#333333;fill:none;}#my-svg .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#my-svg .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#my-svg .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#my-svg .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#my-svg .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#my-svg .cluster text{fill:#333;}#my-svg .cluster span{color:#333;}#my-svg div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#my-svg .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg rect.text{fill:none;stroke-width:0;}#my-svg .icon-shape,#my-svg .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#my-svg .icon-shape p,#my-svg .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#my-svg .icon-shape rect,#my-svg .image-shape rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style><g><marker orient="auto" markerHeight="8" markerWidth="8" markerUnits="userSpaceOnUse" refY="5" refX="5" viewBox="0 0 10 10" class="marker flowchart-v2" id="my-svg_flowchart-v2-pointEnd"><path style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 0 0 L 10 5 L 0 10 z"/></marker><marker orient="auto" markerHeight="8" markerWidth="8" markerUnits="userSpaceOnUse" refY="5" refX="4.5" viewBox="0 0 10 10" class="marker flowchart-v2" id="my-svg_flowchart-v2-pointStart"><path style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 0 5 L 10 10 L 10 0 z"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5" refX="11" viewBox="0 0 10 10" class="marker flowchart-v2" id="my-svg_flowchart-v2-circleEnd"><circle style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" r="5" cy="5" cx="5"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5" refX="-1" viewBox="0 0 10 10" class="marker flowchart-v2" id="my-svg_flowchart-v2-circleStart"><circle style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" r="5" cy="5" cx="5"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5.2" refX="12" viewBox="0 0 11 11" class="marker cross flowchart-v2" id="my-svg_flowchart-v2-crossEnd"><path style="stroke-width: 2; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 1,1 l 9,9 M 10,1 l -9,9"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5.2" refX="-1" viewBox="0 0 11 11" class="marker cross flowchart-v2" id="my-svg_flowchart-v2-crossStart"><path style="stroke-width: 2; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 1,1 l 9,9 M 10,1 l -9,9"/></marker><g class="root"><g class="clusters"/><g class="edgePaths"><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_App_KindeProvider_0" d="M4667.664,123.5L4667.664,137.917C4667.664,152.333,4667.664,181.167,4667.664,199.083C4667.664,217,4667.664,224,4667.664,227.5L4667.664,231"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_KindeProvider_PublicContent_0" d="M4537.664,279.586L4264.572,291.322C3991.479,303.058,3445.294,326.529,3175.902,345.832C2906.509,365.135,2913.909,380.271,2917.609,387.839L2921.309,395.406"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_KindeProvider_AuthorisedContent_0" d="M4537.664,282.212L4358.815,293.51C4179.966,304.808,3822.268,327.404,3649.261,344.403C3476.254,361.402,3487.937,372.804,3493.779,378.505L3499.62,384.206"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_PublicContent_PC_Auth_0" d="M2936.266,453L2936.266,459.167C2936.266,465.333,2936.266,477.667,2936.336,487.417C2936.406,497.167,2936.547,504.334,2936.617,507.917L2936.687,511.501"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_PC_Auth_Authenticate_0" d="M2898.187,649.797L2887.95,662.31C2877.713,674.823,2857.24,699.849,2847.003,717.862C2836.766,735.875,2836.766,746.875,2836.766,752.375L2836.766,757.875"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_PC_Auth_NoPublicContent_0" d="M2975.344,649.797L2985.414,662.31C2995.484,674.823,3015.625,699.849,3025.695,719.862C3035.766,739.875,3035.766,754.875,3035.766,762.375L3035.766,769.875"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AuthorisedContent_AC_Auth_0" d="M3542.445,465L3542.445,469.167C3542.445,473.333,3542.445,481.667,3542.516,489.417C3542.586,497.167,3542.726,504.334,3542.797,507.917L3542.867,511.501"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_Auth_NoAuthorisedContent_0" d="M3479.802,625.232L3434.476,641.839C3389.149,658.446,3298.496,691.661,3253.17,715.768C3207.844,739.875,3207.844,754.875,3207.844,762.375L3207.844,769.875"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_Auth_AC_Content_0" d="M3613.007,618.313L3689.269,636.073C3765.53,653.834,3918.052,689.354,3994.313,714.615C4070.574,739.875,4070.574,754.875,4070.574,762.375L4070.574,769.875"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_Content_UserProfile_0" d="M3970.699,809.462L3840.012,820.697C3709.326,831.933,3447.952,854.404,3318.365,879.566C3188.779,904.728,3190.98,932.581,3192.081,946.508L3193.181,960.434"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_Content_AC_View_0" d="M4170.449,819.092L4223.247,828.723C4276.044,838.353,4381.639,857.614,4434.511,872.828C4487.383,888.042,4487.532,899.209,4487.607,904.792L4487.681,910.375"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_View_Datasets_0" d="M4407.381,1013.115L4236.341,1032.591C4065.301,1052.066,3723.221,1091.018,3555.19,1122.015C3387.16,1153.012,3393.18,1176.055,3396.19,1187.577L3399.199,1199.099"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_View_Dataset_0" d="M4562.819,1018.384L4659.72,1036.982C4756.621,1055.579,4950.424,1092.774,5047.325,1130.871C5144.227,1168.969,5144.227,1207.969,5144.227,1227.469L5144.227,1246.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Dataset_DatasetTabs_0" d="M5144.227,1328.969L5144.227,1347.135C5144.227,1365.302,5144.227,1401.635,5144.227,1435.302C5144.227,1468.969,5144.227,1499.969,5144.227,1515.469L5144.227,1530.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_DatasetTabs_Locations_0" d="M5058.422,1570.65L4868.456,1589.87C4678.49,1609.09,4298.557,1647.529,4194.851,1684.756C4091.145,1721.983,4263.666,1757.998,4349.926,1776.006L4436.186,1794.013"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_DatasetTabs_Species_0" d="M5183.027,1588.969L5206.26,1605.135C5229.492,1621.302,5275.957,1653.635,5303.534,1675.441C5331.11,1697.246,5339.799,1708.523,5344.143,1714.162L5348.487,1719.8"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Species_EbirdSearch_0" d="M5427.203,1920.969L5427.203,1927.135C5427.203,1933.302,5427.203,1945.635,5427.203,1955.302C5427.203,1964.969,5427.203,1971.969,5427.203,1975.469L5427.203,1978.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_View_Clusters_0" d="M4420.009,1025.743L4365.754,1043.114C4311.499,1060.485,4202.99,1095.227,4152.526,1118.212C4102.063,1141.197,4109.645,1152.425,4113.436,1158.04L4117.227,1163.654"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_View_ClusterComponent_0" d="M4487.734,1093.469L4487.651,1099.552C4487.568,1105.635,4487.401,1117.802,4491.033,1133.431C4494.665,1149.06,4502.095,1168.15,4505.81,1177.696L4509.525,1187.241"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_View_Selection_0" d="M4546.79,1034.413L4577.713,1050.339C4608.636,1066.265,4670.482,1098.117,4709.071,1123.688C4747.661,1149.258,4762.994,1168.548,4770.66,1178.193L4778.326,1187.837"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_ClusterComponent_FileModal_0" d="M4549.508,1388.969L4549.508,1397.135C4549.508,1405.302,4549.508,1421.635,4554.196,1433.552C4558.883,1445.469,4568.259,1452.97,4572.947,1456.72L4577.634,1460.47"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Selection_FileModal_0" d="M4859.508,1388.969L4859.508,1397.135C4859.508,1405.302,4859.508,1421.635,4854.82,1433.552C4850.132,1445.469,4840.757,1452.97,4836.069,1456.72L4831.381,1460.47"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Datasets_AC_Content_0" d="M3427.423,1202.969L3428.051,1190.802C3428.678,1178.635,3429.933,1154.302,3430.56,1121.044C3431.188,1087.786,3431.188,1045.604,3431.188,1003.422C3431.188,961.24,3431.188,919.057,3520.444,887.357C3609.701,855.656,3788.214,834.437,3877.471,823.828L3966.727,813.219"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Locations_AC_Content_0" d="M4440.102,1793.971L4356.522,1775.971C4272.943,1757.97,4105.784,1721.969,4022.204,1683.302C3938.625,1644.635,3938.625,1603.302,3938.625,1561.969C3938.625,1520.635,3938.625,1479.302,3938.625,1433.969C3938.625,1388.635,3938.625,1339.302,3938.625,1287.969C3938.625,1236.635,3938.625,1183.302,3938.625,1135.544C3938.625,1087.786,3938.625,1045.604,3938.625,1003.422C3938.625,961.24,3938.625,919.057,3952.226,890.132C3965.827,861.207,3993.029,845.539,4006.63,837.705L4020.231,829.871"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Clusters_AC_Content_0" d="M4230.114,1166.969L4231.498,1160.802C4232.881,1154.635,4235.647,1142.302,4237.031,1115.044C4238.414,1087.786,4238.414,1045.604,4238.414,1003.422C4238.414,961.24,4238.414,919.057,4220.986,890.074C4203.558,861.092,4168.702,845.308,4151.273,837.417L4133.845,829.525"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Species_AC_Content_0" d="M5392.706,1722.969L5390.557,1716.802C5388.408,1710.635,5384.11,1698.302,5381.961,1671.469C5379.813,1644.635,5379.813,1603.302,5379.813,1561.969C5379.813,1520.635,5379.813,1479.302,5379.813,1433.969C5379.813,1388.635,5379.813,1339.302,5379.813,1287.969C5379.813,1236.635,5379.813,1183.302,5379.813,1135.544C5379.813,1087.786,5379.813,1045.604,5379.813,1003.422C5379.813,961.24,5379.813,919.057,5178.917,886.304C4978.022,853.551,4576.232,830.228,4375.337,818.566L4174.442,806.904"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_Content_Breadcrumbs_0" d="M3970.699,821.149L3924.947,830.437C3879.195,839.725,3787.691,858.3,3741.939,879.512C3696.188,900.724,3696.188,924.573,3696.188,936.497L3696.188,948.422"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_UserProfile_KindeProvider_0" d="M3229.648,964.422L3242.02,949.831C3254.393,935.24,3279.138,906.057,3291.51,878.799C3303.883,851.542,3303.883,826.208,3303.883,800.875C3303.883,775.542,3303.883,750.208,3303.883,716.969C3303.883,683.729,3303.883,642.583,3303.883,603.438C3303.883,564.292,3303.883,527.146,3303.883,497.906C3303.883,468.667,3303.883,447.333,3303.883,424C3303.883,400.667,3303.883,375.333,3508.847,351.245C3713.812,327.156,4123.741,304.311,4328.706,292.889L4533.67,281.467"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_PublicContent_KindeProvider_0" d="M3006.04,399L3027.145,390.833C3048.249,382.667,3090.459,366.333,3345.063,346.606C3599.668,326.878,4066.669,303.756,4300.169,292.195L4533.669,280.634"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AuthorisedContent_KindeProvider_0" d="M3561.512,387L3564.527,380.833C3567.542,374.667,3573.572,362.333,3735.599,345.06C3897.626,327.786,4215.65,305.573,4374.662,294.466L4533.674,283.359"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Datasets_KindeProvider_0" d="M3552.938,1242.507L3604.313,1223.751C3655.688,1204.994,3758.438,1167.482,3809.813,1127.634C3861.188,1087.786,3861.188,1045.604,3861.188,1003.422C3861.188,961.24,3861.188,919.057,3861.188,885.299C3861.188,851.542,3861.188,826.208,3861.188,800.875C3861.188,775.542,3861.188,750.208,3861.188,716.969C3861.188,683.729,3861.188,642.583,3861.188,603.438C3861.188,564.292,3861.188,527.146,3861.188,497.906C3861.188,468.667,3861.188,447.333,3861.188,424C3861.188,400.667,3861.188,375.333,3973.27,352.104C4085.352,328.875,4309.517,307.751,4421.599,297.188L4533.682,286.626"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Locations_KindeProvider_0" d="M4700.102,1796.527L4794.257,1778.101C4888.411,1759.674,5076.721,1722.822,5170.876,1683.729C5265.031,1644.635,5265.031,1603.302,5265.031,1561.969C5265.031,1520.635,5265.031,1479.302,5265.031,1433.969C5265.031,1388.635,5265.031,1339.302,5265.031,1287.969C5265.031,1236.635,5265.031,1183.302,5265.031,1135.544C5265.031,1087.786,5265.031,1045.604,5265.031,1003.422C5265.031,961.24,5265.031,919.057,5265.031,885.299C5265.031,851.542,5265.031,826.208,5265.031,800.875C5265.031,775.542,5265.031,750.208,5265.031,716.969C5265.031,683.729,5265.031,642.583,5265.031,603.438C5265.031,564.292,5265.031,527.146,5265.031,497.906C5265.031,468.667,5265.031,447.333,5265.031,424C5265.031,400.667,5265.031,375.333,5187.798,352.841C5110.565,330.348,4956.098,310.696,4878.865,300.87L4801.632,291.044"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Clusters_KindeProvider_0" d="M4325.65,1166.969L4331.823,1160.802C4337.996,1154.635,4350.342,1142.302,4356.515,1115.044C4362.688,1087.786,4362.688,1045.604,4362.688,1003.422C4362.688,961.24,4362.688,919.057,4362.688,885.299C4362.688,851.542,4362.688,826.208,4362.688,800.875C4362.688,775.542,4362.688,750.208,4362.688,716.969C4362.688,683.729,4362.688,642.583,4362.688,603.438C4362.688,564.292,4362.688,527.146,4362.688,497.906C4362.688,468.667,4362.688,447.333,4362.688,424C4362.688,400.667,4362.688,375.333,4391.203,355.561C4419.719,335.788,4476.751,321.575,4505.267,314.469L4533.783,307.363"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_ClusterComponent_KindeProvider_0" d="M4628.2,1190.969L4636.281,1180.802C4644.363,1170.635,4660.525,1150.302,4668.606,1119.044C4676.688,1087.786,4676.688,1045.604,4676.688,1003.422C4676.688,961.24,4676.688,919.057,4676.688,885.299C4676.688,851.542,4676.688,826.208,4676.688,800.875C4676.688,775.542,4676.688,750.208,4676.688,716.969C4676.688,683.729,4676.688,642.583,4676.688,603.438C4676.688,564.292,4676.688,527.146,4676.688,497.906C4676.688,468.667,4676.688,447.333,4676.688,424C4676.688,400.667,4676.688,375.333,4676.034,357.162C4675.38,338.991,4674.073,327.981,4673.42,322.477L4672.766,316.972"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Species_KindeProvider_0" d="M5476.26,1722.969L5479.315,1716.802C5482.371,1710.635,5488.482,1698.302,5491.538,1671.469C5494.594,1644.635,5494.594,1603.302,5494.594,1561.969C5494.594,1520.635,5494.594,1479.302,5494.594,1433.969C5494.594,1388.635,5494.594,1339.302,5494.594,1287.969C5494.594,1236.635,5494.594,1183.302,5494.594,1135.544C5494.594,1087.786,5494.594,1045.604,5494.594,1003.422C5494.594,961.24,5494.594,919.057,5494.594,885.299C5494.594,851.542,5494.594,826.208,5494.594,800.875C5494.594,775.542,5494.594,750.208,5494.594,716.969C5494.594,683.729,5494.594,642.583,5494.594,603.438C5494.594,564.292,5494.594,527.146,5494.594,497.906C5494.594,468.667,5494.594,447.333,5494.594,424C5494.594,400.667,5494.594,375.333,5379.103,352.052C5263.612,328.771,5032.629,307.543,4917.138,296.928L4801.647,286.314"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Selection_KindeProvider_0" d="M4887.564,1190.969L4890.445,1180.802C4893.327,1170.635,4899.089,1150.302,4901.97,1119.044C4904.852,1087.786,4904.852,1045.604,4904.852,1003.422C4904.852,961.24,4904.852,919.057,4904.852,885.299C4904.852,851.542,4904.852,826.208,4904.852,800.875C4904.852,775.542,4904.852,750.208,4904.852,716.969C4904.852,683.729,4904.852,642.583,4904.852,603.438C4904.852,564.292,4904.852,527.146,4904.852,497.906C4904.852,468.667,4904.852,447.333,4904.852,424C4904.852,400.667,4904.852,375.333,4886.241,356.703C4867.63,338.074,4830.409,326.147,4811.799,320.184L4793.188,314.221"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_FileModal_KindeProvider_0" d="M4834.508,1511.594L4866.174,1499.323C4897.841,1487.052,4961.174,1462.51,4992.841,1425.573C5024.508,1388.635,5024.508,1339.302,5024.508,1287.969C5024.508,1236.635,5024.508,1183.302,5024.508,1135.544C5024.508,1087.786,5024.508,1045.604,5024.508,1003.422C5024.508,961.24,5024.508,919.057,5024.508,885.299C5024.508,851.542,5024.508,826.208,5024.508,800.875C5024.508,775.542,5024.508,750.208,5024.508,716.969C5024.508,683.729,5024.508,642.583,5024.508,603.438C5024.508,564.292,5024.508,527.146,5024.508,497.906C5024.508,468.667,5024.508,447.333,5024.508,424C5024.508,400.667,5024.508,375.333,4987.353,354.753C4950.197,334.173,4875.887,318.347,4838.732,310.434L4801.576,302.52"/></g><g class="edgeLabels"><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(2836.765625, 724.875)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(3035.765625, 724.875)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(3207.84375, 724.875)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(4070.57421875, 724.875)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(3381.140625, 1129.96875)" class="edgeLabel"><g transform="translate(-30.046875, -12)" class="label"><foreignObject height="24" width="60.09375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>datasets</p></span></div></foreignObject></g></g><g transform="translate(5144.2265625, 1129.96875)" class="edgeLabel"><g transform="translate(-26.8125, -12)" class="label"><foreignObject height="24" width="53.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>dataset</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(4094.48046875, 1129.96875)" class="edgeLabel"><g transform="translate(-27.8125, -12)" class="label"><foreignObject height="24" width="55.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>clusters</p></span></div></foreignObject></g></g><g transform="translate(4487.234375, 1129.96875)" class="edgeLabel"><g transform="translate(-24.578125, -12)" class="label"><foreignObject height="24" width="49.15625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>cluster</p></span></div></foreignObject></g></g><g transform="translate(4732.328125, 1129.96875)" class="edgeLabel"><g transform="translate(-35.640625, -12)" class="label"><foreignObject height="24" width="71.28125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>selections</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(3431.1875, 1003.421875)" class="edgeLabel"><g transform="translate(-100, -24)" class="label"><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>onDatasetSelect(id, name, permissions)</p></span></div></foreignObject></g></g><g transform="translate(3938.625, 1289.96875)" class="edgeLabel"><g transform="translate(-98.8984375, -12)" class="label"><foreignObject height="24" width="197.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>onLocationSelect(id, name)</p></span></div></foreignObject></g></g><g transform="translate(4238.4140625, 1003.421875)" class="edgeLabel"><g transform="translate(-93.671875, -12)" class="label"><foreignObject height="24" width="187.34375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>onClusterSelect(id, name)</p></span></div></foreignObject></g></g><g transform="translate(5379.8125, 1289.96875)" class="edgeLabel"><g transform="translate(-94.78125, -12)" class="label"><foreignObject height="24" width="189.5625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>onSpeciesSelect(id, name)</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(3303.8828125, 601.4375)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(3132.66796875, 350)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(3579.6015625, 350)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(3861.1875, 724.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(5265.03125, 876.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(4362.6875, 724.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(4676.6875, 724.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(5494.59375, 876.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(4904.8515625, 724.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(5024.5078125, 800.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g></g><g class="nodes"><g transform="translate(0, 12)" class="root"><g class="clusters"><g data-look="classic" id="subGraph1" class="cluster"><rect height="153" width="1753.265625" y="8" x="8" style=""/><g transform="translate(838.5390625, 8)" class="cluster-label"><foreignObject height="24" width="92.1875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Key Features</p></span></div></foreignObject></g></g></g><g class="edgePaths"/><g class="edgeLabels"/><g class="nodes"><g transform="translate(173, 84.5)" id="flowchart-Features_Auth-83" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Role-based permissions (USER/CURATOR/ADMIN)</p></span></div></foreignObject></g></g><g transform="translate(449.7890625, 84.5)" id="flowchart-Features_Pagination-84" class="node default"><rect height="54" width="193.578125" y="-27" x="-96.7890625" style="" class="basic label-container"/><g transform="translate(-66.7890625, -12)" style="" class="label"><rect/><foreignObject height="24" width="133.578125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Pagination support</p></span></div></foreignObject></g></g><g transform="translate(706.203125, 84.5)" id="flowchart-Features_Filters-85" class="node default"><rect height="54" width="219.25" y="-27" x="-109.625" style="" class="basic label-container"/><g transform="translate(-79.625, -12)" style="" class="label"><rect/><foreignObject height="24" width="159.25"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Time/Species filtering</p></span></div></foreignObject></g></g><g transform="translate(995.828125, 84.5)" id="flowchart-Features_Audio-86" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Audio player with waveform/spectrogram</p></span></div></foreignObject></g></g><g transform="translate(1296.046875, 84.5)" id="flowchart-Features_B2-87" class="node default"><rect height="54" width="240.4375" y="-27" x="-120.21875" style="" class="basic label-container"/><g transform="translate(-90.21875, -12)" style="" class="label"><rect/><foreignObject height="24" width="180.4375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Backblaze B2 file storage</p></span></div></foreignObject></g></g><g transform="translate(1596.265625, 84.5)" id="flowchart-Features_Metadata-88" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>File metadata + Moth recorder data</p></span></div></foreignObject></g></g></g></g><g transform="translate(1803.265625, 0)" class="root"><g class="clusters"><g data-look="classic" id="subGraph0" class="cluster"><rect height="177" width="2749.40625" y="8" x="8" style=""/><g transform="translate(1290.8671875, 8)" class="cluster-label"><foreignObject height="24" width="183.671875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>API Routes (Hono Worker)</p></span></div></foreignObject></g></g></g><g class="edgePaths"/><g class="edgeLabels"/><g class="nodes"><g transform="translate(142.703125, 96.5)" id="flowchart-API_Health-74" class="node default"><rect height="54" width="199.40625" y="-27" x="-99.703125" style="" class="basic label-container"/><g transform="translate(-69.703125, -12)" style="" class="label"><rect/><foreignObject height="24" width="139.40625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api - Health check</p></span></div></foreignObject></g></g><g transform="translate(422.40625, 96.5)" id="flowchart-API_Datasets-75" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/datasets - CRUD + permissions</p></span></div></foreignObject></g></g><g transform="translate(732.40625, 96.5)" id="flowchart-API_Locations-76" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/locations - CRUD + pagination</p></span></div></foreignObject></g></g><g transform="translate(1042.40625, 96.5)" id="flowchart-API_Clusters-77" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/clusters - CRUD + recording patterns</p></span></div></foreignObject></g></g><g transform="translate(1352.40625, 96.5)" id="flowchart-API_Files-78" class="node default"><rect height="102" width="260" y="-51" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -36)" style="" class="label"><rect/><foreignObject height="72" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/files - File listing + download + selections + context</p></span></div></foreignObject></g></g><g transform="translate(1662.40625, 96.5)" id="flowchart-API_Species-79" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/species - CRUD + call types</p></span></div></foreignObject></g></g><g transform="translate(1972.40625, 96.5)" id="flowchart-API_CallTypes-80" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/call-types - Management (placeholder)</p></span></div></foreignObject></g></g><g transform="translate(2282.40625, 96.5)" id="flowchart-API_Ebird-81" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/ebird - eBird integration (placeholder)</p></span></div></foreignObject></g></g><g transform="translate(2592.40625, 96.5)" id="flowchart-API_Selection-82" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/selection - Species-filtered files</p></span></div></foreignObject></g></g></g></g><g transform="translate(4667.6640625, 96.5)" id="flowchart-App-0" class="node default"><rect height="54" width="113.984375" y="-27" x="-56.9921875" style="" class="basic label-container"/><g transform="translate(-26.9921875, -12)" style="" class="label"><rect/><foreignObject height="24" width="53.984375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>App.tsx</p></span></div></foreignObject></g></g><g transform="translate(4667.6640625, 274)" id="flowchart-KindeProvider-1" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>KindeProvider (Auth Context)</p></span></div></foreignObject></g></g><g transform="translate(2936.265625, 426)" id="flowchart-PublicContent-3" class="node default"><rect height="54" width="160.84375" y="-27" x="-80.421875" style="" class="basic label-container"/><g transform="translate(-50.421875, -12)" style="" class="label"><rect/><foreignObject height="24" width="100.84375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>PublicContent</p></span></div></foreignObject></g></g><g transform="translate(3542.4453125, 426)" id="flowchart-AuthorisedContent-5" class="node default"><rect height="78" width="193.8125" y="-39" x="-96.90625" style="" class="basic label-container"/><g transform="translate(-66.90625, -24)" style="" class="label"><rect/><foreignObject height="48" width="133.8125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>AuthorisedContent<br />(Navigation Hub)</p></span></div></foreignObject></g></g><g transform="translate(2936.265625, 601.4375)" id="flowchart-PC_Auth-7" class="node default"><polygon transform="translate(-86.4375,86.4375)" class="label-container" points="86.4375,0 172.875,-86.4375 86.4375,-172.875 0,-86.4375"/><g transform="translate(-59.4375, -12)" style="" class="label"><rect/><foreignObject height="24" width="118.875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>isAuthenticated?</p></span></div></foreignObject></g></g><g transform="translate(2836.765625, 800.875)" id="flowchart-Authenticate-9" class="node default"><rect height="78" width="175.921875" y="-39" x="-87.9609375" style="" class="basic label-container"/><g transform="translate(-57.9609375, -24)" style="" class="label"><rect/><foreignObject height="48" width="115.921875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Authenticate<br />(Login/Register)</p></span></div></foreignObject></g></g><g transform="translate(3035.765625, 800.875)" id="flowchart-NoPublicContent-11" class="node default"><rect height="54" width="122.078125" y="-27" x="-61.0390625" style="" class="basic label-container"/><g transform="translate(-31.0390625, -12)" style="" class="label"><rect/><foreignObject height="24" width="62.078125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>(Hidden)</p></span></div></foreignObject></g></g><g transform="translate(3542.4453125, 601.4375)" id="flowchart-AC_Auth-13" class="node default"><polygon transform="translate(-86.4375,86.4375)" class="label-container" points="86.4375,0 172.875,-86.4375 86.4375,-172.875 0,-86.4375"/><g transform="translate(-59.4375, -12)" style="" class="label"><rect/><foreignObject height="24" width="118.875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>isAuthenticated?</p></span></div></foreignObject></g></g><g transform="translate(3207.84375, 800.875)" id="flowchart-NoAuthorisedContent-15" class="node default"><rect height="54" width="122.078125" y="-27" x="-61.0390625" style="" class="basic label-container"/><g transform="translate(-31.0390625, -12)" style="" class="label"><rect/><foreignObject height="24" width="62.078125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>(Hidden)</p></span></div></foreignObject></g></g><g transform="translate(4070.57421875, 800.875)" id="flowchart-AC_Content-17" class="node default"><rect height="54" width="199.75" y="-27" x="-99.875" style="" class="basic label-container"/><g transform="translate(-69.875, -12)" style="" class="label"><rect/><foreignObject height="24" width="139.75"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Authorized Content</p></span></div></foreignObject></g></g><g transform="translate(3196.578125, 1003.421875)" id="flowchart-UserProfile-19" class="node default"><rect height="78" width="199.21875" y="-39" x="-99.609375" style="" class="basic label-container"/><g transform="translate(-69.609375, -24)" style="" class="label"><rect/><foreignObject height="48" width="139.21875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>UserProfile<br />(User info + logout)</p></span></div></foreignObject></g></g><g transform="translate(4487.234375, 1003.421875)" id="flowchart-AC_View-21" class="node default"><polygon transform="translate(-89.546875,89.546875)" class="label-container" points="89.546875,0 179.09375,-89.546875 89.546875,-179.09375 0,-89.546875"/><g transform="translate(-62.546875, -12)" style="" class="label"><rect/><foreignObject height="24" width="125.09375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>activeView state?</p></span></div></foreignObject></g></g><g transform="translate(3422.9375, 1289.96875)" id="flowchart-Datasets-23" class="node default"><rect height="174" width="260" y="-87" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -72)" style="" class="label"><rect/><foreignObject height="144" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Datasets<br />API: GET /api/datasets<br />API: POST /api/datasets (create)<br />API: PUT /api/datasets/{id} (update)</p></span></div></foreignObject></g></g><g transform="translate(5144.2265625, 1289.96875)" id="flowchart-Dataset-25" class="node default"><rect height="78" width="169.4375" y="-39" x="-84.71875" style="" class="basic label-container"/><g transform="translate(-54.71875, -24)" style="" class="label"><rect/><foreignObject height="48" width="109.4375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Dataset<br />(Tab container)</p></span></div></foreignObject></g></g><g transform="translate(5144.2265625, 1561.96875)" id="flowchart-DatasetTabs-27" class="node default"><rect height="54" width="171.609375" y="-27" x="-85.8046875" style="" class="basic label-container"/><g transform="translate(-55.8046875, -12)" style="" class="label"><rect/><foreignObject height="24" width="111.609375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Tabs Navigation</p></span></div></foreignObject></g></g><g transform="translate(4570.1015625, 1821.96875)" id="flowchart-Locations-29" class="node default"><rect height="222" width="260" y="-111" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -96)" style="" class="label"><rect/><foreignObject height="192" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Locations Tab<br />API: GET /api/locations?datasetId={id}&page={n}<br />API: POST /api/locations (create)<br />API: PUT /api/locations/{id} (update)</p></span></div></foreignObject></g></g><g transform="translate(5427.203125, 1821.96875)" id="flowchart-Species-31" class="node default"><rect height="198" width="260" y="-99" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -84)" style="" class="label"><rect/><foreignObject height="168" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Species Tab<br />API: GET /api/species?datasetId={id}<br />API: POST /api/species (create)<br />API: PUT /api/species/{id} (update)</p></span></div></foreignObject></g></g><g transform="translate(5427.203125, 2033.96875)" id="flowchart-EbirdSearch-33" class="node default"><rect height="102" width="260" y="-51" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -36)" style="" class="label"><rect/><foreignObject height="72" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>EbirdSearch<br />(eBird integration - placeholder)</p></span></div></foreignObject></g></g><g transform="translate(4202.5234375, 1289.96875)" id="flowchart-Clusters-35" class="node default"><rect height="246" width="260" y="-123" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -108)" style="" class="label"><rect/><foreignObject height="216" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Clusters<br />API: GET /api/clusters?locationId={id}<br />API: POST /api/clusters (create)<br />API: PUT /api/clusters/{id} (update)<br />API: DELETE /api/clusters/{id}</p></span></div></foreignObject></g></g><g transform="translate(4549.5078125, 1289.96875)" id="flowchart-ClusterComponent-37" class="node default"><rect height="198" width="260" y="-99" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -84)" style="" class="label"><rect/><foreignObject height="168" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Cluster<br />(File browser with filters)<br />API: GET /api/files?clusterId={id}&filters...<br />API: GET /api/species?datasetId={id}<br />API: GET /api/datasets/{id}</p></span></div></foreignObject></g></g><g transform="translate(4859.5078125, 1289.96875)" id="flowchart-Selection-39" class="node default"><rect height="198" width="260" y="-99" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -84)" style="" class="label"><rect/><foreignObject height="168" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Selection<br />(Species-filtered files)<br />API: GET /api/selection?datasetId={id}&speciesId={id}&filters...<br />API: GET /api/species?datasetId={id}</p></span></div></foreignObject></g></g><g transform="translate(4704.5078125, 1561.96875)" id="flowchart-FileModal-41" class="node default"><rect height="198" width="260" y="-99" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -84)" style="" class="label"><rect/><foreignObject height="168" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>File Modal<br />API: GET /api/files/{id}/download<br />API: GET /api/files/{id}/selections<br />API: GET /api/files/{id}/context</p></span></div></foreignObject></g></g><g transform="translate(3696.1875, 1003.421875)" id="flowchart-Breadcrumbs-53" class="node default"><rect height="102" width="260" y="-51" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -36)" style="" class="label"><rect/><foreignObject height="72" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Breadcrumb Navigation<br />(Dataset > Location > Cluster)</p></span></div></foreignObject></g></g></g></g></g></svg>
<svg aria-roledescription="flowchart-v2" role="graphics-document document" viewBox="0 0 8195.61328125 2148.96875" style="max-width: 8195.61px; background-color: white;" class="flowchart" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" width="100%" id="my-svg"><style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#my-svg .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#my-svg .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:1px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-thickness-invisible{stroke-width:0;fill:none;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg p{margin:0;}#my-svg .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#my-svg .cluster-label text{fill:#333;}#my-svg .cluster-label span{color:#333;}#my-svg .cluster-label span p{background-color:transparent;}#my-svg .label text,#my-svg span{fill:#333;color:#333;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .rough-node .label text,#my-svg .node .label text,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-anchor:middle;}#my-svg .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#my-svg .rough-node .label,#my-svg .node .label,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-align:center;}#my-svg .node.clickable{cursor:pointer;}#my-svg .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#my-svg .arrowheadPath{fill:#333333;}#my-svg .edgePath .path{stroke:#333333;stroke-width:2.0px;}#my-svg .flowchart-link{stroke:#333333;fill:none;}#my-svg .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#my-svg .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#my-svg .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#my-svg .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#my-svg .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#my-svg .cluster text{fill:#333;}#my-svg .cluster span{color:#333;}#my-svg div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#my-svg .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg rect.text{fill:none;stroke-width:0;}#my-svg .icon-shape,#my-svg .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#my-svg .icon-shape p,#my-svg .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#my-svg .icon-shape rect,#my-svg .image-shape rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style><g><marker orient="auto" markerHeight="8" markerWidth="8" markerUnits="userSpaceOnUse" refY="5" refX="5" viewBox="0 0 10 10" class="marker flowchart-v2" id="my-svg_flowchart-v2-pointEnd"><path style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 0 0 L 10 5 L 0 10 z"/></marker><marker orient="auto" markerHeight="8" markerWidth="8" markerUnits="userSpaceOnUse" refY="5" refX="4.5" viewBox="0 0 10 10" class="marker flowchart-v2" id="my-svg_flowchart-v2-pointStart"><path style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 0 5 L 10 10 L 10 0 z"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5" refX="11" viewBox="0 0 10 10" class="marker flowchart-v2" id="my-svg_flowchart-v2-circleEnd"><circle style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" r="5" cy="5" cx="5"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5" refX="-1" viewBox="0 0 10 10" class="marker flowchart-v2" id="my-svg_flowchart-v2-circleStart"><circle style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" r="5" cy="5" cx="5"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5.2" refX="12" viewBox="0 0 11 11" class="marker cross flowchart-v2" id="my-svg_flowchart-v2-crossEnd"><path style="stroke-width: 2; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 1,1 l 9,9 M 10,1 l -9,9"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5.2" refX="-1" viewBox="0 0 11 11" class="marker cross flowchart-v2" id="my-svg_flowchart-v2-crossStart"><path style="stroke-width: 2; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 1,1 l 9,9 M 10,1 l -9,9"/></marker><g class="root"><g class="clusters"/><g class="edgePaths"><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_App_KindeProvider_0" d="M7044.508,123.5L7044.508,137.917C7044.508,152.333,7044.508,181.167,7044.508,199.083C7044.508,217,7044.508,224,7044.508,227.5L7044.508,231"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_KindeProvider_PublicContent_0" d="M6914.508,278.998L6606.738,290.832C6298.967,302.666,5683.427,326.333,5379.357,345.734C5075.286,365.135,5082.686,380.271,5086.386,387.839L5090.086,395.406"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_KindeProvider_AuthorisedContent_0" d="M6914.508,281.001L6700.981,292.501C6487.454,304.001,6060.401,327,5852.716,344.201C5645.031,361.402,5656.714,372.804,5662.556,378.505L5668.398,384.206"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_PublicContent_PC_Auth_0" d="M5105.043,453L5105.043,459.167C5105.043,465.333,5105.043,477.667,5105.113,487.417C5105.183,497.167,5105.324,504.334,5105.394,507.917L5105.465,511.501"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_PC_Auth_Authenticate_0" d="M5066.965,649.797L5056.728,662.31C5046.491,674.823,5026.017,699.849,5015.78,717.862C5005.543,735.875,5005.543,746.875,5005.543,752.375L5005.543,757.875"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_PC_Auth_NoPublicContent_0" d="M5144.121,649.797L5154.191,662.31C5164.262,674.823,5184.402,699.849,5194.473,719.862C5204.543,739.875,5204.543,754.875,5204.543,762.375L5204.543,769.875"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AuthorisedContent_AC_Auth_0" d="M5711.223,465L5711.223,469.167C5711.223,473.333,5711.223,481.667,5711.293,489.417C5711.363,497.167,5711.504,504.334,5711.574,507.917L5711.644,511.501"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_Auth_NoAuthorisedContent_0" d="M5648.579,625.232L5603.253,641.839C5557.927,658.446,5467.274,691.661,5421.947,715.768C5376.621,739.875,5376.621,754.875,5376.621,762.375L5376.621,769.875"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_Auth_AC_Content_0" d="M5781.785,618.313L5858.046,636.073C5934.307,653.834,6086.829,689.354,6163.09,714.615C6239.352,739.875,6239.352,754.875,6239.352,762.375L6239.352,769.875"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_Content_UserProfile_0" d="M6139.477,809.462L6008.79,820.697C5878.103,831.933,5616.729,854.404,5487.143,879.566C5357.556,904.728,5359.757,932.581,5360.858,946.508L5361.959,960.434"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_Content_AC_View_0" d="M6339.227,819.51L6390.468,829.071C6441.71,838.632,6544.193,857.753,6595.509,872.898C6646.825,888.042,6646.974,899.209,6647.048,904.792L6647.122,910.375"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_View_Datasets_0" d="M6566.892,1013.185L6397.397,1032.649C6227.901,1052.113,5888.909,1091.041,5723.728,1122.047C5558.547,1153.053,5567.176,1176.138,5571.491,1187.68L5575.805,1199.222"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_View_Dataset_0" d="M6647.176,1093.469L6647.092,1099.552C6647.009,1105.635,6646.842,1117.802,6646.759,1143.385C6646.676,1168.969,6646.676,1207.969,6646.676,1227.469L6646.676,1246.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Dataset_DatasetTabs_0" d="M6646.676,1328.969L6646.676,1347.135C6646.676,1365.302,6646.676,1401.635,6646.676,1423.302C6646.676,1444.969,6646.676,1451.969,6646.676,1455.469L6646.676,1458.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_DatasetTabs_Locations_0" d="M6560.871,1497.947L6481.96,1505.284C6403.048,1512.621,6245.225,1527.295,6190.434,1546.418C6135.643,1565.542,6183.884,1589.115,6208.004,1600.901L6232.125,1612.688"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_DatasetTabs_Species_0" d="M6732.235,1516.969L6745.439,1521.135C6758.643,1525.302,6785.05,1533.635,6801.828,1543.407C6818.606,1553.178,6825.754,1564.387,6829.329,1569.992L6832.903,1575.596"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Species_EbirdSearch_0" d="M6898.191,1776.969L6898.191,1783.135C6898.191,1789.302,6898.191,1801.635,6898.191,1817.302C6898.191,1832.969,6898.191,1851.969,6898.191,1861.469L6898.191,1870.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_View_Clusters_0" d="M6579.85,1026.143L6527.084,1043.447C6474.319,1060.751,6368.788,1095.36,6319.814,1118.279C6270.84,1141.197,6278.422,1152.425,6282.213,1158.04L6286.004,1163.654"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_View_ClusterComponent_0" d="M6716.823,1023.822L6778.948,1041.513C6841.073,1059.204,6965.324,1094.586,7032.844,1131.802C7100.364,1169.017,7111.154,1208.065,7116.549,1227.589L7121.943,1247.113"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_ClusterComponent_ClusterTabs_0" d="M7133.785,1328.969L7133.785,1347.135C7133.785,1365.302,7133.785,1401.635,7133.785,1423.302C7133.785,1444.969,7133.785,1451.969,7133.785,1455.469L7133.785,1458.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_ClusterTabs_Files_0" d="M7133.785,1516.969L7133.785,1521.135C7133.785,1525.302,7133.785,1533.635,7141.397,1553.37C7149.01,1573.104,7164.234,1604.24,7171.846,1619.808L7179.458,1635.375"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_ClusterTabs_Statistics_0" d="M7219.59,1503.121L7261.829,1509.596C7304.069,1516.07,7388.548,1529.02,7430.788,1550.994C7473.027,1572.969,7473.027,1603.969,7473.027,1619.469L7473.027,1634.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Files_FileTable_0" d="M7200.285,1716.969L7200.285,1733.135C7200.285,1749.302,7200.285,1781.635,7200.285,1801.302C7200.285,1820.969,7200.285,1827.969,7200.285,1831.469L7200.285,1834.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_FileTable_FileComponent_0" d="M7200.285,1988.969L7200.285,1993.135C7200.285,1997.302,7200.285,2005.635,7200.285,2013.302C7200.285,2020.969,7200.285,2027.969,7200.285,2031.469L7200.285,2034.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_View_Selection_0" d="M6725.214,1015.43L6855.145,1034.52C6985.077,1053.61,7244.939,1091.789,7419.935,1128.799C7594.931,1165.809,7685.061,1201.65,7730.126,1219.57L7775.191,1237.491"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Selection_SelectionTabs_0" d="M7907.16,1340.969L7907.16,1357.135C7907.16,1373.302,7907.16,1405.635,7907.16,1425.302C7907.16,1444.969,7907.16,1451.969,7907.16,1455.469L7907.16,1458.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_SelectionTabs_SelectionFiles_0" d="M7827.466,1516.969L7815.168,1521.135C7802.869,1525.302,7778.273,1533.635,7765.974,1549.302C7753.676,1564.969,7753.676,1587.969,7753.676,1599.469L7753.676,1610.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_SelectionTabs_SelectionStats_0" d="M7986.854,1516.969L7999.152,1521.135C8011.451,1525.302,8036.048,1533.635,8048.346,1553.302C8060.645,1572.969,8060.645,1603.969,8060.645,1619.469L8060.645,1634.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_SelectionFiles_FileTable2_0" d="M7753.676,1740.969L7753.676,1753.135C7753.676,1765.302,7753.676,1789.635,7753.676,1811.302C7753.676,1832.969,7753.676,1851.969,7753.676,1861.469L7753.676,1870.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_FileTable2_FileComponent2_0" d="M7753.676,1952.969L7753.676,1963.135C7753.676,1973.302,7753.676,1993.635,7753.676,2009.302C7753.676,2024.969,7753.676,2035.969,7753.676,2041.469L7753.676,2046.969"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Datasets_AC_Content_0" d="M5604.419,1202.969L5603.676,1190.802C5602.934,1178.635,5601.449,1154.302,5600.707,1121.044C5599.965,1087.786,5599.965,1045.604,5599.965,1003.422C5599.965,961.24,5599.965,919.057,5689.221,887.357C5778.478,855.656,5956.991,834.437,6046.248,823.828L6135.505,813.219"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Locations_AC_Content_0" d="M6235.719,1609.526L6214.333,1598.266C6192.947,1587.007,6150.174,1564.488,6128.788,1544.562C6107.402,1524.635,6107.402,1507.302,6107.402,1489.969C6107.402,1472.635,6107.402,1455.302,6107.402,1421.969C6107.402,1388.635,6107.402,1339.302,6107.402,1287.969C6107.402,1236.635,6107.402,1183.302,6107.402,1135.544C6107.402,1087.786,6107.402,1045.604,6107.402,1003.422C6107.402,961.24,6107.402,919.057,6121.003,890.132C6134.604,861.207,6161.807,845.539,6175.408,837.705L6189.009,829.871"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Clusters_AC_Content_0" d="M6389.679,1166.969L6390.6,1160.802C6391.521,1154.635,6393.364,1142.302,6394.286,1115.044C6395.207,1087.786,6395.207,1045.604,6395.207,1003.422C6395.207,961.24,6395.207,919.057,6379.059,890.092C6362.91,861.126,6330.613,845.377,6314.465,837.503L6298.317,829.628"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Species_AC_Content_0" d="M6889.32,1578.969L6888.767,1572.802C6888.214,1566.635,6887.109,1554.302,6886.557,1539.469C6886.004,1524.635,6886.004,1507.302,6886.004,1489.969C6886.004,1472.635,6886.004,1455.302,6886.004,1421.969C6886.004,1388.635,6886.004,1339.302,6886.004,1287.969C6886.004,1236.635,6886.004,1183.302,6886.004,1135.544C6886.004,1087.786,6886.004,1045.604,6886.004,1003.422C6886.004,961.24,6886.004,919.057,6795.536,887.334C6705.069,855.61,6524.134,834.345,6433.667,823.713L6343.199,813.08"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AC_Content_Breadcrumbs_0" d="M6139.477,821.149L6093.725,830.437C6047.973,839.725,5956.469,858.3,5910.717,879.512C5864.965,900.724,5864.965,924.573,5864.965,936.497L5864.965,948.422"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_UserProfile_KindeProvider_0" d="M5398.425,964.422L5410.798,949.831C5423.17,935.24,5447.915,906.057,5460.288,878.799C5472.66,851.542,5472.66,826.208,5472.66,800.875C5472.66,775.542,5472.66,750.208,5472.66,716.969C5472.66,683.729,5472.66,642.583,5472.66,603.438C5472.66,564.292,5472.66,527.146,5472.66,497.906C5472.66,468.667,5472.66,447.333,5472.66,424C5472.66,400.667,5472.66,375.333,5712.302,351.08C5951.944,326.826,6431.228,303.653,6670.87,292.066L6910.512,280.479"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_PublicContent_KindeProvider_0" d="M5174.817,399L5195.922,390.833C5217.027,382.667,5259.236,366.333,5548.518,346.474C5837.801,326.614,6374.156,303.228,6642.334,291.535L6910.512,279.842"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_AuthorisedContent_KindeProvider_0" d="M5730.29,387L5733.305,380.833C5736.319,374.667,5742.349,362.333,5939.053,344.809C6135.757,327.286,6523.136,304.571,6716.825,293.214L6910.515,281.857"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Datasets_KindeProvider_0" d="M5739.727,1240.473L5788.1,1222.056C5836.473,1203.638,5933.219,1166.804,5981.592,1127.295C6029.965,1087.786,6029.965,1045.604,6029.965,1003.422C6029.965,961.24,6029.965,919.057,6029.965,885.299C6029.965,851.542,6029.965,826.208,6029.965,800.875C6029.965,775.542,6029.965,750.208,6029.965,716.969C6029.965,683.729,6029.965,642.583,6029.965,603.438C6029.965,564.292,6029.965,527.146,6029.965,497.906C6029.965,468.667,6029.965,447.333,6029.965,424C6029.965,400.667,6029.965,375.333,6176.724,351.673C6323.483,328.012,6617.001,306.025,6763.76,295.031L6910.519,284.037"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Locations_KindeProvider_0" d="M6495.719,1634.369L6541.636,1618.969C6587.553,1603.569,6679.388,1572.769,6725.305,1548.702C6771.223,1524.635,6771.223,1507.302,6771.223,1489.969C6771.223,1472.635,6771.223,1455.302,6771.223,1421.969C6771.223,1388.635,6771.223,1339.302,6771.223,1287.969C6771.223,1236.635,6771.223,1183.302,6771.223,1135.544C6771.223,1087.786,6771.223,1045.604,6771.223,1003.422C6771.223,961.24,6771.223,919.057,6771.223,885.299C6771.223,851.542,6771.223,826.208,6771.223,800.875C6771.223,775.542,6771.223,750.208,6771.223,716.969C6771.223,683.729,6771.223,642.583,6771.223,603.438C6771.223,564.292,6771.223,527.146,6771.223,497.906C6771.223,468.667,6771.223,447.333,6771.223,424C6771.223,400.667,6771.223,375.333,6794.461,356.204C6817.7,337.075,6864.177,324.15,6887.415,317.687L6910.654,311.224"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Clusters_KindeProvider_0" d="M6485.214,1166.969L6490.925,1160.802C6496.636,1154.635,6508.058,1142.302,6513.769,1115.044C6519.48,1087.786,6519.48,1045.604,6519.48,1003.422C6519.48,961.24,6519.48,919.057,6519.48,885.299C6519.48,851.542,6519.48,826.208,6519.48,800.875C6519.48,775.542,6519.48,750.208,6519.48,716.969C6519.48,683.729,6519.48,642.583,6519.48,603.438C6519.48,564.292,6519.48,527.146,6519.48,497.906C6519.48,468.667,6519.48,447.333,6519.48,424C6519.48,400.667,6519.48,375.333,6584.659,353.232C6649.837,331.13,6780.193,312.261,6845.371,302.826L6910.549,293.391"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_ClusterComponent_KindeProvider_0" d="M7155.531,1250.969L7166.776,1230.802C7178.021,1210.635,7200.51,1170.302,7211.755,1129.044C7223,1087.786,7223,1045.604,7223,1003.422C7223,961.24,7223,919.057,7223,885.299C7223,851.542,7223,826.208,7223,800.875C7223,775.542,7223,750.208,7223,716.969C7223,683.729,7223,642.583,7223,603.438C7223,564.292,7223,527.146,7223,497.906C7223,468.667,7223,447.333,7223,424C7223,400.667,7223,375.333,7209.13,356.761C7195.261,338.189,7167.522,326.378,7153.652,320.473L7139.783,314.567"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Species_KindeProvider_0" d="M6972.874,1578.969L6977.526,1572.802C6982.177,1566.635,6991.481,1554.302,6996.133,1539.469C7000.785,1524.635,7000.785,1507.302,7000.785,1489.969C7000.785,1472.635,7000.785,1455.302,7000.785,1421.969C7000.785,1388.635,7000.785,1339.302,7000.785,1287.969C7000.785,1236.635,7000.785,1183.302,7000.785,1135.544C7000.785,1087.786,7000.785,1045.604,7000.785,1003.422C7000.785,961.24,7000.785,919.057,7000.785,885.299C7000.785,851.542,7000.785,826.208,7000.785,800.875C7000.785,775.542,7000.785,750.208,7000.785,716.969C7000.785,683.729,7000.785,642.583,7000.785,603.438C7000.785,564.292,7000.785,527.146,7000.785,497.906C7000.785,468.667,7000.785,447.333,7000.785,424C7000.785,400.667,7000.785,375.333,7004,357.078C7007.216,338.822,7013.646,327.645,7016.861,322.056L7020.077,316.467"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Selection_KindeProvider_0" d="M7916.028,1238.969L7919.187,1220.802C7922.345,1202.635,7928.663,1166.302,7931.822,1127.044C7934.98,1087.786,7934.98,1045.604,7934.98,1003.422C7934.98,961.24,7934.98,919.057,7934.98,885.299C7934.98,851.542,7934.98,826.208,7934.98,800.875C7934.98,775.542,7934.98,750.208,7934.98,716.969C7934.98,683.729,7934.98,642.583,7934.98,603.438C7934.98,564.292,7934.98,527.146,7934.98,497.906C7934.98,468.667,7934.98,447.333,7934.98,424C7934.98,400.667,7934.98,375.333,7808.899,351.906C7682.818,328.478,7430.656,306.957,7304.575,296.196L7178.493,285.435"/><path marker-end="url(#my-svg_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" id="L_Files_KindeProvider_0" d="M7236.524,1638.969L7251.546,1622.802C7266.568,1606.635,7296.612,1574.302,7311.634,1549.469C7326.656,1524.635,7326.656,1507.302,7326.656,1489.969C7326.656,1472.635,7326.656,1455.302,7326.656,1421.969C7326.656,1388.635,7326.656,1339.302,7326.656,1287.969C7326.656,1236.635,7326.656,1183.302,7326.656,1135.544C7326.656,1087.786,7326.656,1045.604,7326.656,1003.422C7326.656,961.24,7326.656,919.057,7326.656,885.299C7326.656,851.542,7326.656,826.208,7326.656,800.875C7326.656,775.542,7326.656,750.208,7326.656,716.969C7326.656,683.729,7326.656,642.583,7326.656,603.438C7326.656,564.292,7326.656,527.146,7326.656,497.906C7326.656,468.667,7326.656,447.333,7326.656,424C7326.656,400.667,7326.656,375.333,7301.942,356.01C7277.228,336.686,7227.799,323.372,7203.084,316.714L7178.37,310.057"/></g><g class="edgeLabels"><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(5005.54296875, 724.875)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(5204.54296875, 724.875)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(5376.62109375, 724.875)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(6239.3515625, 724.875)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(5549.91796875, 1129.96875)" class="edgeLabel"><g transform="translate(-30.046875, -12)" class="label"><foreignObject height="24" width="60.09375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>datasets</p></span></div></foreignObject></g></g><g transform="translate(6646.67578125, 1129.96875)" class="edgeLabel"><g transform="translate(-26.8125, -12)" class="label"><foreignObject height="24" width="53.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>dataset</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(6263.2578125, 1129.96875)" class="edgeLabel"><g transform="translate(-27.8125, -12)" class="label"><foreignObject height="24" width="55.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>clusters</p></span></div></foreignObject></g></g><g transform="translate(7089.57421875, 1129.96875)" class="edgeLabel"><g transform="translate(-24.578125, -12)" class="label"><foreignObject height="24" width="49.15625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>cluster</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(7504.80078125, 1129.96875)" class="edgeLabel"><g transform="translate(-35.640625, -12)" class="label"><foreignObject height="24" width="71.28125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>selections</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(5599.96484375, 1003.421875)" class="edgeLabel"><g transform="translate(-100, -24)" class="label"><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>onDatasetSelect(id, name, permissions)</p></span></div></foreignObject></g></g><g transform="translate(6107.40234375, 1289.96875)" class="edgeLabel"><g transform="translate(-98.8984375, -12)" class="label"><foreignObject height="24" width="197.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>onLocationSelect(id, name)</p></span></div></foreignObject></g></g><g transform="translate(6395.20703125, 1003.421875)" class="edgeLabel"><g transform="translate(-93.671875, -12)" class="label"><foreignObject height="24" width="187.34375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>onClusterSelect(id, name)</p></span></div></foreignObject></g></g><g transform="translate(6886.00390625, 1289.96875)" class="edgeLabel"><g transform="translate(-94.78125, -12)" class="label"><foreignObject height="24" width="189.5625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>onSpeciesSelect(id, name)</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(5472.66015625, 601.4375)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(5301.4453125, 350)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(5748.37890625, 350)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(6029.96484375, 724.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(6771.22265625, 876.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(6519.48046875, 724.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(7223, 724.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(7000.78515625, 876.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(7934.98046875, 724.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g><g transform="translate(7326.65625, 876.875)" class="edgeLabel"><g transform="translate(-54.3125, -12)" class="label"><foreignObject height="24" width="108.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>useKindeAuth()</p></span></div></foreignObject></g></g></g><g class="nodes"><g transform="translate(0, 12)" class="root"><g class="clusters"><g data-look="classic" id="subGraph2" class="cluster"><rect height="153" width="2373.265625" y="8" x="8" style=""/><g transform="translate(1148.5390625, 8)" class="cluster-label"><foreignObject height="24" width="92.1875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Key Features</p></span></div></foreignObject></g></g></g><g class="edgePaths"/><g class="edgeLabels"/><g class="nodes"><g transform="translate(173, 84.5)" id="flowchart-Features_Auth-105" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Role-based permissions (USER/CURATOR/ADMIN)</p></span></div></foreignObject></g></g><g transform="translate(449.7890625, 84.5)" id="flowchart-Features_Pagination-106" class="node default"><rect height="54" width="193.578125" y="-27" x="-96.7890625" style="" class="basic label-container"/><g transform="translate(-66.7890625, -12)" style="" class="label"><rect/><foreignObject height="24" width="133.578125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Pagination support</p></span></div></foreignObject></g></g><g transform="translate(706.203125, 84.5)" id="flowchart-Features_Filters-107" class="node default"><rect height="54" width="219.25" y="-27" x="-109.625" style="" class="basic label-container"/><g transform="translate(-79.625, -12)" style="" class="label"><rect/><foreignObject height="24" width="159.25"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Time/Species filtering</p></span></div></foreignObject></g></g><g transform="translate(995.828125, 84.5)" id="flowchart-Features_Audio-108" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Audio player with waveform/spectrogram</p></span></div></foreignObject></g></g><g transform="translate(1296.046875, 84.5)" id="flowchart-Features_B2-109" class="node default"><rect height="54" width="240.4375" y="-27" x="-120.21875" style="" class="basic label-container"/><g transform="translate(-90.21875, -12)" style="" class="label"><rect/><foreignObject height="24" width="180.4375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Backblaze B2 file storage</p></span></div></foreignObject></g></g><g transform="translate(1596.265625, 84.5)" id="flowchart-Features_Metadata-110" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>File metadata + Moth recorder data</p></span></div></foreignObject></g></g><g transform="translate(1906.265625, 84.5)" id="flowchart-Features_Analytics-111" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Statistics and data visualization</p></span></div></foreignObject></g></g><g transform="translate(2216.265625, 84.5)" id="flowchart-Features_Responsive-112" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Responsive design with Tailwind CSS</p></span></div></foreignObject></g></g></g></g><g transform="translate(2423.265625, 0)" class="root"><g class="clusters"><g data-look="classic" id="subGraph1" class="cluster"><rect height="177" width="3059.40625" y="8" x="8" style=""/><g transform="translate(1445.8671875, 8)" class="cluster-label"><foreignObject height="24" width="183.671875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>API Routes (Hono Worker)</p></span></div></foreignObject></g></g></g><g class="edgePaths"/><g class="edgeLabels"/><g class="nodes"><g transform="translate(142.703125, 96.5)" id="flowchart-API_Health-95" class="node default"><rect height="54" width="199.40625" y="-27" x="-99.703125" style="" class="basic label-container"/><g transform="translate(-69.703125, -12)" style="" class="label"><rect/><foreignObject height="24" width="139.40625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api - Health check</p></span></div></foreignObject></g></g><g transform="translate(422.40625, 96.5)" id="flowchart-API_Datasets-96" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/datasets - CRUD + permissions</p></span></div></foreignObject></g></g><g transform="translate(732.40625, 96.5)" id="flowchart-API_Locations-97" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/locations - CRUD + pagination</p></span></div></foreignObject></g></g><g transform="translate(1042.40625, 96.5)" id="flowchart-API_Clusters-98" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/clusters - CRUD + recording patterns</p></span></div></foreignObject></g></g><g transform="translate(1352.40625, 96.5)" id="flowchart-API_Files-99" class="node default"><rect height="102" width="260" y="-51" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -36)" style="" class="label"><rect/><foreignObject height="72" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/files - File listing + download + selections + context</p></span></div></foreignObject></g></g><g transform="translate(1662.40625, 96.5)" id="flowchart-API_Species-100" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/species - CRUD + call types</p></span></div></foreignObject></g></g><g transform="translate(1972.40625, 96.5)" id="flowchart-API_CallTypes-101" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/call-types - Management</p></span></div></foreignObject></g></g><g transform="translate(2282.40625, 96.5)" id="flowchart-API_Ebird-102" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/ebird - eBird integration</p></span></div></foreignObject></g></g><g transform="translate(2592.40625, 96.5)" id="flowchart-API_Selection-103" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/selection - Species-filtered files</p></span></div></foreignObject></g></g><g transform="translate(2902.40625, 96.5)" id="flowchart-API_Statistics-104" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>/api/statistics - Analytics data</p></span></div></foreignObject></g></g></g></g><g transform="translate(5532.671875, 12)" class="root"><g class="clusters"><g data-look="classic" id="subGraph0" class="cluster"><rect height="153" width="1396.84375" y="8" x="8" style=""/><g transform="translate(652.609375, 8)" class="cluster-label"><foreignObject height="24" width="107.625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>UI Components</p></span></div></foreignObject></g></g></g><g class="edgePaths"/><g class="edgeLabels"/><g class="nodes"><g transform="translate(153.234375, 84.5)" id="flowchart-UIButton-90" class="node default"><rect height="54" width="220.46875" y="-27" x="-110.234375" style="" class="basic label-container"/><g transform="translate(-80.234375, -12)" style="" class="label"><rect/><foreignObject height="24" width="160.46875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Button (ui/button.tsx)</p></span></div></foreignObject></g></g><g transform="translate(413.546875, 84.5)" id="flowchart-UITable-91" class="node default"><rect height="54" width="200.15625" y="-27" x="-100.078125" style="" class="basic label-container"/><g transform="translate(-70.078125, -12)" style="" class="label"><rect/><foreignObject height="24" width="140.15625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Table (ui/table.tsx)</p></span></div></foreignObject></g></g><g transform="translate(693.625, 84.5)" id="flowchart-UIPagination-92" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Pagination (ui/pagination.tsx)</p></span></div></foreignObject></g></g><g transform="translate(966.734375, 84.5)" id="flowchart-UITabs-93" class="node default"><rect height="54" width="186.21875" y="-27" x="-93.109375" style="" class="basic label-container"/><g transform="translate(-63.109375, -12)" style="" class="label"><rect/><foreignObject height="24" width="126.21875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Tabs (ui/tabs.tsx)</p></span></div></foreignObject></g></g><g transform="translate(1239.84375, 84.5)" id="flowchart-UIBreadcrumb-94" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Breadcrumb (ui/breadcrumb.tsx)</p></span></div></foreignObject></g></g></g></g><g transform="translate(7044.5078125, 96.5)" id="flowchart-App-0" class="node default"><rect height="54" width="113.984375" y="-27" x="-56.9921875" style="" class="basic label-container"/><g transform="translate(-26.9921875, -12)" style="" class="label"><rect/><foreignObject height="24" width="53.984375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>App.tsx</p></span></div></foreignObject></g></g><g transform="translate(7044.5078125, 274)" id="flowchart-KindeProvider-1" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -24)" style="" class="label"><rect/><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>KindeProvider (Auth Context)</p></span></div></foreignObject></g></g><g transform="translate(5105.04296875, 426)" id="flowchart-PublicContent-3" class="node default"><rect height="54" width="160.84375" y="-27" x="-80.421875" style="" class="basic label-container"/><g transform="translate(-50.421875, -12)" style="" class="label"><rect/><foreignObject height="24" width="100.84375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>PublicContent</p></span></div></foreignObject></g></g><g transform="translate(5711.22265625, 426)" id="flowchart-AuthorisedContent-5" class="node default"><rect height="78" width="193.8125" y="-39" x="-96.90625" style="" class="basic label-container"/><g transform="translate(-66.90625, -24)" style="" class="label"><rect/><foreignObject height="48" width="133.8125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>AuthorisedContent<br />(Navigation Hub)</p></span></div></foreignObject></g></g><g transform="translate(5105.04296875, 601.4375)" id="flowchart-PC_Auth-7" class="node default"><polygon transform="translate(-86.4375,86.4375)" class="label-container" points="86.4375,0 172.875,-86.4375 86.4375,-172.875 0,-86.4375"/><g transform="translate(-59.4375, -12)" style="" class="label"><rect/><foreignObject height="24" width="118.875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>isAuthenticated?</p></span></div></foreignObject></g></g><g transform="translate(5005.54296875, 800.875)" id="flowchart-Authenticate-9" class="node default"><rect height="78" width="175.921875" y="-39" x="-87.9609375" style="" class="basic label-container"/><g transform="translate(-57.9609375, -24)" style="" class="label"><rect/><foreignObject height="48" width="115.921875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Authenticate<br />(Login/Register)</p></span></div></foreignObject></g></g><g transform="translate(5204.54296875, 800.875)" id="flowchart-NoPublicContent-11" class="node default"><rect height="54" width="122.078125" y="-27" x="-61.0390625" style="" class="basic label-container"/><g transform="translate(-31.0390625, -12)" style="" class="label"><rect/><foreignObject height="24" width="62.078125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>(Hidden)</p></span></div></foreignObject></g></g><g transform="translate(5711.22265625, 601.4375)" id="flowchart-AC_Auth-13" class="node default"><polygon transform="translate(-86.4375,86.4375)" class="label-container" points="86.4375,0 172.875,-86.4375 86.4375,-172.875 0,-86.4375"/><g transform="translate(-59.4375, -12)" style="" class="label"><rect/><foreignObject height="24" width="118.875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>isAuthenticated?</p></span></div></foreignObject></g></g><g transform="translate(5376.62109375, 800.875)" id="flowchart-NoAuthorisedContent-15" class="node default"><rect height="54" width="122.078125" y="-27" x="-61.0390625" style="" class="basic label-container"/><g transform="translate(-31.0390625, -12)" style="" class="label"><rect/><foreignObject height="24" width="62.078125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>(Hidden)</p></span></div></foreignObject></g></g><g transform="translate(6239.3515625, 800.875)" id="flowchart-AC_Content-17" class="node default"><rect height="54" width="199.75" y="-27" x="-99.875" style="" class="basic label-container"/><g transform="translate(-69.875, -12)" style="" class="label"><rect/><foreignObject height="24" width="139.75"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Authorized Content</p></span></div></foreignObject></g></g><g transform="translate(5365.35546875, 1003.421875)" id="flowchart-UserProfile-19" class="node default"><rect height="78" width="199.21875" y="-39" x="-99.609375" style="" class="basic label-container"/><g transform="translate(-69.609375, -24)" style="" class="label"><rect/><foreignObject height="48" width="139.21875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>UserProfile<br />(User info + logout)</p></span></div></foreignObject></g></g><g transform="translate(6646.67578125, 1003.421875)" id="flowchart-AC_View-21" class="node default"><polygon transform="translate(-89.546875,89.546875)" class="label-container" points="89.546875,0 179.09375,-89.546875 89.546875,-179.09375 0,-89.546875"/><g transform="translate(-62.546875, -12)" style="" class="label"><rect/><foreignObject height="24" width="125.09375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>activeView state?</p></span></div></foreignObject></g></g><g transform="translate(5609.7265625, 1289.96875)" id="flowchart-Datasets-23" class="node default"><rect height="174" width="260" y="-87" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -72)" style="" class="label"><rect/><foreignObject height="144" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Datasets<br />API: GET /api/datasets<br />API: POST /api/datasets (create)<br />API: PUT /api/datasets/{id} (update)</p></span></div></foreignObject></g></g><g transform="translate(6646.67578125, 1289.96875)" id="flowchart-Dataset-25" class="node default"><rect height="78" width="169.4375" y="-39" x="-84.71875" style="" class="basic label-container"/><g transform="translate(-54.71875, -24)" style="" class="label"><rect/><foreignObject height="48" width="109.4375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Dataset<br />(Tab container)</p></span></div></foreignObject></g></g><g transform="translate(6646.67578125, 1489.96875)" id="flowchart-DatasetTabs-27" class="node default"><rect height="54" width="171.609375" y="-27" x="-85.8046875" style="" class="basic label-container"/><g transform="translate(-55.8046875, -12)" style="" class="label"><rect/><foreignObject height="24" width="111.609375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Tabs Navigation</p></span></div></foreignObject></g></g><g transform="translate(6365.71875, 1677.96875)" id="flowchart-Locations-29" class="node default"><rect height="222" width="260" y="-111" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -96)" style="" class="label"><rect/><foreignObject height="192" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Locations Tab<br />API: GET /api/locations?datasetId={id}&page={n}<br />API: POST /api/locations (create)<br />API: PUT /api/locations/{id} (update)</p></span></div></foreignObject></g></g><g transform="translate(6898.19140625, 1677.96875)" id="flowchart-Species-31" class="node default"><rect height="198" width="260" y="-99" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -84)" style="" class="label"><rect/><foreignObject height="168" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Species Tab<br />API: GET /api/species?datasetId={id}<br />API: POST /api/species (create)<br />API: PUT /api/species/{id} (update)</p></span></div></foreignObject></g></g><g transform="translate(6898.19140625, 1913.96875)" id="flowchart-EbirdSearch-33" class="node default"><rect height="78" width="193.3125" y="-39" x="-96.65625" style="" class="basic label-container"/><g transform="translate(-66.65625, -24)" style="" class="label"><rect/><foreignObject height="48" width="133.3125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>EbirdSearch<br />(eBird integration)</p></span></div></foreignObject></g></g><g transform="translate(6371.30078125, 1289.96875)" id="flowchart-Clusters-35" class="node default"><rect height="246" width="260" y="-123" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -108)" style="" class="label"><rect/><foreignObject height="216" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Clusters<br />API: GET /api/clusters?locationId={id}<br />API: POST /api/clusters (create)<br />API: PUT /api/clusters/{id} (update)<br />API: DELETE /api/clusters/{id}</p></span></div></foreignObject></g></g><g transform="translate(7133.78515625, 1289.96875)" id="flowchart-ClusterComponent-37" class="node default"><rect height="78" width="196" y="-39" x="-98" style="" class="basic label-container"/><g transform="translate(-68, -24)" style="" class="label"><rect/><foreignObject height="48" width="136"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Cluster<br />(Tabbed container)</p></span></div></foreignObject></g></g><g transform="translate(7133.78515625, 1489.96875)" id="flowchart-ClusterTabs-39" class="node default"><rect height="54" width="171.609375" y="-27" x="-85.8046875" style="" class="basic label-container"/><g transform="translate(-55.8046875, -12)" style="" class="label"><rect/><foreignObject height="24" width="111.609375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Tabs Navigation</p></span></div></foreignObject></g></g><g transform="translate(7200.28515625, 1677.96875)" id="flowchart-Files-41" class="node default"><rect height="78" width="244.1875" y="-39" x="-122.09375" style="" class="basic label-container"/><g transform="translate(-92.09375, -24)" style="" class="label"><rect/><foreignObject height="48" width="184.1875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Files Tab<br />(File browser with filters)</p></span></div></foreignObject></g></g><g transform="translate(7473.02734375, 1677.96875)" id="flowchart-Statistics-43" class="node default"><rect height="78" width="201.296875" y="-39" x="-100.6484375" style="" class="basic label-container"/><g transform="translate(-70.6484375, -24)" style="" class="label"><rect/><foreignObject height="48" width="141.296875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Statistics Tab<br />(Analytics & charts)</p></span></div></foreignObject></g></g><g transform="translate(7200.28515625, 1913.96875)" id="flowchart-FileTable-45" class="node default"><rect height="150" width="260" y="-75" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -60)" style="" class="label"><rect/><foreignObject height="120" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>FileTable<br />API: GET /api/files?clusterId={id}&filters...<br />(Reusable table component)</p></span></div></foreignObject></g></g><g transform="translate(7200.28515625, 2089.96875)" id="flowchart-FileComponent-47" class="node default"><rect height="102" width="260" y="-51" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -36)" style="" class="label"><rect/><foreignObject height="72" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>File<br />(Individual file display/playback)</p></span></div></foreignObject></g></g><g transform="translate(7907.16015625, 1289.96875)" id="flowchart-Selection-49" class="node default"><rect height="102" width="260" y="-51" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -36)" style="" class="label"><rect/><foreignObject height="72" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Selection<br />(Species-filtered files with tabs)</p></span></div></foreignObject></g></g><g transform="translate(7907.16015625, 1489.96875)" id="flowchart-SelectionTabs-51" class="node default"><rect height="54" width="171.609375" y="-27" x="-85.8046875" style="" class="basic label-container"/><g transform="translate(-55.8046875, -12)" style="" class="label"><rect/><foreignObject height="24" width="111.609375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Tabs Navigation</p></span></div></foreignObject></g></g><g transform="translate(7753.67578125, 1677.96875)" id="flowchart-SelectionFiles-53" class="node default"><rect height="126" width="260" y="-63" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -48)" style="" class="label"><rect/><foreignObject height="96" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Files Tab<br />API: GET /api/selection?datasetId={id}&speciesId={id}&filters...</p></span></div></foreignObject></g></g><g transform="translate(8060.64453125, 1677.96875)" id="flowchart-SelectionStats-55" class="node default"><rect height="78" width="253.9375" y="-39" x="-126.96875" style="" class="basic label-container"/><g transform="translate(-96.96875, -24)" style="" class="label"><rect/><foreignObject height="48" width="193.9375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Statistics Tab<br />(Species-specific analytics)</p></span></div></foreignObject></g></g><g transform="translate(7753.67578125, 1913.96875)" id="flowchart-FileTable2-57" class="node default"><rect height="78" width="206.671875" y="-39" x="-103.3359375" style="" class="basic label-container"/><g transform="translate(-73.3359375, -24)" style="" class="label"><rect/><foreignObject height="48" width="146.671875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>FileTable<br />(Reused component)</p></span></div></foreignObject></g></g><g transform="translate(7753.67578125, 2089.96875)" id="flowchart-FileComponent2-59" class="node default"><rect height="78" width="206.671875" y="-39" x="-103.3359375" style="" class="basic label-container"/><g transform="translate(-73.3359375, -24)" style="" class="label"><rect/><foreignObject height="48" width="146.671875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>File<br />(Reused component)</p></span></div></foreignObject></g></g><g transform="translate(5864.96484375, 1003.421875)" id="flowchart-Breadcrumbs-69" class="node default"><rect height="102" width="260" y="-51" x="-130" style="" class="basic label-container"/><g transform="translate(-100, -36)" style="" class="label"><rect/><foreignObject height="72" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Breadcrumb Navigation<br />(Dataset > Location > Cluster/Species)</p></span></div></foreignObject></g></g></g></g></g></svg>