diff --git a/moulds/master/100/cad/Female.SLDPRT b/moulds/master/100/cad/Female.SLDPRT new file mode 100644 index 000000000..55277ec3e --- /dev/null +++ b/moulds/master/100/cad/Female.SLDPRT @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e64ada0b24802665be49ee76efa0409f73d47428c01c7664aa145aa1067627d +size 126665 diff --git a/moulds/master/100/cad/Global.SLDASM b/moulds/master/100/cad/Global.SLDASM new file mode 100644 index 000000000..65e6f9840 --- /dev/null +++ b/moulds/master/100/cad/Global.SLDASM @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:596ca66e8014b6d028f19647f4bf6707e6808ff7891474c6597192c2a6c022bb +size 100896 diff --git a/moulds/master/100/cad/Global.html b/moulds/master/100/cad/Global.html new file mode 100644 index 000000000..4889add26 --- /dev/null +++ b/moulds/master/100/cad/Global.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bf2d5e52fedc28b46f3c5b7df4bf77b57c73eab22f803fe4f5d30fd4191b2a2 +size 8669400 diff --git a/moulds/master/100/cad/Global.jpg b/moulds/master/100/cad/Global.jpg new file mode 100644 index 000000000..f49dad539 --- /dev/null +++ b/moulds/master/100/cad/Global.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ee191c93bf4419e46de089a76c112dbbb8cfc4d84659e7e6fdc872e6aae4f57 +size 80486 diff --git a/moulds/master/100/cad/Global.json b/moulds/master/100/cad/Global.json new file mode 100644 index 000000000..cce94edd0 --- /dev/null +++ b/moulds/master/100/cad/Global.json @@ -0,0 +1,11 @@ +[ + { + "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.SLDASM" + }, + { + "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Female.SLDPRT" + }, + { + "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Male.SLDPRT" + } +] \ No newline at end of file diff --git a/moulds/master/100/cad/Global.step b/moulds/master/100/cad/Global.step new file mode 100644 index 000000000..3b0152d65 --- /dev/null +++ b/moulds/master/100/cad/Global.step @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:085943e7fa545d9e25a70ab305df87643101eb346acbfa39a10fc37f5b64289b +size 188277 diff --git a/moulds/master/100/cad/Global.tree.json b/moulds/master/100/cad/Global.tree.json new file mode 100644 index 000000000..d6e3ba1a0 --- /dev/null +++ b/moulds/master/100/cad/Global.tree.json @@ -0,0 +1,118 @@ +{ + "assembly": { + "Components": [ + { + "Name": "Female-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Female.SLDPRT", + "IsSuppressed": false + }, + { + "Name": "Male-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Male.SLDPRT", + "IsSuppressed": false + } + ] + }, + "root": { + "Name": "Global", + "Children": [ + { + "Name": "Female-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Female.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 1.0193243488868649, + "Density": 1000.0000000000001, + "Volume": 0.0010193243488868648, + "SurfaceArea": 0.13184249481501828, + "CenterOfMassX": -2.5943642141486753E-10, + "CenterOfMassY": 0.029724637506680182, + "CenterOfMassZ": 3.919615403861787E-05 + }, + "Box": { + "MinX": -0.14, + "MinY": 5.499999999991623E-06, + "MinZ": -0.058, + "MaxX": 0.14, + "MaxY": 0.052, + "MaxZ": 0.058 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "Male-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Male.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 1.0373228611586598, + "Density": 1000.0, + "Volume": 0.0010373228611586598, + "SurfaceArea": 0.13177192883532887, + "CenterOfMassX": 3.070746089336482E-12, + "CenterOfMassY": -0.029213843702423015, + "CenterOfMassZ": 3.851164326679877E-05 + }, + "Box": { + "MinX": -0.09984178853047236, + "MinY": 0.18052870052093514, + "MinZ": 0.007034434318456843, + "MaxX": 0.18015821146952765, + "MaxY": 0.24652870052093515, + "MaxZ": 0.12303443431845684 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + } + ], + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.SLDASM", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 2.056647210045525, + "Density": 1000.0000000000002, + "Volume": 0.0020566472100455244, + "SurfaceArea": 0.26361442365034715, + "CenterOfMassX": 0.020254825599572972, + "CenterOfMassY": 0.11727932461401488, + "CenterOfMassZ": 0.0328406387606639 + }, + "Box": null, + "Material": { + "Female-1": "", + "Male-1": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": "Default" + }, + "Configurations": { + "Default": {} + } +} \ No newline at end of file diff --git a/moulds/master/100/cad/Global.x_t b/moulds/master/100/cad/Global.x_t new file mode 100644 index 000000000..bdc4795ac --- /dev/null +++ b/moulds/master/100/cad/Global.x_t @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69b6751e5f98844b4e0d06b07d7e81cb94a44231201e88b82f7d55dc67aa8345 +size 73777 diff --git a/moulds/master/100/cad/Male.SLDPRT b/moulds/master/100/cad/Male.SLDPRT new file mode 100644 index 000000000..36ace9ff3 --- /dev/null +++ b/moulds/master/100/cad/Male.SLDPRT @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d105d99a254d60810d85edb08906a8ce5fbfc572849cd563c1c9e8cf8c91c2ce +size 131208 diff --git a/moulds/master/100/cad/cad-report-Default.json b/moulds/master/100/cad/cad-report-Default.json new file mode 100644 index 000000000..ad57fd9d0 --- /dev/null +++ b/moulds/master/100/cad/cad-report-Default.json @@ -0,0 +1,541 @@ +[ + { + "code": 0, + "command": "ExportHTML.exe \"C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM\" \"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.html\"", + "messages": [], + "src": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.html", + "failed": false, + "options": { + "src": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "debug": false, + "verbose": true, + "dry": false, + "cache": true, + "hidden": "true", + "renderer": "Solidworks", + "alt": true, + "quality": 2, + "logLevel": "info", + "width": "1024", + "height": "1024", + "script": "convert.exe", + "sw": 2022, + "swv": 30, + "configuration": "Default", + "report": "${SRC_DIR}/cad-report-${CONFIGURATION}.json", + "pack": false, + "light": false, + "rebuild": false, + "save": false, + "variables": { + "SRC_PATH": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "SRC_DIR": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad", + "SRC_NAME": "Global", + "SRC_FILE_NAME": "Global.SLDASM", + "SRC_FILE_EXT": "SLDASM", + "SRC_IS_FILE": true, + "SRC_IS_FOLDER": false, + "SRC_IS_EXPRESSION": false, + "SRC_IS_GLOB": false, + "SRC_FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM" + ], + "DST_PATH": "&{SRC_DIR}/&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad", + "DST_NAME": "&{SRC_NAME}", + "DST_FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_FILE_EXT": "+(html|step|x_t|json|jpg)", + "DST_IS_FILE": false, + "DST_IS_FOLDER": false, + "DST_IS_EXPRESSION": false, + "DST_IS_GLOB": true, + "DST_GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_GLOB_EXTENSIONS": [ + "html", + "step", + "x_t", + "json", + "jpg" + ], + "DST_FILES": [] + }, + "view": "Render", + "args": "", + "bom-config": "Default", + "bom-detail": 1, + "bom-type": 2, + "bom-images": false, + "srcInfo": { + "PATH": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "DIR": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad", + "NAME": "Global", + "FILE_NAME": "Global.SLDASM", + "FILE_EXT": "SLDASM", + "IS_FILE": true, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": false, + "FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM" + ] + }, + "dstInfo": { + "PATH": "&{SRC_DIR}/&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad", + "NAME": "&{SRC_NAME}", + "FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "FILE_EXT": "+(html|step|x_t|json|jpg)", + "IS_FILE": false, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": true, + "GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "GLOB_EXTENSIONS": [ + "html", + "step", + "x_t", + "json", + "jpg" + ], + "FILES": [] + } + } + }, + { + "code": 0, + "command": "convert.exe --source=\"C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.step\" --configuration=\"Default\" --view=\"*Render\" --hidden=true --width=1024 --height=1024 --swv=30 --renderer=solidworks --quality=2", + "messages": [ + "Changed view: *Render", + "Failed to change configuration: Default", + "IPC error:timeout", + "Conversion successful. Output file saved to: C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.step " + ], + "src": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.step", + "failed": false, + "options": { + "src": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "debug": false, + "verbose": true, + "dry": false, + "cache": true, + "hidden": "true", + "renderer": "Solidworks", + "alt": true, + "quality": 2, + "logLevel": "info", + "width": "1024", + "height": "1024", + "script": "convert.exe", + "sw": 2022, + "swv": 30, + "configuration": "Default", + "report": "${SRC_DIR}/cad-report-${CONFIGURATION}.json", + "pack": false, + "light": false, + "rebuild": false, + "save": false, + "variables": { + "SRC_PATH": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "SRC_DIR": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad", + "SRC_NAME": "Global", + "SRC_FILE_NAME": "Global.SLDASM", + "SRC_FILE_EXT": "SLDASM", + "SRC_IS_FILE": true, + "SRC_IS_FOLDER": false, + "SRC_IS_EXPRESSION": false, + "SRC_IS_GLOB": false, + "SRC_FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM" + ], + "DST_PATH": "&{SRC_DIR}/&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad", + "DST_NAME": "&{SRC_NAME}", + "DST_FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_FILE_EXT": "+(html|step|x_t|json|jpg)", + "DST_IS_FILE": false, + "DST_IS_FOLDER": false, + "DST_IS_EXPRESSION": false, + "DST_IS_GLOB": true, + "DST_GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_GLOB_EXTENSIONS": [ + "html", + "step", + "x_t", + "json", + "jpg" + ], + "DST_FILES": [] + }, + "view": "Render", + "args": "", + "bom-config": "Default", + "bom-detail": 1, + "bom-type": 2, + "bom-images": false, + "srcInfo": { + "PATH": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "DIR": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad", + "NAME": "Global", + "FILE_NAME": "Global.SLDASM", + "FILE_EXT": "SLDASM", + "IS_FILE": true, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": false, + "FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM" + ] + }, + "dstInfo": { + "PATH": "&{SRC_DIR}/&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad", + "NAME": "&{SRC_NAME}", + "FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "FILE_EXT": "+(html|step|x_t|json|jpg)", + "IS_FILE": false, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": true, + "GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "GLOB_EXTENSIONS": [ + "html", + "step", + "x_t", + "json", + "jpg" + ], + "FILES": [] + } + } + }, + { + "code": 0, + "command": "convert.exe --source=\"C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.x_t\" --configuration=\"Default\" --view=\"*Render\" --hidden=true --width=1024 --height=1024 --swv=30 --renderer=solidworks --quality=2", + "messages": [ + "Changed view: *Render", + "Failed to change configuration: Default", + "IPC error:timeout", + "Conversion successful. Output file saved to: C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.x_t " + ], + "src": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.x_t", + "failed": false, + "options": { + "src": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "debug": false, + "verbose": true, + "dry": false, + "cache": true, + "hidden": "true", + "renderer": "Solidworks", + "alt": true, + "quality": 2, + "logLevel": "info", + "width": "1024", + "height": "1024", + "script": "convert.exe", + "sw": 2022, + "swv": 30, + "configuration": "Default", + "report": "${SRC_DIR}/cad-report-${CONFIGURATION}.json", + "pack": false, + "light": false, + "rebuild": false, + "save": false, + "variables": { + "SRC_PATH": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "SRC_DIR": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad", + "SRC_NAME": "Global", + "SRC_FILE_NAME": "Global.SLDASM", + "SRC_FILE_EXT": "SLDASM", + "SRC_IS_FILE": true, + "SRC_IS_FOLDER": false, + "SRC_IS_EXPRESSION": false, + "SRC_IS_GLOB": false, + "SRC_FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM" + ], + "DST_PATH": "&{SRC_DIR}/&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad", + "DST_NAME": "&{SRC_NAME}", + "DST_FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_FILE_EXT": "+(html|step|x_t|json|jpg)", + "DST_IS_FILE": false, + "DST_IS_FOLDER": false, + "DST_IS_EXPRESSION": false, + "DST_IS_GLOB": true, + "DST_GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_GLOB_EXTENSIONS": [ + "html", + "step", + "x_t", + "json", + "jpg" + ], + "DST_FILES": [] + }, + "view": "Render", + "args": "", + "bom-config": "Default", + "bom-detail": 1, + "bom-type": 2, + "bom-images": false, + "srcInfo": { + "PATH": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "DIR": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad", + "NAME": "Global", + "FILE_NAME": "Global.SLDASM", + "FILE_EXT": "SLDASM", + "IS_FILE": true, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": false, + "FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM" + ] + }, + "dstInfo": { + "PATH": "&{SRC_DIR}/&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad", + "NAME": "&{SRC_NAME}", + "FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "FILE_EXT": "+(html|step|x_t|json|jpg)", + "IS_FILE": false, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": true, + "GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "GLOB_EXTENSIONS": [ + "html", + "step", + "x_t", + "json", + "jpg" + ], + "FILES": [] + } + } + }, + { + "code": 0, + "command": "model-reader.exe --source=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.json\"", + "messages": [ + "Failed to change configuration C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.SLDASM : Default", + "Serialized to C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.json", + "Serialized Tree to C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.tree.json" + ], + "src": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.json", + "failed": false, + "options": { + "src": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "debug": false, + "verbose": true, + "dry": false, + "cache": true, + "hidden": "true", + "renderer": "Solidworks", + "alt": true, + "quality": 2, + "logLevel": "info", + "width": "1024", + "height": "1024", + "script": "convert.exe", + "sw": 2022, + "swv": 30, + "configuration": "Default", + "report": "${SRC_DIR}/cad-report-${CONFIGURATION}.json", + "pack": false, + "light": false, + "rebuild": false, + "save": false, + "variables": { + "SRC_PATH": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "SRC_DIR": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad", + "SRC_NAME": "Global", + "SRC_FILE_NAME": "Global.SLDASM", + "SRC_FILE_EXT": "SLDASM", + "SRC_IS_FILE": true, + "SRC_IS_FOLDER": false, + "SRC_IS_EXPRESSION": false, + "SRC_IS_GLOB": false, + "SRC_FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM" + ], + "DST_PATH": "&{SRC_DIR}/&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad", + "DST_NAME": "&{SRC_NAME}", + "DST_FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_FILE_EXT": "+(html|step|x_t|json|jpg)", + "DST_IS_FILE": false, + "DST_IS_FOLDER": false, + "DST_IS_EXPRESSION": false, + "DST_IS_GLOB": true, + "DST_GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_GLOB_EXTENSIONS": [ + "html", + "step", + "x_t", + "json", + "jpg" + ], + "DST_FILES": [] + }, + "view": "Render", + "args": "", + "bom-config": "Default", + "bom-detail": 1, + "bom-type": 2, + "bom-images": false, + "srcInfo": { + "PATH": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "DIR": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad", + "NAME": "Global", + "FILE_NAME": "Global.SLDASM", + "FILE_EXT": "SLDASM", + "IS_FILE": true, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": false, + "FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM" + ] + }, + "dstInfo": { + "PATH": "&{SRC_DIR}/&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad", + "NAME": "&{SRC_NAME}", + "FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "FILE_EXT": "+(html|step|x_t|json|jpg)", + "IS_FILE": false, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": true, + "GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "GLOB_EXTENSIONS": [ + "html", + "step", + "x_t", + "json", + "jpg" + ], + "FILES": [] + } + } + }, + { + "code": 0, + "command": "convert.exe --source=\"C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.jpg\" --configuration=\"Default\" --view=\"*Render\" --hidden=true --width=1024 --height=1024 --swv=30 --renderer=solidworks --quality=2", + "messages": [ + "Changed view: *Render", + "Failed to change configuration: Default", + "IPC error:timeout", + "Conversion successful. Output file saved to: C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.jpg " + ], + "src": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\Global.jpg", + "failed": false, + "options": { + "src": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "debug": false, + "verbose": true, + "dry": false, + "cache": true, + "hidden": "true", + "renderer": "Solidworks", + "alt": true, + "quality": 2, + "logLevel": "info", + "width": "1024", + "height": "1024", + "script": "convert.exe", + "sw": 2022, + "swv": 30, + "configuration": "Default", + "report": "${SRC_DIR}/cad-report-${CONFIGURATION}.json", + "pack": false, + "light": false, + "rebuild": false, + "save": false, + "variables": { + "SRC_PATH": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "SRC_DIR": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad", + "SRC_NAME": "Global", + "SRC_FILE_NAME": "Global.SLDASM", + "SRC_FILE_EXT": "SLDASM", + "SRC_IS_FILE": true, + "SRC_IS_FOLDER": false, + "SRC_IS_EXPRESSION": false, + "SRC_IS_GLOB": false, + "SRC_FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM" + ], + "DST_PATH": "&{SRC_DIR}/&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad", + "DST_NAME": "&{SRC_NAME}", + "DST_FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_FILE_EXT": "+(html|step|x_t|json|jpg)", + "DST_IS_FILE": false, + "DST_IS_FOLDER": false, + "DST_IS_EXPRESSION": false, + "DST_IS_GLOB": true, + "DST_GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DST_GLOB_EXTENSIONS": [ + "html", + "step", + "x_t", + "json", + "jpg" + ], + "DST_FILES": [] + }, + "view": "Render", + "args": "", + "bom-config": "Default", + "bom-detail": 1, + "bom-type": 2, + "bom-images": false, + "srcInfo": { + "PATH": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM", + "DIR": "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad", + "NAME": "Global", + "FILE_NAME": "Global.SLDASM", + "FILE_EXT": "SLDASM", + "IS_FILE": true, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": false, + "FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/moulds/master/100/cad/Global.SLDASM" + ] + }, + "dstInfo": { + "PATH": "&{SRC_DIR}/&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\moulds\\master\\100\\cad", + "NAME": "&{SRC_NAME}", + "FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "FILE_EXT": "+(html|step|x_t|json|jpg)", + "IS_FILE": false, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": true, + "GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(html|step|x_t|json|jpg)", + "GLOB_EXTENSIONS": [ + "html", + "step", + "x_t", + "json", + "jpg" + ], + "FILES": [] + } + } + } +] \ No newline at end of file diff --git a/moulds/master/100/media/DSC02742.JPG b/moulds/master/100/media/DSC02742.JPG new file mode 100644 index 000000000..586b5e100 --- /dev/null +++ b/moulds/master/100/media/DSC02742.JPG @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41285059146d5a30e29118ac594b5db8122bea7cc95d69b34a3405214e3b0210 +size 246670 diff --git a/moulds/master/100/media/DSC02743.JPG b/moulds/master/100/media/DSC02743.JPG new file mode 100644 index 000000000..2b14c9214 --- /dev/null +++ b/moulds/master/100/media/DSC02743.JPG @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c3c49c0ff5e30c9cefc78a2a8237e6debd7aa64c9d88b564366462d88250159 +size 279592 diff --git a/moulds/master/100/media/DSC02744.JPG b/moulds/master/100/media/DSC02744.JPG new file mode 100644 index 000000000..a021cc35d --- /dev/null +++ b/moulds/master/100/media/DSC02744.JPG @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9590fc5282d9574b6613da8b83114efaf6d540088be068a62d5703949775eee9 +size 256477 diff --git a/moulds/master/100/media/DSC02745.JPG b/moulds/master/100/media/DSC02745.JPG new file mode 100644 index 000000000..d1e48eea8 --- /dev/null +++ b/moulds/master/100/media/DSC02745.JPG @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc409b6242b3a053a1f763bb164fd0cf069f5bf586dc4e3243b825d1c95294c7 +size 256331 diff --git a/moulds/master/100/media/DSC02751.JPG b/moulds/master/100/media/DSC02751.JPG new file mode 100644 index 000000000..e3a2f40d5 --- /dev/null +++ b/moulds/master/100/media/DSC02751.JPG @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc136e2c465cbe0987e75aca4554c690f6d40b22926db7a5811818415862874a +size 231265 diff --git a/moulds/master/100/readme.md b/moulds/master/100/readme.md new file mode 100644 index 000000000..ecf322b82 --- /dev/null +++ b/moulds/master/100/readme.md @@ -0,0 +1,5 @@ +## Master Mould + +### References + +- [CAM - Fusion](https://a360.co/4cxV5hZ) diff --git a/products/poly-mech/README.md b/products/poly-mech/README.md index d4f0d0ab4..4b8258077 100644 --- a/products/poly-mech/README.md +++ b/products/poly-mech/README.md @@ -29,21 +29,21 @@ - [ ] [BPML](https://en.wikipedia.org/wiki/Business_Process_Modeling_Language) - [ ] [BPMN - Editor Web](https://bpmn.io/) -### Coding +## Coding - [x] SCAD alternative : https://implicitcad.org/editor (f** Haskell) | Generative Modeling Language (GML) is dead - [ ] Formats : SVG -### Model +## Model - [ ] Primitives - [ ] Patterns (lang/format agnostic) -### Units +## Units - [ ] imperial -### Fasteners +## Fasteners ### Structures @@ -59,9 +59,7 @@ - [Hoses] -### Motion / Bearings - -### Materials & Tests +## Materials & Tests - [HDPE](./resources/material/hdpe/) @@ -73,10 +71,32 @@ - [ ] stands - [ ] AV gear -### Production +## Production -#### CAM +## CAM ## Resources +### Bearings + - https://www.123rodamiento.es/rodamiento-cojinete/transmision-lineal/rodamiento-linear/lbbr25-skf + +### Funding + +- [Crowdfunding](./resources/funding/readme.md) + +### Related Projects + +- [Gridbeams](./resources/projects/gridbeams.md) + +## OSR - Tooling Todos + +### Generative CAD + +- [ ] OSR-AI (gpt4-o) -> OpenSCAD -> FreeCAD (FreeCADCmd - STEP) -> Solidworks (FeatureWorks) -> OSR +- [ ] GrabCAD / PartTrace +- [ ] www.rapiddirect.com + +### OSR-CAD + +- [ ] SW->Composer->SVG->Draw.io symbol/library diff --git a/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/20-50-100_Shield_x2_1mm_INOX.SLDPRT b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/20-50-100_Shield_x2_1mm_INOX.SLDPRT new file mode 100644 index 000000000..4a4b80b40 --- /dev/null +++ b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/20-50-100_Shield_x2_1mm_INOX.SLDPRT @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4814117dfe5bbc3940808e260188c1f5cea97b73fe8948c78989da7c910b687a +size 112201 diff --git a/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50D-100W.SLDPRT b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50D-100W.SLDPRT index 627d1bc9a..3d5d2bfe3 100644 --- a/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50D-100W.SLDPRT +++ b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50D-100W.SLDPRT @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:38c97f06e18e35697e1d705f7194decaa4d18ec6655d148e85c6440c4d17e82c -size 200997 +oid sha256:c526aae151618923a3f470f6a4213afb93665f5a8d46485f8b310260af98c46f +size 188378 diff --git a/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM index 98cd9fb9f..aa57c489b 100644 --- a/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM +++ b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:38105d0931bd06222e2ea1454f3015cb56b57b6955e0cd3fcf30a5eca1658eb1 -size 272297 +oid sha256:642b43dc80cb0a5d40ba590d52f046b007435332cf4178bd79e10ccc7a9a24ea +size 233410 diff --git a/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.smg b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.smg new file mode 100644 index 000000000..22344f301 Binary files /dev/null and b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.smg differ diff --git a/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.svg b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.svg new file mode 100644 index 000000000..386b5559a --- /dev/null +++ b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.svg @@ -0,0 +1,157 @@ +Composer Exporttooltip \ No newline at end of file diff --git a/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/bike.smg b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/bike.smg new file mode 100644 index 000000000..a3396da1c Binary files /dev/null and b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/bike.smg differ diff --git a/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/toolbox.svg b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/toolbox.svg new file mode 100644 index 000000000..9fe20b49b --- /dev/null +++ b/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/toolbox.svg @@ -0,0 +1,157 @@ +Composer Exporttooltip \ No newline at end of file diff --git a/products/poly-mech/cad/patterns/M6-Outer.SLDBLK b/products/poly-mech/cad/patterns/M6-Outer.SLDBLK new file mode 100644 index 000000000..af52dff4b Binary files /dev/null and b/products/poly-mech/cad/patterns/M6-Outer.SLDBLK differ diff --git a/products/poly-mech/resources/funding/campaigns.md b/products/poly-mech/resources/funding/campaigns.md new file mode 100644 index 000000000..cc66b047f --- /dev/null +++ b/products/poly-mech/resources/funding/campaigns.md @@ -0,0 +1,73 @@ +# Kickstarter Campaigns 2023 + +| Name | Pledged | Category | Country | +|----------------------------------------|-------------|-------------------|---------| +| The Witcher: Old World | $8,955,934 | Tabletop Games | Poland | +| Divinity: Original Sin Board Game | $5,277,028 | Tabletop Games | Canada | +| Frosthaven | $5,143,037 | Tabletop Games | USA | +| Wyrmwood Modular Gaming Table | $4,956,935 | Product Design | USA | +| Analogue Pocket | $3,522,411 | Hardware | USA | +| Zombicide: Undead or Alive | $3,365,766 | Tabletop Games | France | +| The 7th Citadel | $3,289,097 | Tabletop Games | France | +| Tainted Grail: The Fall of Avalon | $3,141,513 | Tabletop Games | Poland | +| Ankh: Gods of Egypt | $3,320,196 | Tabletop Games | USA | +| Nemesis Lockdown | $3,010,550 | Tabletop Games | Poland | + +## Games Exlcuded + +| Name | Pledged Amount | Category | Link to Project | Country | +|---------------------------------------------|-------------------|--------------------|-----------------------------------------------------|----------------| +| **Brandon Sanderson’s Secret Novels** | $41,754,153 | Publishing | [Link](https://www.kickstarter.com/projects/dragonsteel/brandon-sandersons-secret-novels) | United States | +| **Pebble Time - Awesome Smartwatch** | $20,338,986 | Technology | [Link](https://www.kickstarter.com/projects/597507018/pebble-time-awesome-smartwatch-no-compromises) | United States | +| **Coolest Cooler** | $13,285,226 | Design | [Link](https://www.kickstarter.com/projects/ryangrepper/coolest-cooler-21st-century-cooler-thats-actually) | United States | +| **Critical Role: The Legend of Vox Machina**| $11,385,449 | Film & Video | [Link](https://www.kickstarter.com/projects/criticalrole/critical-role-the-legend-of-vox-machina-animated) | United States | +| **OUYA: A New Kind of Video Game Console** | $8,596,474 | Technology | [Link](https://www.kickstarter.com/projects/ouya/ouya-a-new-kind-of-video-game-console) | United States | +| **Exploding Kittens** | $8,782,571 | Publishing | [Link](https://www.kickstarter.com/projects/elanlee/exploding-kittens) | United States | +| **Reading Rainbow** | $5,408,916 | Publishing | [Link](https://www.kickstarter.com/projects/readingrainbow/bring-reading-rainbow-back-for-every-child-everywh) | United States | +| **The Everyday Backpack, Tote, and Sling** | $6,565,782 | Design | [Link](https://www.kickstarter.com/projects/peak-design/the-everyday-backpack-tote-and-sling) | United States | +| **Fidget Cube: A Vinyl Desk Toy** | $6,465,690 | Product Design | [Link](https://www.kickstarter.com/projects/antsylabs/fidget-cube-a-vinyl-desk-toy) | United States | +| **Mousr: The Ultimate Robotic Cat Toy** | $570,773 | Technology | [Link](https://www.kickstarter.com/projects/petronics/mousr-the-ultimate-robotic-cat-toy) | United States | + +## Hardware Related + +| Name | Pledged Amount | Category | Link to Project | Country | +|---------------------------------------------|-------------------|--------------------|-----------------------------------------------------|----------------| +| **Pebble Time - Awesome Smartwatch** | $20,338,986 | Technology | [Link](https://www.kickstarter.com/projects/597507018/pebble-time-awesome-smartwatch-no-compromises) | United States | +| **Coolest Cooler** | $13,285,226 | Design | [Link](https://www.kickstarter.com/projects/ryangrepper/coolest-cooler-21st-century-cooler-thats-actually) | United States | +| **OUYA: A New Kind of Video Game Console** | $8,596,474 | Technology | [Link](https://www.kickstarter.com/projects/ouya/ouya-a-new-kind-of-video-game-console) | United States | +| **The Everyday Backpack, Tote, and Sling** | $6,565,782 | Design | [Link](https://www.kickstarter.com/projects/peak-design/the-everyday-backpack-tote-and-sling) | United States | +| **Fidget Cube: A Vinyl Desk Toy** | $6,465,690 | Product Design | [Link](https://www.kickstarter.com/projects/antsylabs/fidget-cube-a-vinyl-desk-toy) | United States | +| **Form 1: An Affordable, Professional 3D Printer** | $2,945,885 | Technology | [Link](https://www.kickstarter.com/projects/formlabs/form-1-an-affordable-professional-3d-printer) | United States | +| **The Micro: The First Truly Consumer 3D Printer** | $3,401,361 | Technology | [Link](https://www.kickstarter.com/projects/m3d/the-micro-the-first-truly-consumer-3d-printer) | United States | +| **3Doodler: The World's First 3D Printing Pen** | $2,344,134 | Technology | [Link](https://www.kickstarter.com/projects/1351910088/3doodler-the-worlds-first-3d-printing-pen) | United States | +| **SmartThings: Make Your World Smarter** | $1,209,423 | Technology | [Link](https://www.kickstarter.com/projects/smartthings/smartthings-make-your-world-smarter) | United States | +| **Mousr: The Ultimate Robotic Cat Toy** | $570,773 | Technology | [Link](https://www.kickstarter.com/projects/petronics/mousr-the-ultimate-robotic-cat-toy) | United States | + +## Hardware Related - Last 5 Years + +| Name | Pledged Amount | Category | Link to Project | Country | +|-----------------------------------------------|-------------------|--------------------|-----------------------------------------------------|----------------| +| **Coolest Cooler** | $13,285,226 | Design | [Link](https://www.kickstarter.com/projects/ryangrepper/coolest-cooler-21st-century-cooler-thats-actually) | United States | +| **Pebble Time - Awesome Smartwatch** | $20,338,986 | Technology | [Link](https://www.kickstarter.com/projects/597507018/pebble-time-awesome-smartwatch-no-compromises) | United States | +| **Fidget Cube: A Vinyl Desk Toy** | $6,465,690 | Product Design | [Link](https://www.kickstarter.com/projects/antsylabs/fidget-cube-a-vinyl-desk-toy) | United States | +| **The Everyday Backpack, Tote, and Sling** | $6,565,782 | Design | [Link](https://www.kickstarter.com/projects/peak-design/the-everyday-backpack-tote-and-sling) | United States | +| **Form 1: An Affordable, Professional 3D Printer** | $2,945,885 | Technology | [Link](https://www.kickstarter.com/projects/formlabs/form-1-an-affordable-professional-3d-printer) | United States | +| **The Micro: The First Truly Consumer 3D Printer** | $3,401,361 | Technology | [Link](https://www.kickstarter.com/projects/m3d/the-micro-the-first-truly-consumer-3d-printer) | United States | +| **3Doodler: The World's First 3D Printing Pen** | $2,344,134 | Technology | [Link](https://www.kickstarter.com/projects/1351910088/3doodler-the-worlds-first-3d-printing-pen) | United States | +| **SmartThings: Make Your World Smarter** | $1,209,423 | Technology | [Link](https://www.kickstarter.com/projects/smartthings/smartthings-make-your-world-smarter) | United States | +| **Mousr: The Ultimate Robotic Cat Toy** | $570,773 | Technology | [Link](https://www.kickstarter.com/projects/petronics/mousr-the-ultimate-robotic-cat-toy) | United States | +| **Snapmaker: Modular 3-in-1 3D Printer** | $2,277,344 | Technology | [Link](https://www.kickstarter.com/projects/snapmaker/snapmaker-modular-3-in-1-3d-printer) | China | + +## Hardware Related : CNC & Printers - Last 5 Years +| Name | Pledged Amount | Category | Link to Project | Country | +|-----------------------------------------------|-------------------|--------------------|-----------------------------------------------------|----------------| +| **Snapmaker 2.0: Modular 3-in-1 3D Printers** | $7,850,866 | Technology | [Link](https://www.kickstarter.com/projects/snapmaker/snapmaker-20-modular-3-in-1-3d-printers) | China | +| **Form 3: High Resolution SLA 3D Printer** | $2,886,016 | Technology | [Link](https://www.kickstarter.com/projects/formlabs/form-3-high-resolution-sla-3d-printer) | United States | +| **Maslow CNC: Open Source CNC Machine** | $314,629 | Technology | [Link](https://www.kickstarter.com/projects/1660933914/maslow-cnc-a-500-open-source-cnc-machine) | United States | +| **Snapmaker: Original 3-in-1 3D Printer** | $2,277,344 | Technology | [Link](https://www.kickstarter.com/projects/snapmaker/snapmaker-modular-3-in-1-3d-printer) | China | +| **Shaper Origin: Handheld CNC Router** | $4,074,425 | Technology | [Link](https://www.kickstarter.com/projects/shapertools/shaper-origin-handheld-cnc-router-that-augments-itself) | United States | +| **Glowforge: 3D Laser Printer** | $27,907,995 | Technology | [Link](https://www.kickstarter.com/projects/glowforge/glowforge-the-3d-laser-printer) | United States | +| **Pine64: Open Source ARM 64-Bit Platform** | $1,731,465 | Technology | [Link](https://www.kickstarter.com/projects/pine64/pine-a64-first-64-bit-quad-core-15ghz-computer) | United States | +| **OLO: The First Ever Smartphone 3D Printer** | $2,321,811 | Technology | [Link](https://www.kickstarter.com/projects/olo3d/olo-the-first-ever-smartphone-3d-printer) | United States | +| **Prometheus: Affordable 3D Printer** | $225,000 | Technology | [Link](https://www.kickstarter.com/projects/797662329/prometheus-an-affordable-high-resolution-dlp-3d-prin) | United States | +| **The Micro: The First Truly Consumer 3D Printer** | $3,401,361 | Technology | [Link](https://www.kickstarter.com/projects/m3d/the-micro-the-first-truly-consumer-3d-printer) | United States | diff --git a/products/poly-mech/resources/funding/crowdfunding-chatgpt.xlsx b/products/poly-mech/resources/funding/crowdfunding-chatgpt.xlsx new file mode 100644 index 000000000..95a2e6ac1 Binary files /dev/null and b/products/poly-mech/resources/funding/crowdfunding-chatgpt.xlsx differ diff --git a/products/poly-mech/resources/funding/crowdfunding-services.xlsx b/products/poly-mech/resources/funding/crowdfunding-services.xlsx new file mode 100644 index 000000000..a20819984 Binary files /dev/null and b/products/poly-mech/resources/funding/crowdfunding-services.xlsx differ diff --git a/products/poly-mech/resources/funding/readme.md b/products/poly-mech/resources/funding/readme.md new file mode 100644 index 000000000..f585e27c3 --- /dev/null +++ b/products/poly-mech/resources/funding/readme.md @@ -0,0 +1,110 @@ +# Crowd Funding + +## Steps to Successfully Create a Kickstarter Campaign + +1. **Research and Plan** + - **Define Your Project:** Clearly articulate what your project is and what it aims to achieve. + - **Identify Your Audience:** Understand who your backers are likely to be. + - **Set a Funding Goal:** Calculate how much money you need to bring your project to life, including production, shipping, and Kickstarter fees. + - **Research Similar Campaigns:** Look at successful and unsuccessful campaigns in your niche to learn from their strategies. + +2. **Create a Compelling Story** + - **Craft Your Narrative:** Tell a compelling story about why your project matters and why people should support it. + - **Showcase Your Passion:** Be authentic and show your commitment to the project. + - **Create a Video:** A strong, engaging video significantly increases the chances of success. Keep it concise, clear, and visually appealing. + +3. **Design Attractive Rewards** + - **Offer Tiered Rewards:** Create multiple reward tiers to cater to different backers' budgets. + - **Include Limited Editions:** Scarcity can drive urgency. Offer limited-edition rewards. + - **Provide Clear Value:** Ensure each reward offers good value and is directly connected to the project. + +4. **Build Your Campaign Page** + - **Craft a Strong Project Title:** Make it clear, catchy, and easy to understand. + - **Write a Detailed Description:** Break down your project into easy-to-read sections with bullet points and images. + - **Add High-Quality Images:** Use professional images to showcase your product and any related visuals. + +5. **Prepare for the Launch** + - **Build an Audience in Advance:** Use social media, email lists, and other platforms to build anticipation before launch. + - **Engage with Early Backers:** Reach out to friends, family, and existing supporters to gain initial momentum. + - **Set a Launch Date:** Choose a date that gives you ample time to promote the campaign. + +6. **Launch and Promote** + - **Announce Your Launch:** Use all your channels to announce the launch, including social media, newsletters, and press releases. + - **Engage with Backers:** Regularly update backers on progress and respond to comments and questions promptly. + - **Maintain Momentum:** Keep promoting throughout the campaign to reach new backers. + +7. **Monitor and Adapt** + - **Track Progress:** Use Kickstarter’s analytics to monitor your campaign's performance. + - **Adjust as Needed:** If something isn’t working, be ready to adapt your strategy. + - **Update Regularly:** Keep backers informed with regular updates, including any stretch goals. + +8. **Close the Campaign** + - **Thank Your Backers:** Show appreciation for the support, both during and after the campaign. + - **Fulfill Rewards:** Begin the process of delivering rewards promptly and keep backers updated on timelines. + - **Gather Feedback:** After the campaign, gather feedback from backers to improve future projects. + +9. **Post-Campaign Management** + - **Continue Engagement:** Keep your backers in the loop about project developments even after the campaign ends. + - **Manage Finances:** Ensure all funds are appropriately managed, including setting aside enough for reward fulfillment and taxes. + - **Plan for Future Campaigns:** Use the experience and feedback to plan future projects and campaigns. + +### List of Services to Help with a Kickstarter Campaign + +1. **Crowdfunding Consultants** + - **CrowdCrux**: Offers strategy development, campaign management, and consulting. + - **LaunchBoom**: Specializes in full-service crowdfunding, from pre-launch to post-campaign management. + +2. **Video Production** + - **IndieWhip**: Focuses on creating high-quality crowdfunding videos. + - **Videopixie**: Connects you with freelance video professionals. + +3. **Marketing and Promotion** + - **Kickbooster**: Provides referral programs and marketing tools for crowdfunding campaigns. + - **Jellop**: A marketing agency specializing in crowdfunding, particularly on Facebook and Google Ads. + - **BackerKit**: Offers tools for managing backer surveys, shipping, and additional marketing services. + +4. **Design and Branding** + - **99designs**: A platform to find freelance designers for logos, branding, and campaign graphics. + - **Canva**: Easy-to-use design tool to create visuals for your campaign. + +5. **Prototype Development** + - **Fictiv**: Provides prototyping and manufacturing services. + - **MakerBot**: Offers 3D printing solutions for creating product prototypes. + +6. **PR and Outreach** + - **CrowdReach**: Specializes in PR services for crowdfunding campaigns. + - **Kickstarter PR**: A service that helps with press outreach and media engagement. + +7. **Campaign Management Tools** + - **Kicktraq**: Tracks campaign performance with analytics and projections. + - **Hootsuite**: Manages and schedules social media posts to keep your campaign active online. + +8. **Shipping and Fulfillment** + - **ShipStation**: Streamlines the shipping process for backer rewards. + - **Fulfillrite**: Provides order fulfillment services tailored to crowdfunding campaigns. + +9. **Legal and Financial Services** + - **Kickstarter's Creator Handbook**: Offers guidelines and resources for legal and financial planning. + - **LegalZoom**: Provides legal services, including setting up business entities and managing contracts. + +## Services + +| Service Name | Category | Fees | Link | Remarks | +|------------------|----------------------------|----------------------------------|-----------------------------------------|-------------------------------------------------------------------------| +| CrowdCrux | Crowdfunding Consulting | Custom pricing | [CrowdCrux](https://www.crowdcrux.com) | Provides strategy development, campaign management, and consulting. | +| LaunchBoom | Full-Service Crowdfunding | Custom pricing | [LaunchBoom](https://www.launchboom.com) | Offers end-to-end campaign management from pre-launch to post-campaign.| +| Kickbooster | Referral Marketing | 3%-5% commission on referred pledges | [Kickbooster](https://www.kickbooster.me) | Provides referral marketing tools to boost campaign reach. | +| Jellop | Digital Marketing | Custom pricing | [Jellop](https://www.jellop.com) | Specializes in targeted Facebook and Google Ads for crowdfunding. | +| BackerKit | Post-Campaign Management | 5%-15% depending on services | [BackerKit](https://www.backerkit.com) | Manages backer surveys, shipping, and additional sales after the campaign ends. | +| IndieWhip | Video Production | Custom pricing | [IndieWhip](https://www.indiewhip.com) | Focuses on creating high-quality videos tailored for crowdfunding. | +| Videopixie | Video Production | Variable depending on the freelancer | [Videopixie](https://www.videopixie.com) | Connects you with freelance video professionals for campaign videos. | +| 99designs | Design Services | From $299 per project | [99designs](https://www.99designs.com) | Offers logo, branding, and campaign graphic design services. | +| Canva | Design Tool | Free and paid plans | [Canva](https://www.canva.com) | User-friendly design tool to create visuals and graphics for campaigns. | +| Fictiv | Prototyping and Manufacturing | Custom pricing | [Fictiv](https://www.fictiv.com) | Provides prototyping and manufacturing services for hardware products. | +| MakerBot | 3D Printing and Prototyping | From $99/month | [MakerBot](https://www.makerbot.com) | Offers 3D printing solutions for creating product prototypes. | +| CrowdReach | PR Services | Custom pricing | [CrowdReach](https://www.crowdreach.com) | Specializes in PR services tailored for crowdfunding campaigns. | +| Kickstarter PR | Press Outreach | Custom pricing | [Kickstarter PR](https://www.kickstarterpr.com) | Helps with media engagement and press outreach for crowdfunding. | +| Hootsuite | Social Media Management | Free and paid plans | [Hootsuite](https://www.hootsuite.com) | Manages and schedules social media posts to keep your campaign active. | +| ShipStation | Shipping and Fulfillment | From $9/month | [ShipStation](https://www.shipstation.com) | Streamlines the shipping process for backer rewards. | +| Fulfillrite | Fulfillment Services | Variable depending on volume | [Fulfillrite](https://www.fulfillrite.com) | Specializes in order fulfillment for crowdfunding campaigns. | +| LegalZoom | Legal Services | Custom pricing | [LegalZoom](https://www.legalzoom.com) | Provides legal assistance, including setting up business entities and managing contracts. | diff --git a/products/poly-mech/resources/projects/gridbeams.md b/products/poly-mech/resources/projects/gridbeams.md new file mode 100644 index 000000000..820b92e36 --- /dev/null +++ b/products/poly-mech/resources/projects/gridbeams.md @@ -0,0 +1,94 @@ +# Overview + +BeamCNC is a tool for production modular construction system and a part of the equation for creating globally distributed manufacturing network for Grid Beam like construction system! + +### Short history of Grid Beam + +Early version of this construction system was developed by Ken Isaac in the late 1940s. He used 2x2 lumber and three dimentional joints to create living structures. He called this construction system - Matrix and later publish a book [How to Build Your Own Living Structures](http://letsremake.info/PDFs/k_isaacs.pdf). After this book a group of artists, designers and builders continued to work on developing this construction system. They upgraded and standardized it, made it fully modular. Three of them later summarized their work in a book [How to Build with Grid Beam: A Fast, Easy and Affordable System for Constructing Almost Anything](https://www.amazon.com/gp/product/B005V5TFFA/). And I\`ve learned about Grid Beam from Kevin Kelly [Cool Tools blog](http://kk.org/cooltools/how-to-build-wi/) (which is also awesome, you should check it out). + +### Gallery of examples + +[![](https://c3.iggcdn.com/indiegogo-media-prod-cld/image/upload/c_fit,g_center,q_auto,f_auto,w_695/n1oyainir93cvp0lyxl1.jpg)](http://www.dropbox.com/sh/iepju9ciqrvqjas/AADWonOuKzpCFYrr1kzcRzI-a?dl=0) + +### BeamCNC features + +### (this is a prototype. backers will receive v1.0 with more features listed below) + +![](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)![](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)   + +* works with lumber or aluminum square tube +* X form factor compensates material size variations and small curvature that off the shelf lumber often has +* suitable for beams from 20mm up to 50mm (from 3/4 to 2 inches) of any length +* drilling pattern set by gcode file (you can generate your own patterns) +* portable (manufacture construstion system onsite) +* almost dustless operation (home friendly) + +### Things I will upgrade in v1.0 before shipping it to backers: + +* wire management +* sturdier frame +* whole length (drilling near the ends of the lumber) +* better dust collecton (it is almost dustless with current dust collection design, but I want to make usability a bit easier) +* smaller footprint +* optimized working speed +* perpendicular hole alignment +* beam leveling + +### Timeline + +![](https://c3.iggcdn.com/indiegogo-media-prod-cld/image/upload/c_fit,g_center,q_auto,f_auto,w_695/wornzmvmdeechzk2bnkf.png) + +### Web service + +You will be able to mockup designs from grid beam. Share your designs and explore what other people have designed. Get best spliting setup for a project to minimize leftovers. Generate custom gcode files. Find or become a local manufacturer. **Every backer who has bought an original BeamCNC will automatically get an autorisation code for becoming a local manufacturer**. It\`s up to you to decide whether to use BeamCNC for yourself or introduce yourself as a local manufacturer. + +[![](https://c3.iggcdn.com/indiegogo-media-prod-cld/image/upload/c_fit,g_center,q_auto,f_auto,w_695/p7ejse2mil8zh3v6sjkd.jpg)](https://www.dropbox.com/s/awek5emd68idp7t/BeamCNC%20web%20mockup.jpg?dl=0) + +[![](https://c3.iggcdn.com/indiegogo-media-prod-cld/image/upload/c_fit,g_center,q_auto,f_auto,w_695/vki86imopimtit6navwx.jpg)](https://www.dropbox.com/s/lmughstj6eren6s/BeamCNC%20web%20catalog%20mockup.jpg?dl=0) + +_While web is under development I\`m starting a [Facebook page](https://www.facebook.com/BeamCNC/) for people to share thier ideas. And you can download a [template file for mockups](http://a360.co/2wHaZ7y) in Fusion 360 (copy-paste beams of needed length for your design. By default they are hidden, so you can\`t see them on preview)_ + +### Ideas + +3d printed tile with foam. + +[![](https://c3.iggcdn.com/indiegogo-media-prod-cld/image/upload/c_fit,g_center,q_auto,f_auto,w_695/kalgdgkife1aiaw1hgvo.jpg)](https://www.dropbox.com/s/af2ygskanxenkz0/puzzle%20chair%20v2.jpg?dl=0) + +Quick camera mount on any grid beam surface. Or even whole camera arm. + +[![](https://c3.iggcdn.com/indiegogo-media-prod-cld/image/upload/c_fit,g_center,q_auto,f_auto,w_695/shgf2dpnlyvizrfzhgxs.jpg)](https://www.dropbox.com/s/rpsghuf642x71n1/camera%20mount%20v2.jpg?dl=0) + +Linear actuators and CNC are one of the interesting cases. You can set hole sizes to fit linear rails and with a couple of brackets make low-precision CNC setups. Also, if you glue up grid beams at bottom and cover holes on one side you can get a nice vacuum table. + +[](https://www.dropbox.com/s/44p2o98kutpakrc/cnc%20v2.jpg?dl=0) + +Workbench, clamping table, sanding/vacuum table (as described in previous example). + +[](https://www.dropbox.com/s/d83egz8e0gpegnx/workbench%20v2.jpg?dl=0) + +BeamCNC Plasma (with plasma torch and horizontal axis instead of router). On the photo below is LifeTrac project by [OpenSourceEcology](http://opensourceecology.org/) and rough sketch of the design. If you are particularly interested in this version, please fill up this [form](https://docs.google.com/forms/d/e/1FAIpQLSer5B6oh_TOP3KxzdO4j8scHCfx1-hf1NnJYcATSVLyXaGZGQ/viewform?usp=sf_link). Coming soon. + +[](https://www.dropbox.com/s/h4vtn8c819m1sa1/lifetrack%20v2.jpg?dl=0) + +Fastbeam variation. You can drill one side with a smaller drill bit and then thread it. I guess it will be one of the fastest construction systems that way. [Video about how strong are threads in wood.](https://www.youtube.com/watch?v=EA-CmUvIsjg) And [DIY wooden thread taps from Matthias Wandel.](https://www.youtube.com/watch?v=EJpgT2VCB_w) + +[](https://www.dropbox.com/s/7bwtdt4765jp8p5/fast%20beam%20v2.jpg?dl=0) + +You can use BeamCNC with forstner bit or use a template for forstner bit afterwards. + +[](https://www.dropbox.com/s/4ph2birf9ihrqv4/forstner%20v2.jpg?dl=0) + +### Open Source + +All design files will be released after campaign ends. If you are particularly interested in this, please fill up [this form](https://goo.gl/forms/qP8v4cRVl8NMiHGo1). + +We see how digital fabrication tools affects production of the goods. We can spot a pattern. **Broadly available materials + Broadly available tools + Open source designs + Web service for finding local manufacturers.** + +For example: Plywood + CNC router + Open sourсe designs + Web-service to find local manufacturer (like [https://www.opendesk.cc/](https://www.opendesk.cc/)) = awesome plywood furniture and projects produced locally. 3d printing filament + 3d printer + [https://www.thingiverse.com/](https://www.thingiverse.com/) + [https://www.3dhubs.com/](https://www.3dhubs.com/) = all kinds of 3d printed projects nearby. + +BeamCNC can create another one of such distributed systems. Square lumber / tubes of different sizes + BeamCNC + Open source designs + Web-service for finding local manufacturers = all kinds of Grid Beam constructions and projects for makers and local communities. + +### Featured in + +[Hackaday](https://hackaday.com/2017/09/27/beamcnc-computer-controlled-construction-system-mill/), [Core77](http://www.core77.com/projects/69637/BeamCNC-Works-with-Common-Materials-to-Help-Produce-Grid-Beam-Projects), [Maker Update](https://youtu.be/yJ_vitZswwo?t=351), [Wevolver](https://community.wevolver.com/2017/10/447/), [TrendHunter](https://www.trendhunter.com/trends/beamcnc) + diff --git a/products/poly-mech/resources/software/draw.io/library-slides.xml b/products/poly-mech/resources/software/draw.io/library-slides.xml new file mode 100644 index 000000000..fbddb56c8 --- /dev/null +++ b/products/poly-mech/resources/software/draw.io/library-slides.xml @@ -0,0 +1,7 @@ +[ + { + "xml": "<mxGraphModel><root><mxCell id=\"0\"/><mxCell id=\"1\" parent=\"0\"/><object label=\"\" test=\"\" diameter=\"20\" id=\"2\"><mxCell style=\"shape=image;verticalLabelPosition=bottom;labelBackgroundColor=default;verticalAlign=top;aspect=fixed;imageAspect=0;image=data:image/svg+xml,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9Im5vbmUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgdmlld0JveD0iMC4wMDAwMDAgMC4wMDAwMDAgMjk3LjAwMDAwMCAyMTAuMDAwMDAwIiBoZWlnaHQ9IjIxMC4wMDBtbSIgd2lkdGg9IjI5Ny4wMDBtbSI+PGRlc2M+Q29tcG9zZXIgRXhwb3J0PC9kZXNjPjxkZWZzLz48Zz48cGF0aCBkPSJNMjk2Ljg0LDIwOS45N0wwLjA3LDIwOS45N0wwLjA3LDAuMDdMMjk2Ljg0LDAuMDd6IiBzdHlsZT0iZmlsbDojZmZmZmZmIi8+PHBhdGggZD0iTTEyNi44NSwyNi4xMUwxMzEuNjIsMjYuMTBMMTMzLjM1LDI3LjYyTDEzNC42MiwyOS4xMUwxMzYuODQsMzEuODlMMjI1Ljc0LDgzLjE5TDIzMC41MSw4My4xOEwyMzIuNzYsODUuMThMMjM0Ljk5LDg3Ljk3TDIzNi4zNiw5MC41OEwyMzUuNjYsOTAuODJMMjM1LjQ5LDg5LjQzTDIzNC45Miw4OS40MkwyMzQuNDksODkuNzlMMjM0LjM5LDE1Ni43NEwyMzMuODksMTU2Ljk5TDIzMy43OCw4OS42M0wyMzMuNzYsODguNDVMMjMzLjI3LDg4LjgxTDE3OC4zMywxMjAuNTBMMTc1LjMzLDEyMi4wMUwxNzUuMjMsMTIzLjE3TDE3NC44MiwxMjMuMjVMMTc1LjE4LDEyMy42NkwxNzUuMTksMTIzLjk1TDE3NC4zMywxMjQuNTJMMTc0LjM5LDE5MS40NUwxNzQuOTksMTkxLjIxTDE3NS4yMywxOTEuMzFMMTc1LjI0LDE5Mi40OEwxNzQuNDAsMTkyLjM3TDU3LjI2LDEyNC43NUw1Ni40OCwxMjMuMjdMNTYuNDgsNTcuMjNMNTYuOTAsNTYuNjVMNTguMjUsNTUuOTlMNTguNTAsNTMuNzRMNjcuMTgsNDguNjZMMTE1LjczLDIwLjYwTDExNy4zNCwyMC42MHoiIHN0eWxlPSJmaWxsOiNmZmYyZTgiLz48cGF0aCBkPSJNMTc1LjQyLDEyNC41MUwxNzUuNDIsMTkwLjcwTDE3NC45OSwxOTEuMjFMMTc0LjM5LDE5MS40NUwxNzQuMzMsMTI0LjUyTDE3NS4xOSwxMjMuOTV6IiBzdHlsZT0iZmlsbDojZTVkOWQwIi8+PHBhdGggZD0iTTExOS40Miw0Ni4wN0wxMTkuNDEsNjMuNTNMMTE5LjAwLDYzLjcwTDExNC4zMiw2My42N0wxMTAuODIsNjMuMThMMTA4LjA2LDYyLjQ0TDEwNy4zNCw2Mi4xMEwxMDcuMzUsNDcuNTZMMTA3Ljk4LDQ3LjE0TDExMC43Myw0Ni4zOUwxMTQuNzUsNDUuOTBMMTE3LjkxLDQ1Ljg3eiIgc3R5bGU9ImZpbGw6I2U1MDAwMCIvPjxwYXRoIGQ9Ik0xNzguNTAsODAuMTJMMTc4LjQ5LDk3LjU4TDE3Ny41OCw5Ny43M0wxNzMuNDEsOTcuNzJMMTY5LjkwLDk3LjIyTDE2Ni4xNCw5Ni4yMkwxNjMuNjQsOTQuOThMMTYxLjE2LDkzLjE5TDE1OS45Miw5MS42OEwxNTkuMTIsOTAuMjJMMTU4Ljc3LDg4LjY0TDE1OS44MSw4Ni4yMUwxNjEuNTMsODQuMTdMMTY0LjU2LDgyLjIwTDE2OS41Niw4MC40NEwxNzMuMzMsNzkuOTVMMTc3LjI1LDc5LjkxeiIgc3R5bGU9ImZpbGw6I2U1MDAwMCIvPjxwYXRoIGQ9Ik0xNzUuMTksMTIzLjk1TDE3NS4xOCwxMjMuNjZMMTc1LjIzLDEyMy4xN0wxNzYuMzQsMTIzLjAyTDIwMi41MywxMDcuOTVMMjAyLjQ2LDEyOC42MUwyMDAuNzIsMTMwLjM3TDE5OC4wOSwxMzMuNTBMMTk1Ljg2LDEzNy4yOEwxOTQuMTgsMTQxLjM1TDE5My40NCwxNDQuNjJMMTkzLjQzLDE0OS44MEwxOTMuOTIsMTUxLjgxTDE5NC40MywxNTIuODBMMTk1LjQ2LDE1NC4wM0wxOTcuMTcsMTU1LjMyTDE5OC4xOSwxNTUuNTZMMjAxLjM3LDE1NS41NkwyMDIuNDgsMTU1LjMxTDIwMi41NywxNzAuNTBMMjAyLjUzLDE3NS45NEwxNzYuNjYsMTkwLjkzTDE3NS4yMywxOTEuMzFMMTc0Ljk5LDE5MS4yMUwxNzUuNDIsMTkwLjcwTDE3NS40MiwxMjQuNTF6IiBzdHlsZT0iZmlsbDojZTUwMDAwIi8+PHBhdGggZD0iTTExNy4xNSwzNi4wMkwxMTQuNDgsMzYuMzdMMTEzLjgyLDM2LjcxTDExMi42MSwzNy44MUwxMTIuNDgsMzYuNjJMMTEyLjk5LDM1Ljg4TDExNC45OSwzNC44OEwxMTcuMDksMzQuODd6IiBzdHlsZT0iZmlsbDojZTVkOWQwIi8+PHBhdGggZD0iTTEzOC4xOCw0MS4wMkwxMzUuMDksNDEuNDZMMTMzLjQxLDQyLjYyTDEzMy4yNCw0MS45MEwxMzQuMDksNDAuNzFMMTM1Ljc3LDM5Ljg4TDEzOC4xMiwzOS44OHoiIHN0eWxlPSJmaWxsOiNlNWQ5ZDAiLz48cGF0aCBkPSJNOTYuMzksNDEuMDBMOTMuNzIsNDEuMzlMOTIuMjEsNDIuMTNMOTEuODIsNDIuODBMOTEuNzgsNDEuNDVMOTIuNzEsNDAuMzlMOTQuMjEsMzkuODhMOTYuMzEsMzkuODh6IiBzdHlsZT0iZmlsbDojZTVkOWQwIi8+PHBhdGggZD0iTTExOS40Miw0Ni4wN0wxMTcuOTEsNDUuODdMMTE0Ljc1LDQ1LjkwTDExMC43Myw0Ni4zOUwxMDcuOTgsNDcuMTRMMTA3LjM1LDQ3LjU2TDEwNS4yMyw0OC40MEwxMDMuMjMsNDkuNjZMMTAyLjYwLDUwLjMzTDEwMS4zMiw1MS41MEw5OS45NCw1NC4wOEwxMDAuMDQsNTIuNzJMMTAwLjgzLDUwLjc2TDEwMi40OCw0OC45MEwxMDQuOTgsNDcuMTVMMTA4LjQ5LDQ1LjY1TDExMy4yNCw0NC42NUwxMTkuMzQsNDQuNjR6IiBzdHlsZT0iZmlsbDojZTVkOWQwIi8+PHBhdGggZD0iTTg3Ljg2LDUzLjA0TDg2LjIxLDUzLjE2TDg0LjQ1LDUzLjY2TDgzLjA5LDU0LjY0TDgyLjkyLDUzLjkxTDg0LjA1LDUyLjUxTDg1LjQ1LDUxLjkwTDg3LjgwLDUxLjkweiIgc3R5bGU9ImZpbGw6I2U1ZDlkMCIvPjxwYXRoIGQ9Ik0xNDYuNjksNTMuMDRMMTQ0LjAzLDUzLjQwTDE0Mi42MCw1NC4yMkwxNDIuMTEsNTQuODNMMTQyLjEwLDUzLjQ3TDE0My4wMyw1Mi40MUwxNDQuNTMsNTEuOTBMMTQ2LjYzLDUxLjkweiIgc3R5bGU9ImZpbGw6I2U1ZDlkMCIvPjxwYXRoIGQ9Ik0xMzguMTgsNjUuMDZMMTM2LjUzLDY1LjE4TDEzNC43Nyw2NS42OEwxMzMuNDEsNjYuNjVMMTMzLjI0LDY1LjkzTDEzNC4zNyw2NC41MkwxMzYuMDIsNjMuOTJMMTM4LjEyLDYzLjkxeiIgc3R5bGU9ImZpbGw6I2U1ZDlkMCIvPjxwYXRoIGQ9Ik05Ni4zNyw2NS4wNkw5My43MCw2NS40MUw5Mi4yOCw2Ni4yM0w5MS43OSw2Ni44NUw5MS43OCw2NS40OUw5Mi40Niw2NC42N0w5NC4yMSw2My45Mkw5Ni4zMSw2My45MXoiIHN0eWxlPSJmaWxsOiNlNWQ5ZDAiLz48cGF0aCBkPSJNNzUuMTgsNjcuNDVMNzYuMTAsNjYuNzdMNzYuMjUsNjYuOTFMNzYuMjgsMTMzLjYxTDc1LjgzLDEzNC4xN0w3NS40MywxMzQuMTF6IiBzdHlsZT0iZmlsbDojZTVkOWQwIi8+PHBhdGggZD0iTTYzLjQ4LDY4Ljc3TDYzLjc0LDcwLjk1TDY0LjEwLDcyLjA1TDYzLjc2LDcyLjI3TDYyLjk0LDcyLjUyTDYyLjQ5LDcxLjQ1TDYyLjQ5LDY4LjUwTDYzLjIzLDY3LjQ3TDYzLjg0LDY3LjQweiIgc3R5bGU9ImZpbGw6I2U1ZDlkMCIvPjxwYXRoIGQ9Ik0xNzEuMzgsNzAuNzZMMTcyLjU3LDY5LjQzTDE3My44MSw2OC45MkwxNzYuMTcsNjguOTJMMTc2LjIzLDcwLjA2TDE3NC41OCw3MC4xOEwxNzIuODMsNzAuNjlMMTcxLjU1LDcxLjU3eiIgc3R5bGU9ImZpbGw6I2U1ZDlkMCIvPjxwYXRoIGQ9Ik0xMTcuMTcsNzAuMDRMMTE1LjUwLDcwLjE4TDExMy44Miw3MC43NkwxMTIuNjEsNzEuODZMMTEyLjQ4LDcwLjY3TDExMy4yNCw2OS42OEwxMTQuOTksNjguOTNMMTE3LjA5LDY4LjkyeiIgc3R5bGU9ImZpbGw6I2U1ZDlkMCIvPjxwYXRoIGQ9Ik0xNTUuNDUsNzUuMDdMMTUzLjU1LDc1LjE5TDE1Mi4zNyw3NS41MUwxNTAuNjksNzYuNjdMMTUwLjUzLDc1LjY4TDE1MS4wNCw3NC45M0wxNTMuMDQsNzMuOTNMMTU1LjM5LDczLjkzeiIgc3R5bGU9ImZpbGw6I2U1ZDlkMCIvPjxwYXRoIGQ9Ik0xOTcuMDMsNzUuMDVMMTk0LjM2LDc1LjQ0TDE5Mi44NSw3Ni4xOEwxOTIuNDMsNzYuODdMMTkyLjQ0LDc1LjI4TDE5My4zNSw3NC40NEwxOTQuNTksNzMuOTJMMTk2Ljk1LDczLjkzeiIgc3R5bGU9ImZpbGw6I2U1ZDlkMCIvPjxwYXRoIGQ9Ik0xNzguNTAsODAuMTJMMTc3LjI1LDc5LjkxTDE3My4zMyw3OS45NUwxNjkuNTYsODAuNDRMMTY0LjU2LDgyLjIwTDE2MS41Myw4NC4xN0wxNTkuODEsODYuMjFMMTU4Ljc3LDg4LjY0TDE1OS4xMiw4Ni4wMkwxNjAuMTYsODQuMzBMMTYyLjMxLDgyLjIwTDE2NC44MSw4MC43MEwxNjkuMzIsNzkuMjBMMTcyLjA4LDc4LjcwTDE3OC40Myw3OC42OHoiIHN0eWxlPSJmaWxsOiNlNWQ5ZDAiLz48cGF0aCBkPSJNMjA1Ljc3LDg3LjA5TDIwMy44Nyw4Ny4yMUwyMDIuNjksODcuNTNMMjAxLjAxLDg4LjY5TDIwMC44NSw4Ny43MEwyMDEuMzYsODYuOTVMMjAzLjM2LDg1Ljk1TDIwNS43MSw4NS45NHoiIHN0eWxlPSJmaWxsOiNlNWQ5ZDAiLz48cGF0aCBkPSJNMTQ2LjcxLDg3LjA3TDE0NC4wNCw4Ny40NkwxNDIuNTMsODguMTlMMTQyLjEyLDg4Ljg4TDE0Mi4xMiw4Ny4yOUwxNDMuMDMsODYuNDVMMTQ0LjI3LDg1Ljk0TDE0Ni42Myw4NS45NHoiIHN0eWxlPSJmaWxsOiNlNWQ5ZDAiLz48cGF0aCBkPSJNMjM1LjY2LDkwLjgyTDIzNi4zNiw5MC41OEwyMzYuNDksOTAuNzFMMjM2Ljk4LDk0LjIwTDIzNi41Miw5OC4zM0wyMzUuNzUsOTguODBMMjM1LjYzLDEzNi42OUwyMzUuNzUsMTM4LjY0TDIzNi40MCwxMzguMTdMMjM2LjUyLDEzOC4yOEwyMzYuOTgsMTQxLjc2TDIzNi41MSwxNDUuODlMMjM1LjY3LDE0Ni41NUwyMzUuNDksMTU2LjEzTDIzNC4zOSwxNTYuNzRMMjM0LjQ5LDg5Ljc5TDIzNC45Miw4OS40MkwyMzUuNDksODkuNDN6IiBzdHlsZT0iZmlsbDojZTVkOWQwIi8+PHBhdGggZD0iTTE1NS40NSw5OS4xMUwxNTIuMzYsOTkuNTRMMTUwLjY5LDEwMC43MUwxNTAuNTMsOTkuNzJMMTUxLjY2LDk4LjU4TDE1My4wNCw5Ny45N0wxNTUuMzksOTcuOTZ6IiBzdHlsZT0iZmlsbDojZTVkOWQwIi8+PHBhdGggZD0iTTE5Ny4wMSw5OS4xMUwxOTQuMzYsOTkuNDhMMTkyLjg1LDEwMC4yMUwxOTIuNDQsMTAwLjkwTDE5Mi40NCw5OS4zMUwxOTMuMzUsOTguNDdMMTk0Ljg1LDk3Ljk2TDE5Ni45NSw5Ny45NnoiIHN0eWxlPSJmaWxsOiNlNWQ5ZDAiLz48cGF0aCBkPSJNMTcxLjM4LDEwNC44MEwxNzIuNTcsMTAzLjQ3TDE3My44MiwxMDIuOTdMMTc2LjE3LDEwMi45N0wxNzYuMjUsMTA0LjA5TDE3My4zMiwxMDQuNDdMMTcxLjU1LDEwNS42MnoiIHN0eWxlPSJmaWxsOiNlNWQ5ZDAiLz48cGF0aCBkPSJNNjMuNDgsMTE2LjM0TDYzLjc0LDExOC41Mkw2NC4wOSwxMTkuNjFMNjMuMDEsMTIwLjM1TDYyLjQ5LDExOS4wMkw2Mi40OSwxMTYuMDZMNjMuMTcsMTE1LjI0TDYzLjg2LDExNC45OHoiIHN0eWxlPSJmaWxsOiNlNWQ5ZDAiLz48cGF0aCBkPSJNMjMzLjc4LDg5LjYzTDIzMy40Nyw5MC4wMEwyMDguMTMsMTA0Ljc0TDIwNy4yMywxMDUuMzlMMjA2Ljg3LDEwNS40NkwyMDIuNTMsMTA3Ljk1TDE3Ni4zNCwxMjMuMDJMMTc1LjIzLDEyMy4xN0wxNzUuMzMsMTIyLjAxTDE3OC4zMywxMjAuNTBMMjMzLjI3LDg4LjgxTDIzMy43Niw4OC40NXoiIHN0eWxlPSJmaWxsOiNlNWQ5ZDAiLz48cGF0aCBkPSJNMTYyLjYzLDEyNS4wOEwxNjIuNjMsMTI3LjUzTDE2My4yMywxMjkuMTlMMTYyLjE2LDEyOS44NUwxNjEuNjIsMTI4Ljc4TDE2MS4zMCwxMjYuNTJMMTYxLjc3LDEyNS4yMkwxNjIuNTUsMTI0LjQ4TDE2Mi45NiwxMjQuNDV6IiBzdHlsZT0iZmlsbDojZTVkOWQwIi8+PHBhdGggZD0iTTE2Mi42NSwxNzIuOTBMMTYyLjYzLDE3NS4wOUwxNjMuMjIsMTc2Ljc4TDE2My4yMSwxNzYuOTVMMTYyLjE2LDE3Ny40M0wxNjEuNjMsMTc2LjU5TDE2MS4zOSwxNzUuMzNMMTYxLjM4LDE3My44OUwxNjIuMTUsMTcyLjQwTDE2Mi43MSwxNzIuMjh6IiBzdHlsZT0iZmlsbDojZTVkOWQwIi8+PHBhdGggZD0iTTIzMy43NiwxNTkuMTZMMjMzLjU0LDE1OS40M0wxNzYuNTksMTkyLjM2TDE3NS4yNCwxOTIuNDhMMTc1LjIzLDE5MS4zMUwxNzYuNjYsMTkwLjkzTDIwMi41MywxNzUuOTRMMjA2Ljk5LDE3My40M0wyMDcuMDksMTczLjI2TDIwNy4yOSwxNzMuMTdMMjE1LjI0LDE2OC42OEwyMzMuNDcsMTU4LjEwTDIzMy43NywxNTcuNzJ6IiBzdHlsZT0iZmlsbDojZTVkOWQwIi8+PHBhdGggZD0iTTIzNi40MCwxMzguMTdMMjM1Ljc1LDEzOC42NEwyMzUuNjMsMTM2LjY5eiIgc3R5bGU9ImZpbGw6I2ZmZjJlOCIvPjxwYXRoIGQ9Ik0yMDcuMDksMTczLjI2TDIwNi45OSwxNzMuNDNMMjAyLjUzLDE3NS45NEwyMDIuNTcsMTcwLjUweiIgc3R5bGU9ImZpbGw6I2ZmZjJlOCIvPjxwYXRoIGQ9Ik0xMTguNTksMzYuMzdMMTIwLjEzLDM3LjM1TDEyMC4zNywzNy45N0wxMTkuMjUsMzguODlMMTE3Ljc2LDM5LjQwTDExNS4zMiwzOS40MEwxMTMuNTksMzguODhMMTEyLjYxLDM3LjgxTDExMy44MiwzNi43MUwxMTQuNDgsMzYuMzdMMTE3LjE1LDM2LjAyTDExNy4zMiwzNi4xNXoiIHN0eWxlPSJmaWxsOiNmZjAwMDAiLz48cGF0aCBkPSJNMTM5LjM3LDQxLjM4TDE0MS4xNSw0Mi4zOEwxNDEuMDYsNDMuMTdMMTQwLjAzLDQzLjg5TDEzOC41Myw0NC40MEwxMzYuMzUsNDQuNDBMMTM0LjEyLDQzLjYyTDEzMy42MSw0My4xM0wxMzMuNDEsNDIuNjJMMTM1LjA5LDQxLjQ2TDEzOC4xOCw0MS4wMnoiIHN0eWxlPSJmaWxsOiNmZjAwMDAiLz48cGF0aCBkPSJNOTcuODEsNDEuMzlMOTkuMzUsNDIuMzZMOTkuNTksNDIuOTdMOTguOTUsNDMuNjJMOTYuNzMsNDQuNDBMOTQuODAsNDQuNDBMOTIuODIsNDMuODhMOTIuMDMsNDMuMThMOTEuODIsNDIuODBMOTIuMjEsNDIuMTNMOTMuNzIsNDEuMzlMOTYuMzksNDEuMDB6IiBzdHlsZT0iZmlsbDojZmYwMDAwIi8+PHBhdGggZD0iTTEyNC44Myw0Ny4xNkwxMjcuODUsNDguNDBMMTI5Ljg1LDQ5LjY1TDEzMS44OCw1MS42M0wxMzMuMTEsNTQuMTVMMTMzLjExLDU1LjUwTDEzMi4yNyw1Ny40MkwxMzAuNDksNTkuMzlMMTI4LjAyLDYxLjE4TDEyNC44Myw2Mi40OUwxMjEuMjYsNjMuNDNMMTE5LjQxLDYzLjUzTDExOS40Miw0Ni4wN0wxMjAuODMsNDYuMTV6IiBzdHlsZT0iZmlsbDojZmYwMDAwIi8+PHBhdGggZD0iTTE0OC4xNCw1My40MEwxNDkuNjcsNTQuMzhMMTQ5LjkxLDU0Ljk5TDE0OC44MCw1NS45MkwxNDcuMzAsNTYuNDJMMTQ0Ljg2LDU2LjQyTDE0My4xNCw1NS44OUwxNDIuMzgsNTUuNDFMMTQyLjExLDU0LjgzTDE0Mi42MCw1NC4yMkwxNDQuMDMsNTMuNDBMMTQ2LjY5LDUzLjA0TDE0Ni44Niw1My4xN3oiIHN0eWxlPSJmaWxsOiNmZjAwMDAiLz48cGF0aCBkPSJNODkuMDUsNTMuNDBMOTAuNzksNTQuNDJMOTAuODIsNTUuMjZMOTAuMjIsNTUuNjdMODguNDcsNTYuNDNMODYuMDMsNTYuNDJMODMuODAsNTUuNjRMODMuMjksNTUuMTVMODMuMDksNTQuNjRMODQuNDUsNTMuNjZMODYuMjEsNTMuMTZMODcuODYsNTMuMDR6IiBzdHlsZT0iZmlsbDojZmYwMDAwIi8+PHBhdGggZD0iTTEwMi42MCw1OS4zMkwxMDIuNjAsNTAuMzNMMTAzLjIzLDQ5LjY2TDEwNS4yMyw0OC40MEwxMDcuMzUsNDcuNTZMMTA3LjM0LDYyLjEwTDEwNi4wNyw2MS42N0wxMDMuMDcsNTkuOTF6IiBzdHlsZT0iZmlsbDojZmYwMDAwIi8+PHBhdGggZD0iTTEzOS44Niw2NS42N0wxNDEuMTQsNjYuNjhMMTQxLjE1LDY3LjI3TDE0MC41NCw2Ny42OUwxMzguNzksNjguNDVMMTM2LjEwLDY4LjQ0TDEzNC42MCw2Ny45M0wxMzMuNjEsNjcuMTdMMTMzLjQxLDY2LjY1TDEzNC43Nyw2NS42OEwxMzYuNTMsNjUuMThMMTM4LjE4LDY1LjA2eiIgc3R5bGU9ImZpbGw6I2ZmMDAwMCIvPjxwYXRoIGQ9Ik05Ny44Miw2NS40MUw5OS4zNSw2Ni4zOUw5OS41OSw2Ny4wMUw5OC40Nyw2Ny45M0w5Ni45OCw2OC40NEw5NC41NCw2OC40NEw5Mi44Miw2Ny45MUw5Mi4wNiw2Ny40M0w5MS43OSw2Ni44NUw5Mi4yOCw2Ni4yM0w5My43MCw2NS40MUw5Ni4zNyw2NS4wNkw5Ni41NCw2NS4xOXoiIHN0eWxlPSJmaWxsOiNmZjAwMDAiLz48cGF0aCBkPSJNMTUxLjEzLDEwOS40OEwxNTcuMTYsMTEzLjEwTDE1NS42NCwxMTQuMDhMMTU1LjQxLDE3OS45MUwxNTAuNjUsMTc3LjMwTDc1LjgzLDEzNC4xN0w3Ni4yOCwxMzMuNjFMNzYuMjUsNjYuOTFMNzYuMTAsNjYuNzdMNzYuMjAsNjYuNDBMNzYuNTAsNjYuMzl6IiBzdHlsZT0iZmlsbDojZmYwMDAwIi8+PHBhdGggZD0iTTY5LjI3LDcyLjQzTDY5LjI3LDc1LjAzTDY4LjkyLDc1LjY5TDY4LjAwLDc1LjcxTDY2Ljc4LDc1LjE3TDY1Ljc3LDc0LjQyTDY0LjI4LDcyLjExTDY1LjE3LDcxLjQzTDY3Ljg2LDY5Ljc5TDY4LjAzLDY5LjkweiIgc3R5bGU9ImZpbGw6I2ZmMDAwMCIvPjxwYXRoIGQ9Ik0xNzguMTcsNzAuNjhMMTc5LjQyLDcxLjY1TDE3OC44Miw3Mi42N0wxNzYuNTksNzMuNDVMMTc0LjQwLDczLjQ1TDE3Mi42OCw3Mi45MUwxNzEuOTIsNzIuNDJMMTcxLjU1LDcxLjU3TDE3Mi44Myw3MC42OUwxNzQuNTgsNzAuMThMMTc2LjIzLDcwLjA2eiIgc3R5bGU9ImZpbGw6I2ZmMDAwMCIvPjxwYXRoIGQ9Ik0xMTguNTksNzAuNDNMMTIwLjEzLDcxLjQwTDEyMC4zNyw3Mi4wMUwxMTkuMjUsNzIuOTRMMTE3Ljc2LDczLjQ0TDExNS41OCw3My40NEwxMTQuMzEsNzMuMjBMMTEyLjgzLDcyLjE4TDExMi42MSw3MS44NkwxMTMuODIsNzAuNzZMMTE1LjUwLDcwLjE4TDExNy4xNyw3MC4wNHoiIHN0eWxlPSJmaWxsOiNmZjAwMDAiLz48cGF0aCBkPSJNMTk4LjQ1LDc1LjQzTDE5OS45OSw3Ni40MUwyMDAuMjMsNzcuMDJMMTk5LjEyLDc3Ljk1TDE5Ny4xMSw3OC40NEwxOTUuNDQsNzguNDRMMTkzLjQ1LDc3LjkzTDE5Mi45Myw3Ny40NkwxOTIuNDMsNzYuODdMMTkyLjg1LDc2LjE4TDE5NC4zNiw3NS40NEwxOTcuMDMsNzUuMDV6IiBzdHlsZT0iZmlsbDojZmYwMDAwIi8+PHBhdGggZD0iTTE1Ny4zOSw3NS42OUwxNTguNDIsNzYuNDRMMTU4LjMxLDc3LjE4TDE1Ni44Miw3OC4yMUwxNTUuNTUsNzguNDRMMTUzLjg4LDc4LjQ0TDE1MS44Nyw3Ny45NUwxNTAuODgsNzcuMThMMTUwLjY5LDc2LjY3TDE1Mi4zNyw3NS41MUwxNTMuNTUsNzUuMTlMMTU1LjQ1LDc1LjA3eiIgc3R5bGU9ImZpbGw6I2ZmMDAwMCIvPjxwYXRoIGQ9Ik0xODEuMTcsODAuNDVMMTg1LjkzLDgxLjk1TDE4OS4xOCw4My45NUwxOTAuNzEsODUuNDJMMTkxLjY5LDg3LjIwTDE5Mi4yMCw4OS4wM0wxOTEuMTgsOTEuNTRMMTg5LjcwLDkzLjMyTDE4Ni44NCw5NS4yMkwxODMuNjcsOTYuNTVMMTgwLjkyLDk3LjMwTDE3OC40OSw5Ny41OEwxNzguNTAsODAuMTJ6IiBzdHlsZT0iZmlsbDojZmYwMDAwIi8+PHBhdGggZD0iTTIwNy40Niw4Ny43MEwyMDguNzQsODguNzFMMjA4LjYzLDg5LjE5TDIwNy4xNCw5MC4yMkwyMDUuODcsOTAuNDZMMjAzLjk0LDkwLjQ3TDIwMS43Miw4OS42OUwyMDEuMjAsODkuMjBMMjAxLjAxLDg4LjY5TDIwMi42OSw4Ny41M0wyMDMuODcsODcuMjFMMjA1Ljc3LDg3LjA5eiIgc3R5bGU9ImZpbGw6I2ZmMDAwMCIvPjxwYXRoIGQ9Ik0xNDguMTMsODcuNDVMMTQ5LjY3LDg4LjQzTDE0OS45MSw4OS4wNEwxNDkuMjcsODkuNjlMMTQ3LjA1LDkwLjQ3TDE0NS4xMiw5MC40NkwxNDMuMTQsODkuOTRMMTQyLjM4LDg5LjQ2TDE0Mi4xMiw4OC44OEwxNDIuNTMsODguMTlMMTQ0LjA0LDg3LjQ2TDE0Ni43MSw4Ny4wN3oiIHN0eWxlPSJmaWxsOiNmZjAwMDAiLz48cGF0aCBkPSJNMTk4LjQ2LDk5LjQ2TDE5OS45OSwxMDAuNDRMMjAwLjIzLDEwMS4wNkwxOTkuNTksMTAxLjcxTDE5Ny42MywxMDIuNDlMMTk1LjE4LDEwMi40OUwxOTMuNDYsMTAxLjk1TDE5Mi43MCwxMDEuNDhMMTkyLjQ0LDEwMC45MEwxOTIuODUsMTAwLjIxTDE5NC4zNiw5OS40OEwxOTcuMDEsOTkuMTFMMTk3LjE4LDk5LjI0eiIgc3R5bGU9ImZpbGw6I2ZmMDAwMCIvPjxwYXRoIGQ9Ik0xNTYuNjQsOTkuNDdMMTU4LjE4LDEwMC40NEwxNTguNDIsMTAxLjA2TDE1Ny42OCwxMDEuODVMMTU1LjgxLDEwMi40OUwxNTMuNjIsMTAyLjQ5TDE1MS40MCwxMDEuNzFMMTUwLjg4LDEwMS4yMUwxNTAuNjksMTAwLjcxTDE1Mi4zNiw5OS41NEwxNTUuNDUsOTkuMTF6IiBzdHlsZT0iZmlsbDojZmYwMDAwIi8+PHBhdGggZD0iTTE3OC4xNywxMDQuNzNMMTc5LjQyLDEwNS43MEwxNzkuMTksMTA2LjMyTDE3OC4zMSwxMDYuOTZMMTc2LjMzLDEwNy40OEwxNzQuNjYsMTA3LjQ4TDE3Mi42OCwxMDYuOTZMMTcxLjkyLDEwNi40NkwxNzEuNTUsMTA1LjYyTDE3My4zMiwxMDQuNDdMMTc2LjI1LDEwNC4wOXoiIHN0eWxlPSJmaWxsOiNmZjAwMDAiLz48cGF0aCBkPSJNNjguNTEsMTE4LjI1TDY5LjI3LDEyMC4yNUw2OS4yOCwxMjIuODVMNjguOTMsMTIzLjI2TDY3Ljc1LDEyMy4yN0w2NS41MiwxMjEuNzRMNjQuNTAsMTIwLjI3TDY0LjI4LDExOS42N0w2Ny44OCwxMTcuNDJ6IiBzdHlsZT0iZmlsbDojZmYwMDAwIi8+PHBhdGggZD0iTTE3NC44MiwxMjMuMjVMMTc1LjIzLDEyMy4xN0wxNzUuMTgsMTIzLjY2eiIgc3R5bGU9ImZpbGw6I2ZmMDAwMCIvPjxwYXRoIGQ9Ik0yMTYuMjEsMTMwLjAyTDIxNi40NywxMzEuMDJMMjE2LjcyLDEzNC42MEwyMTYuMjIsMTM4LjExTDIxNC42NCwxNDIuNzlMMjEyLjIwLDE0Ny4xMUwyMDkuNDYsMTUwLjYzTDIwNy40NiwxNTIuMzhMMjA3LjI5LDE3My4xN0wyMDcuMDksMTczLjI2TDIwMi41NywxNzAuNTBMMjAyLjQ4LDE1NS4zMUwyMDEuMzcsMTU1LjU2TDE5OC4xOSwxNTUuNTZMMTk3LjE3LDE1NS4zMkwxOTUuNDYsMTU0LjAzTDE5NC40MywxNTIuODBMMTkzLjkyLDE1MS44MUwxOTMuNDMsMTQ5LjgwTDE5My40NCwxNDQuNjJMMTk0LjE4LDE0MS4zNUwxOTUuODYsMTM3LjI4TDE5OC4wOSwxMzMuNTBMMjAwLjcyLDEzMC4zN0wyMDIuNDYsMTI4LjYxTDIwMi41MywxMDcuOTVMMjA2Ljg3LDEwNS40NkwyMDcuMjMsMTA1LjM5TDIwNy4zNywxMjUuODZMMjA4LjcxLDEyNS43NHoiIHN0eWxlPSJmaWxsOiNmZjAwMDAiLz48cGF0aCBkPSJNMTY3LjQyLDEyNy41MUwxNjguNDAsMTMwLjI3TDE2OC40MCwxMzEuODVMMTY4LjA3LDEzMi43OEwxNjYuODgsMTMyLjc4TDE2NS42NywxMzIuMjVMMTYzLjY0LDEzMC4wMkwxNjMuMjMsMTI5LjE5TDE2Ni45OSwxMjcuMTF6IiBzdHlsZT0iZmlsbDojZmYwMDAwIi8+PHBhdGggZD0iTTE2Ny4yNSwxNzQuOTlMMTY4LjE2LDE3Ni44M0wxNjguNDAsMTc5LjQyTDE2OC4wOCwxODAuMzRMMTY2LjYzLDE4MC4zNUwxNjUuNjcsMTc5LjgxTDE2NC42NiwxNzkuMDdMMTYzLjIxLDE3Ni45NUwxNjMuMjIsMTc2Ljc4TDE2Ni45NiwxNzQuNzB6IiBzdHlsZT0iZmlsbDojZmYwMDAwIi8+PHBhdGggZD0iTTk5Ljk0LDU0LjA4TDEwMS4zMiw1MS41MEwxMDIuNjAsNTAuMzNMMTAyLjYwLDU5LjMyTDEwMS41NSw1OC40M0wxMDAuNTYsNTYuOTFMMTAwLjA0LDU1LjY4eiIgc3R5bGU9ImZpbGw6I2U1MDAwMCIvPjxwYXRoIGQ9Ik02NS43Niw2Ny42OEw2Ny41NSw2OS4xNUw2Ny44Niw2OS43OUw2NS4xNyw3MS40M0w2NC4yOCw3Mi4xMUw2NC4xMCw3Mi4wNUw2My43NCw3MC45NUw2My40OCw2OC43N0w2My44NCw2Ny40MEw2NS4yNyw2Ny40MnoiIHN0eWxlPSJmaWxsOiNlNTAwMDAiLz48cGF0aCBkPSJNMTA4LjU3LDkwLjk2TDExMC4zNiw5Mi43MkwxMTAuMzQsOTMuMDNMMTA1LjczLDk1Ljc1TDEwNS4zMiw5NS43M0wxMDQuODAsOTQuMjNMMTA0LjgwLDkxLjc4TDEwNS40Nyw5MC43MEwxMDUuOTcsOTAuNDVMMTA3LjU4LDkwLjQ1eiIgc3R5bGU9ImZpbGw6I2U1MDAwMCIvPjxwYXRoIGQ9Ik0xMjUuMTAsMTAwLjQ3TDEyNi44OSwxMDIuMjRMMTI2Ljg2LDEwMi41NEwxMjIuMjYsMTA1LjI3TDEyMS44NCwxMDUuMjVMMTIxLjMyLDEwMy43NUwxMjEuMzIsMTAxLjMwTDEyMS45OSwxMDAuMjFMMTIyLjQ5LDk5Ljk2TDEyNC4xMCw5OS45NnoiIHN0eWxlPSJmaWxsOiNlNTAwMDAiLz48cGF0aCBkPSJNNjcuMDQsMTE2LjIxTDY3Ljg4LDExNy40Mkw2NC4yOCwxMTkuNjdMNjQuMDksMTE5LjYxTDYzLjc0LDExOC41Mkw2My40OCwxMTYuMzRMNjMuODYsMTE0Ljk4TDY1LjAyLDExNC45OHoiIHN0eWxlPSJmaWxsOiNlNTAwMDAiLz48cGF0aCBkPSJNMTY1LjE1LDEyNS4wMEwxNjYuNjksMTI2LjQ4TDE2Ni45OSwxMjcuMTFMMTYzLjIzLDEyOS4xOUwxNjIuNjMsMTI3LjUzTDE2Mi42MywxMjUuMDhMMTYyLjk2LDEyNC40NUwxNjMuOTAsMTI0LjUweiIgc3R5bGU9ImZpbGw6I2U1MDAwMCIvPjxwYXRoIGQ9Ik0yMDguNzEsMTI1Ljc0TDIwNy4zNywxMjUuODZMMjA3LjIzLDEwNS4zOUwyMDguMTMsMTA0Ljc0TDIzMy40Nyw5MC4wMEwyMzMuNzgsODkuNjNMMjMzLjg5LDE1Ni45OUwyMzMuNzcsMTU3LjcyTDIzMy40NywxNTguMTBMMjE1LjI0LDE2OC42OEwyMDcuMjksMTczLjE3TDIwNy40NiwxNTIuMzhMMjA5LjQ2LDE1MC42M0wyMTIuMjAsMTQ3LjExTDIxNC42NCwxNDIuNzlMMjE2LjIyLDEzOC4xMUwyMTYuNzIsMTM0LjYwTDIxNi40NywxMzEuMDJMMjE2LjIxLDEzMC4wMnoiIHN0eWxlPSJmaWxsOiNlNTAwMDAiLz48cGF0aCBkPSJNMTA4LjA2LDEzOC4yOEwxMTAuMTEsMTQwLjAwTDExMC4zNiwxNDAuNjJMMTA1LjczLDE0My4zMUwxMDUuMzIsMTQzLjMwTDEwNC44MCwxNDEuODBMMTA0LjgwLDEzOS41OUwxMDUuNTAsMTM4LjMwTDEwNS45NiwxMzguMDFMMTA3LjMyLDEzOC4wMnoiIHN0eWxlPSJmaWxsOiNlNTAwMDAiLz48cGF0aCBkPSJNMTI1LjM1LDE0OC4yOUwxMjYuNjMsMTQ5LjUxTDEyNi44OSwxNTAuMTNMMTIyLjI1LDE1Mi44M0wxMjEuODUsMTUyLjgxTDEyMS4zMywxNTEuMzBMMTIxLjMyLDE0OC44NkwxMjEuOTksMTQ3Ljc4TDEyMi40OSwxNDcuNTNMMTIzLjg1LDE0Ny41M3oiIHN0eWxlPSJmaWxsOiNlNTAwMDAiLz48cGF0aCBkPSJNMTY1LjkzLDE3My4zMEwxNjYuOTYsMTc0LjcwTDE2My4yMiwxNzYuNzhMMTYyLjYzLDE3NS4wOUwxNjIuNjUsMTcyLjkwTDE2Mi43MSwxNzIuMjhMMTYzLjA2LDE3Mi4wNEwxNjMuOTAsMTcyLjA2eiIgc3R5bGU9ImZpbGw6I2U1MDAwMCIvPjxnIGlkPSJBY3Rvcl8uMCI+PGcgc3R5bGU9InN0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDowLjE3NiI+PHBhdGggZD0iTTEyOS4yMiwyNy4yNUwxMzEuNTUsMjUuOTEiLz48L2c+PGcgc3R5bGU9InN0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDowLjUyOSI+PHBhdGggZD0iTTEyNy4yNywyNi4xM0wxMjcuOTksMjYuMDFMMTI5LjEzLDI1Ljg3TDEzMC4xMiwyNS44MUwxMzEuMDgsMjUuODVMMTMxLjU1LDI1LjkxTDEzMi40NCwyNi42NEwxMzMuODksMjcuOTlMMTM1LjAzLDI5LjI3TDEzNi4wMiwzMC42NEwxMzYuNDksMzEuNDUiLz48L2c+PC9nPjxnIGlkPSJBY3Rvcl8uMSI+PGcgc3R5bGU9InN0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDowLjE3NiI+PHBhdGggZD0iTTIzNS42NywxMzguNTdMMjM2LjUwLDEzOC4wOSIvPjwvZz48ZyBzdHlsZT0ic3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjAuNTI5Ij48cGF0aCBkPSJNMjM1LjY3LDEzNi41MUwyMzYuMDIsMTM3LjEwTDIzNi41MCwxMzguMDlMMjM2LjcwLDEzOC44NUwyMzYuOTUsMTQwLjMwTDIzNy4wMywxNDEuNzFMMjM2Ljk2LDE0My4xOEwyMzYuNzEsMTQ0LjkyTDIzNi41MCwxNDUuOTVMMjM1LjY3LDE0Ni40MyIvPjwvZz48L2c+PGcgaWQ9IkFjdG9yXy4yIj48ZyBzdHlsZT0ic3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjAuMTc2Ij48cGF0aCBkPSJNMjMzLjc4LDg4LjE4TDIzMy42Miw4OC40NkwyMzMuMzIsODguNzFMMTc2LjcxLDEyMS4zOEwxNzYuMjksMTIxLjU2TDE3NS43OSwxMjEuNjVMMTc1LjI3LDEyMS42NUwxNzQuNzcsMTIxLjU2TDE3NC4zNiwxMjEuMzhMNTguNzksNTQuNjdMNTguNDgsNTQuNDNMNTguMzIsNTQuMTRMNTguMzIsNTQuMDAiLz48cGF0aCBkPSJNNTguMzIsNTUuMzBMNTguMzIsNTUuMjBMNTguMzIsNTUuNTAiLz48cGF0aCBkPSJNNTguMzIsNTUuMjBMNTguMzIsNTQuMTQiLz48cGF0aCBkPSJNNTguMzIsNTQuNzhMNTguMzIsNTQuNzIiLz48cGF0aCBkPSJNOTEuMDYsNTQuNzFMOTEuMjYsNTMuODlMOTAuOTgsNTMuMTFMOTAuMjcsNTIuNDNMODkuMjMsNTEuOTJMODcuOTYsNTEuNjRMODYuNTgsNTEuNjBMODUuMjYsNTEuODNMODQuMTQsNTIuMjlMODMuMzUsNTIuOTNMODIuOTUsNTMuNjlMODMuMDEsNTQuNDhMODMuMTUsNTQuNjgiLz48cGF0aCBkPSJNOTEuNzgsNjYuNzJMOTEuNjUsNjYuNTJMOTEuNTksNjUuNzNMOTEuOTgsNjQuOTdMOTIuNzgsNjQuMzJMOTMuODksNjMuODZMOTUuMjEsNjMuNjNMOTYuNTgsNjMuNjdMOTcuODYsNjMuOTZMOTguOTEsNjQuNDdMOTkuNjEsNjUuMTVMOTkuODksNjUuOTJMOTkuNzAsNjYuNzQiLz48cGF0aCBkPSJNOTkuNzAsNDIuNjhMOTkuODksNDEuODZMOTkuNjEsNDEuMDlMOTguOTEsNDAuNDBMOTcuODYsMzkuODlMOTYuNTgsMzkuNjBMOTUuMjEsMzkuNTdMOTMuODksMzkuNzlMOTIuNzgsNDAuMjVMOTEuOTgsNDAuOTBMOTEuNTksNDEuNjZMOTEuNjUsNDIuNDVMOTEuNzgsNDIuNjUiLz48cGF0aCBkPSJNOTkuOTEsNTQuNjNMOTkuODIsNTMuNzhMMTAwLjEyLDUyLjE1TDEwMC44OSw1MC41N0wxMDIuMTIsNDkuMDlMMTAzLjc2LDQ3Ljc1TDEwNC43Miw0Ny4xNUwxMDUuNzcsNDYuNTlMMTA4LjA3LDQ1LjY1TDExMC42NSw0NC45NEwxMTMuMzksNDQuNDlMMTE2LjIyLDQ0LjMyTDExOS4wNSw0NC40MkwxMjEuODIsNDQuODBMMTI0LjQzLDQ1LjQ0TDEyNi44Miw0Ni4zM0wxMjguOTIsNDcuNDRMMTMwLjY1LDQ4Ljc0TDEzMS45OSw1MC4xOUwxMzIuODgsNTEuNzVMMTMzLjMwLDUzLjM3TDEzMy4yNSw1NC41NiIvPjxwYXRoIGQ9Ik0xMTIuNjMsNzEuNzBMMTEyLjQ5LDcxLjUwTDExMi40NCw3MC43MUwxMTIuODMsNjkuOTVMMTEzLjYyLDY5LjMxTDExNC43NCw2OC44NUwxMTYuMDYsNjguNjJMMTE3LjQzLDY4LjY1TDExOC43MSw2OC45NEwxMTkuNzUsNjkuNDVMMTIwLjQ2LDcwLjEzTDEyMC43NCw3MC45MUwxMjAuNTQsNzEuNzMiLz48cGF0aCBkPSJNMTIwLjU0LDM3LjY5TDEyMC43NCwzNi44N0wxMjAuNDYsMzYuMTBMMTE5Ljc1LDM1LjQxTDExOC43MSwzNC45MEwxMTcuNDMsMzQuNjJMMTE2LjA2LDM0LjU4TDExNC43NCwzNC44MUwxMTMuNjIsMzUuMjdMMTEyLjgzLDM1LjkxTDExMi40NCwzNi42N0wxMTIuNDksMzcuNDZMMTEyLjYzLDM3LjY2Ii8+PHBhdGggZD0iTTE0MS4zOSw2Ni43NEwxNDEuNTgsNjUuOTJMMTQxLjMwLDY1LjE1TDE0MC42MCw2NC40N0wxMzkuNTUsNjMuOTZMMTM4LjI3LDYzLjY3TDEzNi45MCw2My42M0wxMzUuNTksNjMuODZMMTM0LjQ3LDY0LjMyTDEzMy42Nyw2NC45N0wxMzMuMjgsNjUuNzNMMTMzLjM0LDY2LjUyTDEzMy40Nyw2Ni43MiIvPjxwYXRoIGQ9Ik0xNDEuMzksNDIuNjhMMTQxLjU4LDQxLjg2TDE0MS4zMCw0MS4wOUwxNDAuNjAsNDAuNDBMMTM5LjU1LDM5Ljg5TDEzOC4yNywzOS42MEwxMzYuOTAsMzkuNTdMMTM1LjU5LDM5Ljc5TDEzNC40Nyw0MC4yNUwxMzMuNjcsNDAuOTBMMTMzLjI4LDQxLjY2TDEzMy4zNCw0Mi40NUwxMzMuNDcsNDIuNjUiLz48cGF0aCBkPSJNMTUwLjAyLDg4Ljc0TDE1MC4yMiw4Ny45M0wxNDkuOTQsODcuMTVMMTQ5LjIzLDg2LjQ3TDE0OC4xOSw4NS45NkwxNDYuOTEsODUuNjdMMTQ1LjU0LDg1LjY0TDE0NC4yMiw4NS44NkwxNDMuMTEsODYuMzJMMTQyLjMxLDg2Ljk3TDE0MS45Miw4Ny43M0wxNDEuOTcsODguNTJMMTQyLjExLDg4LjcyIi8+PHBhdGggZD0iTTE1MC4wMiw1NC43MUwxNTAuMjIsNTMuODlMMTQ5Ljk0LDUzLjExTDE0OS4yMyw1Mi40M0wxNDguMTksNTEuOTJMMTQ2LjkxLDUxLjYzTDE0NS41NCw1MS42MEwxNDQuMjIsNTEuODNMMTQzLjEwLDUyLjI5TDE0Mi4zMSw1Mi45M0wxNDEuOTIsNTMuNjlMMTQxLjk3LDU0LjQ4TDE0Mi4xMSw1NC42OCIvPjxwYXRoIGQ9Ik0xNTguNjYsMTAwLjc4TDE1OC44NSw5OS45NkwxNTguNTcsOTkuMTlMMTU3Ljg3LDk4LjUxTDE1Ni44Miw5Ny45OUwxNTUuNTQsOTcuNzBMMTU0LjE3LDk3LjY3TDE1Mi44Niw5Ny45MEwxNTEuNzQsOTguMzZMMTUwLjk0LDk5LjAwTDE1MC41NSw5OS43NkwxNTAuNjEsMTAwLjU1TDE1MC43NCwxMDAuNzUiLz48cGF0aCBkPSJNMTUwLjc0LDc2LjY5TDE1MC42MSw3Ni40OUwxNTAuNTUsNzUuNjlMMTUwLjk0LDc0Ljk0TDE1MS43NCw3NC4yOUwxNTIuODYsNzMuODNMMTU0LjE3LDczLjYwTDE1NS41NCw3My42NEwxNTYuODIsNzMuOTJMMTU3Ljg3LDc0LjQ0TDE1OC41Nyw3NS4xMkwxNTguODUsNzUuODlMMTU4LjY2LDc2LjcxIi8+PHBhdGggZD0iTTE5Mi4yMiw4OC42MEwxOTIuMjYsODcuNDFMMTkxLjg0LDg1Ljc5TDE5MC45NSw4NC4yM0wxODkuNjIsODIuNzhMMTg3Ljg4LDgxLjQ4TDE4NS43OCw4MC4zN0wxODMuNDAsNzkuNDhMMTgwLjc4LDc4Ljg0TDE3OC4wMiw3OC40NkwxNzUuMTgsNzguMzVMMTcyLjM1LDc4LjUzTDE2OS42Miw3OC45N0wxNjcuMDUsNzkuNjhMMTY0LjczLDgwLjYzTDE2Mi43Miw4MS43OUwxNjEuMDgsODMuMTNMMTU5Ljg1LDg0LjYxTDE1OS4wOCw4Ni4xOUwxNTguNzgsODcuODJMMTU4Ljg3LDg4LjY4Ii8+PHBhdGggZD0iTTE3OS41MCwxMDUuNzZMMTc5LjcwLDEwNC45NUwxNzkuNDIsMTA0LjE3TDE3OC43MSwxMDMuNDlMMTc3LjY3LDEwMi45OEwxNzYuMzksMTAyLjY5TDE3NS4wMiwxMDIuNjZMMTczLjcwLDEwMi44OEwxNzIuNTksMTAzLjM0TDE3MS43OSwxMDMuOTlMMTcxLjQwLDEwNC43NUwxNzEuNDUsMTA1LjU0TDE3MS41OSwxMDUuNzQiLz48cGF0aCBkPSJNMTc5LjUwLDcxLjczTDE3OS43MCw3MC45MUwxNzkuNDIsNzAuMTNMMTc4LjcyLDY5LjQ1TDE3Ny42Nyw2OC45NEwxNzYuMzksNjguNjVMMTc1LjAyLDY4LjYyTDE3My43MCw2OC44NUwxNzIuNTksNjkuMzFMMTcxLjc5LDY5Ljk1TDE3MS40MCw3MC43MUwxNzEuNDUsNzEuNTBMMTcxLjU5LDcxLjcwIi8+PHBhdGggZD0iTTIwMC4zNSwxMDAuNzhMMjAwLjU1LDk5Ljk2TDIwMC4yNiw5OS4xOUwxOTkuNTYsOTguNTFMMTk4LjUxLDk3Ljk5TDE5Ny4yNCw5Ny43MEwxOTUuODYsOTcuNjdMMTk0LjU1LDk3LjkwTDE5My40Myw5OC4zNkwxOTIuNjQsOTkuMDBMMTkyLjI0LDk5Ljc2TDE5Mi4zMCwxMDAuNTVMMTkyLjQzLDEwMC43NSIvPjxwYXRoIGQ9Ik0yMDAuMzUsNzYuNzFMMjAwLjU1LDc1Ljg5TDIwMC4yNiw3NS4xMkwxOTkuNTYsNzQuNDRMMTk4LjUxLDczLjkyTDE5Ny4yNCw3My42NEwxOTUuODYsNzMuNjBMMTk0LjU1LDczLjgzTDE5My40Myw3NC4yOUwxOTIuNjQsNzQuOTRMMTkyLjI0LDc1LjY5TDE5Mi4zMCw3Ni40OUwxOTIuNDMsNzYuNjkiLz48cGF0aCBkPSJNMjA4Ljk4LDg4Ljc1TDIwOS4xOCw4Ny45M0wyMDguOTAsODcuMTVMMjA4LjIwLDg2LjQ3TDIwNy4xNSw4NS45NkwyMDUuODcsODUuNjdMMjA0LjUwLDg1LjY0TDIwMy4xOCw4NS44NkwyMDIuMTAsODYuMzFMMjAxLjI3LDg2Ljk3TDIwMC44OCw4Ny43M0wyMDAuOTMsODguNTJMMjAxLjA3LDg4LjcyIi8+PHBhdGggZD0iTTIzMy43OCw4OC4wMkwyMzMuNzgsODcuODgiLz48L2c+PGcgc3R5bGU9InN0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDowLjUyOSI+PHBhdGggZD0iTTIzMy43OCw4OC4wMkwyMzMuNzgsODkuNTRMMjMzLjYyLDg5LjgzTDIzMy4zMiw5MC4wN0wxNzYuNzEsMTIyLjc0TDE3Ni4yOSwxMjIuOTJMMTc1Ljc5LDEyMy4wMkwxNzUuMjcsMTIzLjAyTDE3NC43NywxMjIuOTJMMTc0LjM1LDEyMi43NUwxNzIuNDksMTIxLjY3TDU4Ljc5LDU2LjAzTDU4LjQ4LDU1Ljc5TDU4LjMyLDU1LjUwIi8+PHBhdGggZD0iTTU4LjMyLDU1LjQ3TDU4LjMyLDUzLjg0TDU4LjMyLDU0LjAwIi8+PHBhdGggZD0iTTU4LjMyLDU0LjcyTDU4LjMyLDUzLjg0TDU4LjQ4LDUzLjU1TDU4Ljc5LDUzLjMxTDExNS4zNywyMC42NEwxMTUuODIsMjAuNDZMMTE2LjMxLDIwLjM2TDExNi44MywyMC4zNkwxMTcuMzMsMjAuNDZMMTE3Ljc1LDIwLjYzTDIzMy4zMiw4Ny4zNUwyMzMuNjIsODcuNTlMMjMzLjc4LDg3Ljg4Ii8+PHBhdGggZD0iTTgzLjM5LDU1LjA0TDgzLjE1LDU0LjY4TDgzLjM1LDU0LjI5TDg0LjE2LDUzLjY0TDg1LjI2LDUzLjE5TDg2LjU4LDUyLjk2TDg3Ljk2LDUzLjAwTDg5LjIzLDUzLjI4TDkwLjI3LDUzLjgwTDkwLjk4LDU0LjQ4TDkxLjA2LDU0LjcxTDkwLjQ5LDU1LjM5TDg5LjUxLDU1Ljk1TDg4LjI4LDU2LjMwTDg2LjkyLDU2LjM5TDg1LjU4LDU2LjIzTDg0LjQwLDU1LjgzTDgzLjUxLDU1LjIyTDgzLjM5LDU1LjA0Ii8+PHBhdGggZD0iTTkyLjI3LDY3LjM0TDkyLjE1LDY3LjI2TDkxLjc4LDY2LjcyTDkxLjk4LDY2LjMzTDkyLjc4LDY1LjY4TDkzLjg5LDY1LjIyTDk1LjIxLDY1LjAwTDk2LjU4LDY1LjAzTDk3Ljg2LDY1LjMyTDk4LjkxLDY1LjgzTDk5LjYxLDY2LjUxTDk5LjcwLDY2Ljc0TDk5LjEyLDY3LjQyTDk4LjE1LDY3Ljk4TDk2LjkyLDY4LjMzTDk1LjU1LDY4LjQzTDk0LjIxLDY4LjI3TDkzLjAzLDY3Ljg2TDkyLjI3LDY3LjM0Ii8+PHBhdGggZD0iTTkyLjUzLDQzLjQ1TDkyLjE0LDQzLjE5TDkxLjc4LDQyLjY1TDkxLjk4LDQyLjI2TDkyLjc4LDQxLjYxTDkzLjg5LDQxLjE1TDk1LjIxLDQwLjkzTDk2LjU4LDQwLjk2TDk3Ljg2LDQxLjI1TDk4LjkxLDQxLjc2TDk5LjYxLDQyLjQ0TDk5LjcwLDQyLjY4TDk5LjEyLDQzLjM1TDk4LjE1LDQzLjkxTDk2LjkyLDQ0LjI2TDk1LjU1LDQ0LjM2TDk0LjIxLDQ0LjIwTDkzLjAzLDQzLjc5TDkyLjUzLDQzLjQ1Ii8+PHBhdGggZD0iTTEwMC41Miw1Ni43MEwxMDAuMDAsNTUuNDJMOTkuOTEsNTQuNjNMMTAwLjEyLDUzLjUxTDEwMC44OSw1MS45M0wxMDIuMTIsNTAuNDVMMTAzLjc2LDQ5LjExTDEwNC43Miw0OC41MUwxMDUuNzcsNDcuOTVMMTA4LjA5LDQ3LjAxTDExMC42NSw0Ni4zMEwxMTMuMzksNDUuODVMMTE2LjIyLDQ1LjY4TDExOS4wNSw0NS43OEwxMjEuODIsNDYuMTZMMTI0LjM5LDQ2Ljc5TDEyNi44Miw0Ny43MEwxMjguOTIsNDguODFMMTMwLjY1LDUwLjEwTDEzMS45OSw1MS41NUwxMzIuODgsNTMuMTFMMTMzLjI1LDU0LjU2TDEzMy4yNCw1NS4wMUwxMzIuNzAsNTYuNjNMMTMxLjcwLDU4LjE2TDEzMC4yNiw1OS41OEwxMjguNDIsNjAuODNMMTI2LjI1LDYxLjg5TDEyMy44MCw2Mi43MkwxMjEuMTQsNjMuMzBMMTE4LjM1LDYzLjYxTDExNS41MSw2My42NEwxMTIuNjksNjMuNDBMMTA5Ljk5LDYyLjg5TDEwNy40OCw2Mi4xMkwxMDUuMjMsNjEuMTFMMTAzLjMxLDU5LjkxTDEwMS43Nyw1OC41M0wxMDAuNjYsNTcuMDJMMTAwLjUyLDU2LjcwIi8+PHBhdGggZD0iTTExMi43Niw3MS45MEwxMTIuOTksNzIuMjRMMTEzLjg4LDcyLjg0TDExNS4wNiw3My4yNUwxMTYuNDAsNzMuNDFMMTE3Ljc2LDczLjMyTDExOS4wMCw3Mi45N0wxMTkuOTcsNzIuNDFMMTIwLjU0LDcxLjczTDEyMC40Niw3MS40OUwxMTkuNzUsNzAuODFMMTE4LjcxLDcwLjMwTDExNy40Myw3MC4wMUwxMTYuMDYsNjkuOThMMTE0Ljc0LDcwLjIxTDExMy42Miw3MC42N0wxMTIuODMsNzEuMzFMMTEyLjYzLDcxLjcwTDExMi43Niw3MS45MCIvPjxwYXRoIGQ9Ik0xMTIuOTksMzguMjBMMTEzLjg4LDM4LjgxTDExNS4wNiwzOS4yMUwxMTYuNDAsMzkuMzhMMTE3Ljc2LDM5LjI4TDExOS4wMCwzOC45M0wxMTkuOTcsMzguMzdMMTIwLjU0LDM3LjY5TDEyMC40NiwzNy40NkwxMTkuNzUsMzYuNzhMMTE4LjcxLDM2LjI2TDExNy40MywzNS45OEwxMTYuMDYsMzUuOTRMMTE0Ljc0LDM2LjE3TDExMy42MiwzNi42M0wxMTIuODMsMzcuMjdMMTEyLjYzLDM3LjY2TDExMi45OSwzOC4yMCIvPjxwYXRoIGQ9Ik0xMzMuNDcsNjYuNzJMMTMzLjg0LDY3LjI2TDEzNC43Miw2Ny44NkwxMzUuOTAsNjguMjdMMTM3LjI1LDY4LjQzTDEzOC42MSw2OC4zM0wxMzkuODQsNjcuOThMMTQwLjgxLDY3LjQyTDE0MS4zOSw2Ni43NEwxNDEuMzAsNjYuNTFMMTQwLjYwLDY1LjgzTDEzOS41NSw2NS4zMkwxMzguMjcsNjUuMDNMMTM2LjkwLDY1LjAwTDEzNS41OSw2NS4yMkwxMzQuNDcsNjUuNjhMMTMzLjY3LDY2LjMzTDEzMy40Nyw2Ni43MiIvPjxwYXRoIGQ9Ik0xMzMuNjUsNDIuOTFMMTMzLjQ3LDQyLjY1TDEzMy42Nyw0Mi4yNkwxMzQuNDcsNDEuNjFMMTM1LjU5LDQxLjE1TDEzNi45MCw0MC45M0wxMzguMjcsNDAuOTZMMTM5LjU1LDQxLjI1TDE0MC42MCw0MS43NkwxNDEuMzAsNDIuNDRMMTQxLjM5LDQyLjY4TDE0MC44MSw0My4zNUwxMzkuODQsNDMuOTFMMTM4LjYxLDQ0LjI2TDEzNy4yNSw0NC4zNkwxMzUuOTAsNDQuMjBMMTM0LjcyLDQzLjc5TDEzMy44NCw0My4xOUwxMzMuNjUsNDIuOTEiLz48cGF0aCBkPSJNMTQyLjQ3LDg5LjI2TDE0My4zNiw4OS44NkwxNDQuNTQsOTAuMjdMMTQ1Ljg4LDkwLjQzTDE0Ny4yNCw5MC4zM0wxNDguNDcsODkuOTlMMTQ5LjAwLDg5LjczTDE0OS40NSw4OS40MkwxNTAuMDIsODguNzRMMTQ5Ljk0LDg4LjUxTDE0OS4yMyw4Ny44M0wxNDguMTksODcuMzJMMTQ2LjkxLDg3LjAzTDE0NS41NCw4Ny4wMEwxNDQuMjIsODcuMjNMMTQzLjExLDg3LjY5TDE0Mi4zMSw4OC4zM0wxNDIuMTEsODguNzJMMTQyLjQ3LDg5LjI2Ii8+PHBhdGggZD0iTTE0Mi4xOCw1NC43OEwxNDIuNDcsNTUuMjJMMTQzLjM2LDU1LjgzTDE0NC41NCw1Ni4yM0wxNDUuODgsNTYuMzlMMTQ3LjI0LDU2LjMwTDE0OC40OCw1NS45NUwxNDkuNDUsNTUuMzlMMTUwLjAyLDU0LjcxTDE0OS45NCw1NC40OEwxNDkuMjMsNTMuODBMMTQ4LjE5LDUzLjI4TDE0Ni45MSw1My4wMEwxNDUuNTQsNTIuOTZMMTQ0LjIyLDUzLjE5TDE0My4xMCw1My42NUwxNDIuMzEsNTQuMjlMMTQyLjExLDU0LjY4TDE0Mi4xOCw1NC43OCIvPjxwYXRoIGQ9Ik0xNTAuNzgsMTAwLjY3TDE1MC43NCwxMDAuNzVMMTUxLjExLDEwMS4yOUwxNTEuOTksMTAxLjkwTDE1My4xNywxMDIuMzBMMTU0LjUyLDEwMi40N0wxNTUuODgsMTAyLjM3TDE1Ny4xMSwxMDIuMDJMMTU3LjY0LDEwMS43NkwxNTguMDgsMTAxLjQ2TDE1OC42NiwxMDAuNzhMMTU4LjU3LDEwMC41NUwxNTcuODcsOTkuODdMMTU2LjgyLDk5LjM1TDE1NS41NCw5OS4wN0wxNTQuMTcsOTkuMDNMMTUyLjg2LDk5LjI2TDE1MS43NCw5OS43MkwxNTAuOTQsMTAwLjM3TDE1MC43OCwxMDAuNjciLz48cGF0aCBkPSJNMTUwLjc0LDc2LjY5TDE1MS4xMSw3Ny4yMkwxNTEuOTksNzcuODNMMTUzLjE3LDc4LjIzTDE1NC41Miw3OC40MEwxNTUuODgsNzguMzBMMTU3LjExLDc3Ljk1TDE1Ny42NCw3Ny43MEwxNTguMDgsNzcuMzlMMTU4LjY2LDc2LjcxTDE1OC41Nyw3Ni40OEwxNTcuODcsNzUuODBMMTU2LjgyLDc1LjI5TDE1NS41NCw3NS4wMEwxNTQuMTcsNzQuOTdMMTUyLjg2LDc1LjE5TDE1MS43NCw3NS42NUwxNTAuOTQsNzYuMzBMMTUwLjc0LDc2LjY5Ii8+PHBhdGggZD0iTTE1OS44MCw5MS4zMEwxNjAuNzMsOTIuNTdMMTYyLjI3LDkzLjk0TDE2NC4yMCw5NS4xNUwxNjYuNDUsOTYuMTZMMTY4Ljk2LDk2LjkzTDE3MS42Niw5Ny40NEwxNzQuNDcsOTcuNjhMMTc3LjMxLDk3LjY1TDE4MC4xMCw5Ny4zNEwxODIuNzYsOTYuNzZMMTg1LjIxLDk1LjkzTDE4Ny4zOSw5NC44N0wxODkuMjIsOTMuNjFMMTkwLjY2LDkyLjIwTDE5MS42Niw5MC42NkwxOTIuMjAsODkuMDVMMTkyLjIyLDg4LjYwTDE5MS44NCw4Ny4xNUwxOTAuOTUsODUuNjBMMTg5LjYyLDg0LjE0TDE4Ny44OCw4Mi44NEwxODUuNzgsODEuNzNMMTgzLjQwLDgwLjg0TDE4MC43OCw4MC4yMEwxNzguMDIsNzkuODJMMTc1LjE4LDc5LjcxTDE3Mi4zMyw3OS44OUwxNjkuNjIsODAuMzRMMTY3LjA1LDgxLjA0TDE2NC43Myw4MS45OUwxNjIuNzIsODMuMTVMMTYxLjA4LDg0LjQ5TDE1OS44NSw4NS45N0wxNTkuMDgsODcuNTVMMTU4Ljg3LDg4LjY4TDE1OC45Niw4OS40NkwxNTkuNjIsOTEuMDZMMTU5LjgwLDkxLjMwIi8+PHBhdGggZD0iTTE3MS44NiwxMDYuMTRMMTcxLjk1LDEwNi4yOEwxNzIuODQsMTA2Ljg4TDE3NC4wMCwxMDcuMjhMMTc1LjM2LDEwNy40NUwxNzYuNzIsMTA3LjM1TDE3Ny45NiwxMDcuMDBMMTc4LjQ4LDEwNi43NUwxNzguOTMsMTA2LjQ0TDE3OS41MCwxMDUuNzZMMTc5LjQyLDEwNS41M0wxNzguNzEsMTA0Ljg1TDE3Ny42NywxMDQuMzRMMTc2LjM5LDEwNC4wNUwxNzUuMDIsMTA0LjAyTDE3My43MCwxMDQuMjVMMTcyLjU5LDEwNC43MUwxNzEuNzksMTA1LjM1TDE3MS41OSwxMDUuNzRMMTcxLjg2LDEwNi4xNCIvPjxwYXRoIGQ9Ik0xNzEuOTUsNzIuMjRMMTcxLjU5LDcxLjcwTDE3MS43OSw3MS4zMUwxNzIuNTksNzAuNjdMMTczLjcwLDcwLjIxTDE3NS4wMiw2OS45OEwxNzYuMzksNzAuMDFMMTc3LjY3LDcwLjMwTDE3OC43Miw3MC44MUwxNzkuNDIsNzEuNTBMMTc5LjUwLDcxLjczTDE3OC45Myw3Mi40MUwxNzguNDgsNzIuNzFMMTc3Ljk2LDcyLjk3TDE3Ni43Miw3My4zMUwxNzUuMzYsNzMuNDFMMTc0LjAyLDczLjI1TDE3Mi44NCw3Mi44NEwxNzEuOTUsNzIuMjQiLz48cGF0aCBkPSJNMTkyLjgwLDEwMS4yOUwxOTIuNDMsMTAwLjc1TDE5Mi42NCwxMDAuMzdMMTkzLjQzLDk5LjcyTDE5NC41NSw5OS4yNkwxOTUuODYsOTkuMDNMMTk3LjI0LDk5LjA3TDE5OC41MSw5OS4zNUwxOTkuNTYsOTkuODdMMjAwLjI2LDEwMC41NUwyMDAuMzUsMTAwLjc4TDE5OS43NywxMDEuNDZMMTk5LjMzLDEwMS43NkwxOTguODAsMTAyLjAyTDE5Ny41NywxMDIuMzdMMTk2LjIxLDEwMi40N0wxOTQuODYsMTAyLjMwTDE5My42OSwxMDEuOTBMMTkyLjgwLDEwMS4yOSIvPjxwYXRoIGQ9Ik0xOTMuMDUsNzcuNDBMMTkyLjgwLDc3LjIyTDE5Mi40Myw3Ni42OUwxOTIuNjQsNzYuMzBMMTkzLjQzLDc1LjY1TDE5NC41NSw3NS4xOUwxOTUuODYsNzQuOTdMMTk3LjI0LDc1LjAwTDE5OC41MSw3NS4yOUwxOTkuNTYsNzUuODBMMjAwLjI1LDc2LjQ3TDIwMC4zNSw3Ni43MUwxOTkuNzcsNzcuMzlMMTk5LjMzLDc3LjY5TDE5OC44MCw3Ny45NUwxOTcuNTcsNzguMzBMMTk2LjIxLDc4LjQwTDE5NC44Niw3OC4yM0wxOTMuNjksNzcuODNMMTkzLjA1LDc3LjQwIi8+PHBhdGggZD0iTTIwMi4xOSw4OS43N0wyMDEuNDMsODkuMjZMMjAxLjA3LDg4LjcyTDIwMS4yNyw4OC4zM0wyMDIuMTAsODcuNjdMMjAzLjE4LDg3LjIzTDIwNC41MCw4Ny4wMEwyMDUuODcsODcuMDNMMjA3LjE1LDg3LjMyTDIwOC4yMCw4Ny44M0wyMDguOTAsODguNTFMMjA4Ljk4LDg4Ljc1TDIwOC40MSw4OS40MkwyMDcuOTYsODkuNzNMMjA3LjQ0LDg5Ljk5TDIwNi4yMCw5MC4zM0wyMDQuODQsOTAuNDNMMjAzLjUwLDkwLjI3TDIwMi4zMiw4OS44NkwyMDIuMTksODkuNzciLz48cGF0aCBkPSJNMjMzLjc4LDg5LjU0TDIzMy43OCw4OS40OSIvPjxwYXRoIGQ9Ik0yMzMuNzgsODguMThMMjMzLjc4LDg4LjM0Ii8+PC9nPjwvZz48ZyBpZD0iQWN0b3JfLjMiPjxnIHN0eWxlPSJzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MC4xNzYiPjxwYXRoIGQ9Ik03NC44MSwxMzQuNDdMNzUuMDcsMTM0LjMyTDc1LjI0LDEzNC4wNEw3NS4zMCwxMzMuNjVMNzUuMzAsNjguMjlMNzUuMjQsNjcuODNMNzUuMDcsNjcuMzVMNzQuODEsNjYuOTBMNzQuNDgsNjYuNTJMNzQuMTIsNjYuMjRMNTcuNjEsNTYuNzFMNTcuMjUsNTYuNTdMNTYuOTIsNTYuNTciLz48cGF0aCBkPSJNNjguOTAsMTIzLjI2TDY4Ljc4LDEyMy40N0w2Ny45OCwxMjMuOTNMNjYuOTgsMTIzLjk0TDY1Ljg3LDEyMy41MEw2NC43NSwxMjIuNjZMNjMuNzUsMTIxLjQ5TDYyLjk2LDEyMC4xMUw2Mi40NSwxMTguNjZMNjIuMjcsMTE3LjI3TDYyLjQ1LDExNi4wOUw2Mi45NiwxMTUuMjNMNjMuNzUsMTE0Ljc3TDY0LjAxLDExNC43NyIvPjxwYXRoIGQ9Ik02OC45MSw3NS41OUw2OC43OCw3NS44MUw2Ny45OCw3Ni4yN0w2Ni45OCw3Ni4yOEw2NS44Nyw3NS44NEw2NC43NSw3NS4wMEw2My43NSw3My44M0w2Mi45Niw3Mi40NUw2Mi40NSw3MS4wMEw2Mi4yNyw2OS42Mkw2Mi40NSw2OC40M0w2Mi45Niw2Ny41N0w2My43NSw2Ny4xMUw2NC4wMSw2Ny4xMSIvPjwvZz48ZyBzdHlsZT0ic3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjAuNTI5Ij48cGF0aCBkPSJNNTcuMTIsMTI0LjM3TDU2LjkyLDEyNC4xNEw1Ni42NiwxMjMuNjlMNTYuNDksMTIzLjIxTDU2LjQzLDEyMi43Nkw1Ni40Myw1Ny4zOUw1Ni40OSw1Ny4wMUw1Ni42Niw1Ni43Mkw1OC4wOSw1NS45MEw1OC40Myw1NS44OUw1OC43OSw1Ni4wM0w3NS4zMCw2NS41Nkw3NS42Niw2NS44NEw3NS45OSw2Ni4yMkw3Ni4yNSw2Ni42N0w3Ni40Miw2Ny4xNUw3Ni40OCw2Ny42MEw3Ni40OCwxMDUuMDBMNzYuNDgsMTMyLjk3TDc2LjQyLDEzMy4zNUw3Ni4yNSwxMzMuNjRMNzQuODEsMTM0LjQ3TDc0LjQ4LDEzNC40N0w3NC4xMiwxMzQuMzNMNTcuNjEsMTI0LjgwTDU3LjI1LDEyNC41Mkw1Ny4xMiwxMjQuMzciLz48cGF0aCBkPSJNNjMuNTcsMTE3LjU1TDYzLjYyLDExNy45OEw2NC4xNCwxMTkuNDNMNjQuOTMsMTIwLjgxTDY1LjkzLDEyMS45OEw2Ny4wNSwxMjIuODJMNjguMTYsMTIzLjI2TDY4LjkxLDEyMy4yNUw2OS4yOSwxMjIuNjFMNjkuNDYsMTIxLjQzTDY5LjI5LDEyMC4wNEw2OC43OCwxMTguNTlMNjcuOTgsMTE3LjIxTDY2Ljk4LDExNi4wNEw2NS44NywxMTUuMjBMNjQuNzUsMTE0Ljc2TDY0LjAxLDExNC43N0w2My42MiwxMTUuNDFMNjMuNDUsMTE2LjU5TDYzLjU3LDExNy41NSIvPjxwYXRoIGQ9Ik02My43OCw3MC43Nkw2My42Miw3MC4zMkw2My40NSw2OC45M0w2My42Miw2Ny43NUw2NC4wMSw2Ny4xMUw2NC43NSw2Ny4xMEw2NS44Nyw2Ny41NEw2Ni45OCw2OC4zOEw2Ny45OCw2OS41NUw2OC43OCw3MC45M0w2OS4yOSw3Mi4zOEw2OS40Niw3My43N0w2OS4yOSw3NC45NUw2OC45MSw3NS41OUw2OC4xNiw3NS42MEw2Ny4wNSw3NS4xNkw2NS45Myw3NC4zMkw2NC45Myw3My4xNUw2NC4xNCw3MS43N0w2My43OCw3MC43NiIvPjwvZz48L2c+PGcgaWQ9IkFjdG9yXy40Ij48ZyBzdHlsZT0ic3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjAuMTc2Ij48cGF0aCBkPSJNMTU1LjQ5LDE3OS45NEw3NS43NywxMzMuOTIiLz48cGF0aCBkPSJNMjMzLjc4LDE1Ny42M0wyMzMuNjIsMTU3LjkxTDIzMy4zMiwxNTguMTZMMTc2LjcxLDE5MC44M0wxNzYuMjksMTkxLjAxTDE3NS43OSwxOTEuMTBMMTc1LjI3LDE5MS4xMEwxNzQuOTMsMTkxLjA0Ii8+PC9nPjxnIHN0eWxlPSJzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MC41MjkiPjxwYXRoIGQ9Ik0yMzMuNzgsMTU4Ljk0TDIzMy43OCwxNTguOTlMMjMzLjYyLDE1OS4yN0wyMzMuMzIsMTU5LjUyTDE3Ni43MSwxOTIuMTlMMTc2LjI5LDE5Mi4zN0wxNzUuNzksMTkyLjQ2TDE3NS4yNywxOTIuNDZMMTc0Ljc3LDE5Mi4zN0wxNzQuMzYsMTkyLjE5TDU4Ljc5LDEyNS40OCIvPjxwYXRoIGQ9Ik0yMzMuNzgsMTU4Ljk5TDIzMy43OCwxNTcuNTgiLz48cGF0aCBkPSJNMjMzLjc4LDE1Ny42M0wyMzMuNzgsMTU3Ljc5Ii8+PC9nPjwvZz48ZyBpZD0iQWN0b3JfLjUiPjxnIHN0eWxlPSJzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MC4xNzYiPjxwYXRoIGQ9Ik0xNzMuODcsMTkxLjY1TDE3NC4xMywxOTEuNTBMMTc0LjMwLDE5MS4yMkwxNzQuMzUsMTkwLjgzTDE3NC4zNSwxMjUuNDdMMTc0LjMwLDEyNS4wMUwxNzQuMTMsMTI0LjU0TDE3My44NywxMjQuMDlMMTczLjU0LDEyMy43MEwxNzMuMTgsMTIzLjQzTDE1Ni42NywxMTMuOTBMMTU2LjMwLDExMy43NUwxNTUuOTcsMTEzLjc1Ii8+PHBhdGggZD0iTTE2My4wNiwxNzEuOTVMMTYyLjgxLDE3MS45NUwxNjIuMDEsMTcyLjQxTDE2MS41MCwxNzMuMjhMMTYxLjMyLDE3NC40NkwxNjEuNTAsMTc1Ljg0TDE2Mi4wMSwxNzcuMzBMMTYyLjgxLDE3OC42N0wxNjMuODEsMTc5Ljg0TDE2NC45MiwxODAuNjlMMTY2LjAzLDE4MS4xM0wxNjcuMDMsMTgxLjExTDE2Ny44MywxODAuNjZMMTY3Ljk2LDE4MC40NCIvPjxwYXRoIGQ9Ik0xNjcuOTYsMTMyLjc4TDE2Ny44MywxMzIuOTlMMTY3LjAzLDEzMy40NUwxNjYuMDMsMTMzLjQ2TDE2NC45MiwxMzMuMDNMMTYzLjgxLDEzMi4xOEwxNjIuODEsMTMxLjAxTDE2Mi4wMSwxMjkuNjNMMTYxLjUwLDEyOC4xOEwxNjEuMzIsMTI2LjgwTDE2MS41MCwxMjUuNjJMMTYyLjAxLDEyNC43NUwxNjIuODEsMTI0LjI5TDE2My4wNiwxMjQuMjkiLz48L2c+PGcgc3R5bGU9InN0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDowLjUyOSI+PHBhdGggZD0iTTE1Ni41MCwxODEuODVMMTU2LjMwLDE4MS43MEwxNTUuOTcsMTgxLjMyTDE1NS43MSwxODAuODdMMTU1LjU0LDE4MC4zOUwxNTUuNDksMTc5Ljk0TDE1NS40OSwxMTQuNThMMTU1LjU0LDExNC4xOUwxNTUuNzEsMTEzLjkxTDE1Ny4xNSwxMTMuMDdMMTU3LjQ4LDExMy4wN0wxNTcuODUsMTEzLjIxTDE3NC4zNSwxMjIuNzVMMTc0LjcyLDEyMy4wMkwxNzUuMDUsMTIzLjQwTDE3NS4zMSwxMjMuODZMMTc1LjQ4LDEyNC4zM0wxNzUuNTMsMTI0Ljc5TDE3NS41MywxOTAuMTVMMTc1LjQ4LDE5MC41NEwxNzUuMzEsMTkwLjgyTDE3My44NywxOTEuNjVMMTczLjU0LDE5MS42NkwxNzMuMTgsMTkxLjUxTDE1Ni42NywxODEuOThMMTU2LjUwLDE4MS44NSIvPjxwYXRoIGQ9Ik0xNjMuMzUsMTc2Ljg5TDE2My4xOSwxNzYuNjJMMTYyLjY4LDE3NS4xNkwxNjIuNTAsMTczLjc4TDE2Mi42OCwxNzIuNTlMMTYzLjA2LDE3MS45NUwxNjMuODEsMTcxLjk0TDE2NC45MiwxNzIuMzhMMTY2LjAzLDE3My4yM0wxNjcuMDMsMTc0LjM5TDE2Ny44MywxNzUuNzdMMTY4LjM0LDE3Ny4yMkwxNjguNTIsMTc4LjYxTDE2OC4zNCwxNzkuNzlMMTY3Ljk2LDE4MC40NEwxNjcuMjEsMTgwLjQ0TDE2Ni4xMCwxODAuMDFMMTY0Ljk5LDE3OS4xNkwxNjMuOTksMTc3Ljk5TDE2My4zNSwxNzYuODkiLz48cGF0aCBkPSJNMTYzLjM1LDEyOS4yM0wxNjMuMTksMTI4Ljk1TDE2Mi42OCwxMjcuNTBMMTYyLjUwLDEyNi4xMkwxNjIuNjgsMTI0LjkzTDE2My4wNiwxMjQuMjlMMTYzLjgxLDEyNC4yOEwxNjQuOTIsMTI0LjcyTDE2Ni4wMywxMjUuNTZMMTY3LjAzLDEyNi43M0wxNjcuODMsMTI4LjExTDE2OC4zNCwxMjkuNTZMMTY4LjUyLDEzMC45NUwxNjguMzQsMTMyLjEzTDE2Ny45NiwxMzIuNzhMMTY3LjIxLDEzMi43OEwxNjYuMTAsMTMyLjM1TDE2NC45OSwxMzEuNTBMMTYzLjk5LDEzMC4zM0wxNjMuMzUsMTI5LjIzIi8+PC9nPjwvZz48ZyBpZD0iQWN0b3JfLjYiPjxnIHN0eWxlPSJzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MC4xNzYiPjxwYXRoIGQ9Ik0yMjguMjgsODQuNDRMMjMwLjYxLDgzLjA5Ii8+PHBhdGggZD0iTTIzNS42Nyw5MC45MUwyMzYuNTAsOTAuNDMiLz48L2c+PGcgc3R5bGU9InN0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDowLjUyOSI+PHBhdGggZD0iTTIzNS42Nyw5OC43N0wyMzYuNTAsOTguMjlMMjM2LjcxLDk3LjI2TDIzNi45Niw5NS41MkwyMzcuMDMsOTQuMDVMMjM2Ljk1LDkyLjY0TDIzNi43MCw5MS4xOUwyMzYuNTAsOTAuNDNMMjM2LjAyLDg5LjQ0TDIzNS4wNyw4Ny44MUwyMzQuMDgsODYuNDVMMjMyLjk0LDg1LjE3TDIzMS41MCw4My44MkwyMzAuNjEsODMuMDlMMjMwLjEzLDgzLjAzTDIyOS4xOCw4My4wMEwyMjguMTksODMuMDVMMjI3LjA1LDgzLjE5TDIyNi4zMyw4My4zMSIvPjwvZz48L2c+PGcgaWQ9IkFjdG9yXy43Ij48ZyBzdHlsZT0ic3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjAuMTc2Ij48cGF0aCBkPSJNMjMzLjc4LDg5LjExTDIzNC4wMSw4OS4zN0wyMzQuMjcsODkuODJMMjM0LjQ0LDkwLjMwTDIzNC40OSw5MC43NUwyMzQuNDksMTU2LjExTDIzNC40NCwxNTYuNTBMMjM0LjI3LDE1Ni43OEwyMzQuMDEsMTU2LjkzIi8+PC9nPjxnIHN0eWxlPSJzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MC41MjkiPjxwYXRoIGQ9Ik0yMzMuMzIsODcuMzVMMjM0LjQ5LDg4LjAzTDIzNC44Niw4OC4zMEwyMzUuMTksODguNjlMMjM1LjQ1LDg5LjE0TDIzNS42Miw4OS42MkwyMzUuNjcsOTAuMDdMMjM1LjY3LDE1NS40M0wyMzUuNjIsMTU1LjgyTDIzNS40NSwxNTYuMTBMMjM0LjAxLDE1Ni45M0wyMzMuNzgsMTU2Ljk0Ii8+PC9nPjwvZz48ZyBpZD0iQWN0b3JfLjgiPjxnIHN0eWxlPSJzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MC4xNzYiPjxwYXRoIGQ9Ik01OC4zMiw1NS4zNkw1OC4zMiw1NS41MEw1OC40OCw1NS43OUw1OC43OSw1Ni4wM0wxNzQuMzUsMTIyLjc1TDE3NC43NywxMjIuOTJMMTc1LjI3LDEyMy4wMkwxNzUuNzksMTIzLjAyTDE3Ni4yOSwxMjIuOTJMMTc2LjcxLDEyMi43NEwyMDIuNjYsMTA3Ljc3TDIwMi42NiwxMjguNDdMMjAwLjcyLDEzMC4yNUwxOTguOTEsMTMyLjMyTDE5Ny4yOCwxMzQuNjNMMTk1Ljg4LDEzNy4xMUwxOTQuNzQsMTM5LjY5TDE5My45MSwxNDIuMjlMMTkzLjM5LDE0NC44NEwxOTMuMjIsMTQ3LjI2TDE5My4zOSwxNDkuNDhMMTkzLjkxLDE1MS40M0wxOTQuNzQsMTUzLjA3TDE5NS44OCwxNTQuMzRMMTk3LjI4LDE1NS4yMEwxOTguOTEsMTU1LjYyTDIwMC43MiwxNTUuNjFMMjAyLjY2LDE1NS4xNUwyMDIuNjYsMTcwLjQxIi8+PHBhdGggZD0iTTU4LjMyLDU1LjUwTDU4LjMyLDU1Ljg5Ii8+PHBhdGggZD0iTTk5LjU4LDQyLjgyTDk2LjM1LDQwLjk2Ii8+PHBhdGggZD0iTTEwMi42NCw1MC4wM0wxMDIuNjYsNTAuMDRMMTAxLjI4LDUxLjUwTDEwMC4zNyw1My4wOEw5OS45Myw1NC43Mkw5OS45NCw1NC44OCIvPjxwYXRoIGQ9Ik0xMDIuNjYsNTAuMDRMMTAyLjY2LDU5LjMyIi8+PHBhdGggZD0iTTEwNC43OSwxNDEuNTJMMTA0Ljc1LDE0MS4zOEwxMDQuNjcsMTQwLjA4TDEwNC45MiwxMzguOTlMMTA1LjQ2LDEzOC4yMUwxMDYuMjYsMTM3LjgyTDEwNy4yNCwxMzcuODRMMTA4LjMyLDEzOC4yOEwxMDkuNDAsMTM5LjA4TDExMC4zOCwxNDAuMjBMMTExLjE4LDE0MS41MUwxMTEuNzIsMTQyLjkyTDExMS45NiwxNDQuMjlMMTExLjg4LDE0NS40OUwxMTEuNDgsMTQ2LjQzTDExMC44MCwxNDcuMDNMMTA5LjkwLDE0Ny4yMkwxMDguODYsMTQ2Ljk5TDEwOC4zMiwxNDYuNzJMMTA3Ljc3LDE0Ni4zNkwxMDYuNzMsMTQ1LjM4TDEwNS44MywxNDQuMTVMMTA1LjE1LDE0Mi43OEwxMDQuNzksMTQxLjUyIi8+PHBhdGggZD0iTTEwNS4wNCw5NC43M0wxMDUuMTUsOTUuMTJMMTA1LjgzLDk2LjUwTDEwNi43Myw5Ny43MkwxMDcuNzcsOTguNzBMMTA4Ljg2LDk5LjMyTDEwOS45MCw5OS41NkwxMTAuODAsOTkuMzdMMTExLjQ4LDk4Ljc3TDExMS44OCw5Ny44M0wxMTEuOTYsOTYuNjNMMTExLjcyLDk1LjI2TDExMS4xOCw5My44NUwxMTAuMzgsOTIuNTRMMTA5LjQwLDkxLjQyTDEwOC4zMiw5MC42MUwxMDcuMjQsOTAuMThMMTA2LjI2LDkwLjE2TDEwNS40Niw5MC41NUwxMDQuOTIsOTEuMzNMMTA0LjY3LDkyLjQyTDEwNC43NSw5My43MkwxMDUuMDQsOTQuNzMiLz48cGF0aCBkPSJNMTA3LjM1LDQ3LjMxTDEwNy4zOCw0Ny4zMkwxMDcuMzgsNjIuMDciLz48cGF0aCBkPSJNMTA3LjM4LDQ3LjMyTDEwOS45MSw0Ni41M0wxMTIuNjQsNDUuOTlMMTE1LjQ5LDQ1Ljc0TDExOC4zNyw0NS43OEwxMjEuMTksNDYuMTBMMTIzLjg4LDQ2LjcwTDEyNi4zNSw0Ny41NUwxMjguNTMsNDguNjRMMTMwLjM1LDQ5LjkzTDEzMS43Niw1MS4zOEwxMzIuNzIsNTIuOTVMMTMzLjIwLDU0LjU5TDEzMy4xOSw1NS4xNiIvPjxwYXRoIGQ9Ik0xMjIuMjMsMTUzLjQ2TDEyMS42NiwxNTIuMzFMMTIxLjI2LDE1MC45MUwxMjEuMTgsMTQ5LjYxTDEyMS40MiwxNDguNTJMMTIxLjk3LDE0Ny43NEwxMjIuNzcsMTQ3LjM1TDEyMy43NSwxNDcuMzdMMTI0LjgzLDE0Ny44MUwxMjUuOTEsMTQ4LjYyTDEyNi44OSwxNDkuNzNMMTI3LjY4LDE1MS4wNEwxMjguMjMsMTUyLjQ1TDEyOC40NywxNTMuODJMMTI4LjM5LDE1NS4wMkwxMjcuOTksMTU1Ljk2TDEyNy4zMSwxNTYuNTZMMTI2LjQxLDE1Ni43NUwxMjUuMzcsMTU2LjUyTDEyNC44MywxNTYuMjVMMTI0LjI4LDE1NS44OUwxMjMuMjQsMTU0LjkxTDEyMi4zNCwxNTMuNjlMMTIyLjIzLDE1My40NiIvPjxwYXRoIGQ9Ik0xMjEuODMsMTA1LjAwTDEyMi4zNCwxMDYuMDNMMTIzLjI0LDEwNy4yNUwxMjQuMjgsMTA4LjIzTDEyNS4zNywxMDguODZMMTI2LjQxLDEwOS4wOEwxMjcuMzEsMTA4LjkwTDEyNy45OSwxMDguMzBMMTI4LjM5LDEwNy4zNkwxMjguNDcsMTA2LjE2TDEyOC4yMywxMDQuNzlMMTI3LjY4LDEwMy4zOEwxMjYuODksMTAyLjA3TDEyNS45MSwxMDAuOTZMMTI0LjgzLDEwMC4xNUwxMjMuNzUsOTkuNzFMMTIyLjc3LDk5LjY5TDEyMS45NywxMDAuMDlMMTIxLjQyLDEwMC44NkwxMjEuMTgsMTAxLjk1TDEyMS4yNiwxMDMuMjVMMTIxLjY2LDEwNC42NUwxMjEuODMsMTA1LjAwIi8+PHBhdGggZD0iTTE5Mi4xNSw4OS4yMUwxOTIuMTEsODguMzVMMTkxLjU2LDg2Ljc0TDE5MC41Miw4NS4xN0wxODkuMDQsODMuNzRMMTg3LjE2LDgyLjQ4TDE4NC45Myw4MS40M0wxODIuNDEsODAuNjJMMTc5LjcwLDgwLjA3TDE3Ni44Niw3OS43OUwxNzMuOTcsNzkuODBMMTcxLjE0LDgwLjEwTDE2OC40NCw4MC42OEwxNjUuOTUsODEuNTFMMTYzLjc0LDgyLjU4TDE2MS44OSw4My44NUwxNjAuNDQsODUuMjlMMTU5LjQ1LDg2Ljg1TDE1OC45Myw4OC40OUwxNTguOTIsODkuMTMiLz48cGF0aCBkPSJNMTkyLjEyLDg5LjAyTDE5Mi4xMiw4OS4zMCIvPjxwYXRoIGQ9Ik0xOTMuNTAsMTQ5Ljg3TDIwMi42NiwxNTUuMTUiLz48cGF0aCBkPSJNMTkzLjQ4LDE0NC40MUwyMDcuMzcsMTUyLjQzTDIwNy4zNywxNzMuMTMiLz48cGF0aCBkPSJNMjAwLjIzLDEwMC45MkwxOTcuMDEsOTkuMDYiLz48cGF0aCBkPSJNMjMzLjc4LDg5LjU0TDIzMy42Miw4OS44M0wyMzMuMzIsOTAuMDdMMjA3LjM3LDEwNS4wNUwyMDcuMzcsMTI1Ljc1TDIwMi42NiwxMjMuMDIiLz48cGF0aCBkPSJNMjA3LjM3LDE1Mi40M0wyMDkuMzEsMTUwLjY2TDIxMS4xMSwxNDguNThMMjEyLjc0LDE0Ni4yN0wyMTQuMTQsMTQzLjgwTDIxNS4yOSwxNDEuMjFMMjE2LjEyLDEzOC42MUwyMTYuNjMsMTM2LjA2TDIxNi44MSwxMzMuNjRMMjE2LjYzLDEzMS40MkwyMTYuMTIsMTI5LjQ3TDIxNS4yOCwxMjcuODNMMjE0LjE1LDEyNi41NkwyMTIuNzQsMTI1LjcwTDIxMS4xMSwxMjUuMjhMMjA5LjMxLDEyNS4yOUwyMDcuMzcsMTI1Ljc1Ii8+PHBhdGggZD0iTTIxMi41OSwxMjUuNjZMMjEzLjYxLDEyNi4yNSIvPjwvZz48ZyBzdHlsZT0ic3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjAuNTI5Ij48cGF0aCBkPSJNNTguMzIsNTUuMjBMNTguMzIsNTUuODkiLz48cGF0aCBkPSJNMTU1LjQ5LDE3OS45NEw3NS43NywxMzMuOTIiLz48cGF0aCBkPSJNMjMzLjc4LDE1Ny41OEwyMzMuNjIsMTU3LjkxTDIzMy4zMiwxNTguMTZMMjA3LjM3LDE3My4xM0wyMDIuNjYsMTcwLjQxTDIwMi42NiwxNzUuODVMMTc2LjcxLDE5MC44M0wxNzYuMjksMTkxLjAxTDE3NS43OSwxOTEuMTBMMTc1LjI3LDE5MS4xMEwxNzQuOTMsMTkxLjA0Ii8+PHBhdGggZD0iTTIzMy43OCwxNTcuNjNMMjMzLjc4LDk5LjI5TDIzMy43OCw5OS45MCIvPjxwYXRoIGQ9Ik0yMzMuNzgsOTkuMjlMMjMzLjc4LDg5LjQ5Ii8+PC9nPjwvZz48Zy8+PGcvPjxnIHRyYW5zZm9ybT0ic2NhbGUoMC4wMDAxMDApIiBvcGFjaXR5PSIwLjAwIiB2aXNpYmlsaXR5PSJoaWRkZW4iIGlkPSJwYXBlcklEIj48cGF0aCBkPSJNLTIwMDAuMDAsLTIwMDAuMDBMMjI5Ny4wMCwtMjAwMC4wMEwyMjk3LjAwLDIyMTAuMDBMLTIwMDAuMDAsMjIxMC4wMHpNMC4wMCwwLjAwTDI5Ny4wMCwwLjAwTDI5Ny4wMCwyMTAuMDBMMC4wMCwyMTAuMDB6IiBzdHlsZT0ic3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjAuNTAwO2ZpbGw6I2U2ZTZlNjtmaWxsLXJ1bGU6ZXZlbm9kZCIvPjxwYXRoIGQ9Ik0zLjAwLDIxMC4wMEwyOTcuMDAsMjEwLjAwTDI5Ny4wMCwzLjAwTDMwMC4wMCwzLjAwTDMwMC4wMCwyMTMuMDBMMy4wMCwyMTMuMDB6IiBzdHlsZT0iZmlsbDojMDAwMDAwO2ZpbGwtb3BhY2l0eTowLjExOCIvPjwvZz48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLDApIiBvcGFjaXR5PSIwIiB2aXNpYmlsaXR5PSJoaWRkZW4iIGlkPSJUb29sVGlwIj48cmVjdCBoZWlnaHQ9IjgiIHdpZHRoPSIzMCIgeT0iMCIgeD0iMCIgc3Ryb2tlPSJub25lIiBmaWxsPSJibGFjayIgb3BhY2l0eT0iMC4yMCIgaWQ9IlRvb2xUaXBTaGFkb3ciLz48cmVjdCBoZWlnaHQ9IjgiIHdpZHRoPSIzMCIgeT0iMCIgeD0iMCIgc3Ryb2tlPSJibGFjayIgZmlsbD0iI2ZmZmZlMSIgaWQ9IlRvb2xUaXBCRyIvPjx0ZXh0IGhlaWdodD0iOCIgd2lkdGg9IjMwIiB5PSIwIiB4PSIwIiBmaWxsPSJibGFjayIgaWQ9IlRvb2xUaXBUZXh0IiB4bWw6c3BhY2U9InByZXNlcnZlIj50b29sdGlwPC90ZXh0PjwvZz48L2c+PC9zdmc+;points=[[0,0,0,0,0],[0,0.25,0,0,0],[0,0.5,0,0,0],[0,0.75,0,0,0],[0,1,0,0,0],[0.25,0,0,0,0],[0.25,1,0,0,0],[0.5,0,0,0,0],[0.5,1,0,0,0],[0.75,0,0,0,0],[0.75,1,0,0,0],[1,0,0,0,0],[1,0.25,0,0,0],[1,0.5,0,0,0],[1,0.75,0,0,0],[1,1,0,0,0]];portConstraintRotation=1;snapToPoint=1;container=1;resizeWidth=1;resizeHeight=1;treeFolding=1;treeMoving=1;comic=1;\" vertex=\"1\" parent=\"1\"><mxGeometry width=\"297\" height=\"210\" as=\"geometry\"/></mxCell></object></root></mxGraphModel>", + "w": 297, + "h": 210 + } +] \ No newline at end of file diff --git a/products/poly-mech/resources/software/draw.io/test-assembly.drawio b/products/poly-mech/resources/software/draw.io/test-assembly.drawio new file mode 100644 index 000000000..e0a93e0c0 --- /dev/null +++ b/products/poly-mech/resources/software/draw.io/test-assembly.drawio @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/products/poly-mech/resources/software/readme.md b/products/poly-mech/resources/software/readme.md new file mode 100644 index 000000000..6ab571a2f --- /dev/null +++ b/products/poly-mech/resources/software/readme.md @@ -0,0 +1,4 @@ +## UI Builder + +- [Draw.IO Libraries](https://www.drawio.com/blog/custom-libraries) +- [Draw.IO VSCode Embedded](https://marketplace.visualstudio.com/items?itemName=hediet.vscode-drawio) diff --git a/products/poly-mech/tasks/product.ts b/products/poly-mech/tasks/product.ts index bea2fe6aa..81125aa07 100644 --- a/products/poly-mech/tasks/product.ts +++ b/products/poly-mech/tasks/product.ts @@ -164,6 +164,7 @@ export const registerProductTasks = (grunt) => { ///////////////////////////////////////////////////////////////////// // // Product Single Test Task products[product] -> src/retail/product + export const productContentOptions = (target, product) => { product = '' + product const product_rel = product.replace('products/', '')