minify svgs

This commit is contained in:
2022-12-18 19:58:08 -08:00
parent 0c5f20677e
commit d03292a29c
15 changed files with 15 additions and 143 deletions

View File

@@ -1,16 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="256" height="256" viewBox="0 0 256 256" xml:space="preserve">
<defs>
</defs>
<g style="stroke: none; stroke-width: 0; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: none; fill-rule: nonzero; opacity: 1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)" >
<polygon points="18.51,29.21 45,16.33 71.49,29.21 45,42.08 " style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(0,255,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) "/>
<polygon points="45,42.08 45,73.67 71.49,60.79 71.49,29.21 " style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(0,255,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) "/>
<path d="M 45 44.08 c -0.299 0 -0.598 -0.067 -0.874 -0.201 l -26.49 -12.873 c -0.689 -0.334 -1.126 -1.033 -1.126 -1.799 s 0.437 -1.464 1.126 -1.799 l 26.49 -12.874 c 0.552 -0.269 1.196 -0.269 1.748 0 l 26.489 12.874 c 0.688 0.334 1.126 1.033 1.126 1.799 s -0.438 1.464 -1.126 1.799 L 45.874 43.879 C 45.598 44.013 45.299 44.08 45 44.08 z M 23.086 29.207 L 45 39.856 l 21.914 -10.649 L 45 18.557 L 23.086 29.207 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(0,255,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 45 75.667 c -0.299 0 -0.598 -0.067 -0.874 -0.201 l -26.49 -12.874 c -0.689 -0.335 -1.126 -1.033 -1.126 -1.799 V 29.207 c 0 -0.689 0.355 -1.33 0.939 -1.695 c 0.585 -0.365 1.315 -0.404 1.935 -0.104 L 45 39.856 l 25.615 -12.448 c 0.618 -0.301 1.35 -0.262 1.936 0.104 c 0.584 0.366 0.938 1.006 0.938 1.695 v 31.586 c 0 0.766 -0.438 1.464 -1.126 1.799 L 45.874 75.466 C 45.598 75.6 45.299 75.667 45 75.667 z M 20.51 59.541 L 45 71.443 l 24.489 -11.902 V 32.403 L 45.874 43.879 c -0.552 0.269 -1.196 0.269 -1.748 0 L 20.51 32.403 V 59.541 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(0,255,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 45 75.667 c -1.104 0 -2 -0.896 -2 -2 V 42.08 c 0 -1.104 0.896 -2 2 -2 s 2 0.896 2 2 v 31.587 C 47 74.771 46.104 75.667 45 75.667 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(0,255,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 84.734 62.139 c -1.104 0 -2 -0.896 -2 -2 v -7.096 c 0 -1.104 0.896 -2 2 -2 s 2 0.896 2 2 v 7.096 C 86.734 61.243 85.839 62.139 84.734 62.139 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(0,255,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 84.734 45.815 c -1.104 0 -2 -0.896 -2 -2 V 22.562 L 45 4.224 L 6.14 23.109 c -0.992 0.482 -2.19 0.069 -2.673 -0.925 c -0.483 -0.993 -0.069 -2.19 0.925 -2.673 l 39.734 -19.31 c 0.552 -0.269 1.196 -0.269 1.748 0 l 39.734 19.31 c 0.688 0.334 1.126 1.033 1.126 1.799 v 22.505 C 86.734 44.92 85.839 45.815 84.734 45.815 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(0,255,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 5.266 38.567 c -1.104 0 -2 -0.896 -2 -2 v -7.096 c 0 -1.104 0.896 -2 2 -2 s 2 0.896 2 2 v 7.096 C 7.266 37.672 6.37 38.567 5.266 38.567 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(0,255,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 45 90 c -0.299 0 -0.598 -0.067 -0.874 -0.201 L 4.392 70.488 c -0.689 -0.335 -1.126 -1.033 -1.126 -1.799 V 45.795 c 0 -1.104 0.896 -2 2 -2 s 2 0.896 2 2 v 21.643 L 45 85.776 l 38.86 -18.886 c 0.99 -0.481 2.19 -0.069 2.673 0.925 c 0.482 0.993 0.068 2.19 -0.925 2.673 L 45.874 89.799 C 45.598 89.933 45.299 90 45 90 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(0,255,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="256" height="256"><g stroke-width="0" stroke-miterlimit="10" fill="#0f0"><path d="M53.42 83.487l74.437-36.193 74.436 36.193-74.436 36.164z"/><path d="M127.857 119.651v88.768l74.436-36.193v-88.74z"/><path d="M127.857 125.271a5.62 5.62 0 01-2.456-.564L50.964 88.533a5.619 5.619 0 010-10.11L125.4 42.247a5.603 5.603 0 014.912 0l74.434 36.176a5.621 5.621 0 010 10.11l-74.434 36.174a5.62 5.62 0 01-2.456.564zM66.278 83.478l61.579 29.924 61.578-29.924-61.578-29.926-61.579 29.926z"/><path d="M127.857 214.03a5.62 5.62 0 01-2.456-.564L50.964 177.29a5.62 5.62 0 01-3.164-5.055V83.478c0-1.936.997-3.737 2.638-4.763a5.633 5.633 0 015.438-.292l71.98 34.979 71.979-34.979a5.619 5.619 0 018.076 5.055v88.757a5.625 5.625 0 01-3.164 5.055l-74.434 36.176a5.62 5.62 0 01-2.456.565zM59.04 168.718l68.817 33.444 68.814-33.444V92.459l-66.358 32.248a5.603 5.603 0 01-4.912 0L59.04 92.459v76.258z"/><path d="M127.857 214.03a5.622 5.622 0 01-5.62-5.62v-88.759c0-3.102 2.517-5.62 5.62-5.62s5.62 2.518 5.62 5.62v88.76a5.622 5.622 0 01-5.62 5.62zM239.51 176.017a5.622 5.622 0 01-5.62-5.62v-19.94c0-3.102 2.517-5.62 5.62-5.62s5.62 2.518 5.62 5.62v19.94a5.62 5.62 0 01-5.62 5.62zM239.51 130.147a5.622 5.622 0 01-5.62-5.62V64.806l-106.033-51.53L18.66 66.343a5.622 5.622 0 01-7.511-2.6 5.62 5.62 0 012.6-7.51L125.4 1.97a5.603 5.603 0 014.912 0l111.652 54.262a5.621 5.621 0 013.164 5.055v63.239a5.618 5.618 0 01-5.62 5.62zM16.204 109.78a5.622 5.622 0 01-5.62-5.62V84.22c0-3.102 2.518-5.62 5.62-5.62s5.62 2.518 5.62 5.62v19.94a5.62 5.62 0 01-5.62 5.62z"/><path d="M127.857 254.307a5.62 5.62 0 01-2.456-.565L13.748 199.478a5.62 5.62 0 01-3.164-5.055V130.09c0-3.103 2.518-5.62 5.62-5.62s5.62 2.517 5.62 5.62v60.816l106.033 51.53 109.196-53.07a5.626 5.626 0 017.511 2.6 5.624 5.624 0 01-2.599 7.51l-111.652 54.265a5.62 5.62 0 01-2.456.565z"/></g></svg>

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -1,16 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="256" height="256" viewBox="0 0 256 256" xml:space="preserve">
<defs>
</defs>
<g style="stroke: none; stroke-width: 0; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: none; fill-rule: nonzero; opacity: 1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)" >
<polygon points="18.51,29.21 45,16.33 71.49,29.21 45,42.08 " style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(255,0,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) "/>
<polygon points="45,42.08 45,73.67 71.49,60.79 71.49,29.21 " style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(255,0,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) "/>
<path d="M 45 44.08 c -0.299 0 -0.598 -0.067 -0.874 -0.201 l -26.49 -12.873 c -0.689 -0.334 -1.126 -1.033 -1.126 -1.799 s 0.437 -1.464 1.126 -1.799 l 26.49 -12.874 c 0.552 -0.269 1.196 -0.269 1.748 0 l 26.489 12.874 c 0.688 0.334 1.126 1.033 1.126 1.799 s -0.438 1.464 -1.126 1.799 L 45.874 43.879 C 45.598 44.013 45.299 44.08 45 44.08 z M 23.086 29.207 L 45 39.856 l 21.914 -10.649 L 45 18.557 L 23.086 29.207 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(255,0,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 45 75.667 c -0.299 0 -0.598 -0.067 -0.874 -0.201 l -26.49 -12.874 c -0.689 -0.335 -1.126 -1.033 -1.126 -1.799 V 29.207 c 0 -0.689 0.355 -1.33 0.939 -1.695 c 0.585 -0.365 1.315 -0.404 1.935 -0.104 L 45 39.856 l 25.615 -12.448 c 0.618 -0.301 1.35 -0.262 1.936 0.104 c 0.584 0.366 0.938 1.006 0.938 1.695 v 31.586 c 0 0.766 -0.438 1.464 -1.126 1.799 L 45.874 75.466 C 45.598 75.6 45.299 75.667 45 75.667 z M 20.51 59.541 L 45 71.443 l 24.489 -11.902 V 32.403 L 45.874 43.879 c -0.552 0.269 -1.196 0.269 -1.748 0 L 20.51 32.403 V 59.541 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(255,0,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 45 75.667 c -1.104 0 -2 -0.896 -2 -2 V 42.08 c 0 -1.104 0.896 -2 2 -2 s 2 0.896 2 2 v 31.587 C 47 74.771 46.104 75.667 45 75.667 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(255,0,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 84.734 62.139 c -1.104 0 -2 -0.896 -2 -2 v -7.096 c 0 -1.104 0.896 -2 2 -2 s 2 0.896 2 2 v 7.096 C 86.734 61.243 85.839 62.139 84.734 62.139 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(255,0,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 84.734 45.815 c -1.104 0 -2 -0.896 -2 -2 V 22.562 L 45 4.224 L 6.14 23.109 c -0.992 0.482 -2.19 0.069 -2.673 -0.925 c -0.483 -0.993 -0.069 -2.19 0.925 -2.673 l 39.734 -19.31 c 0.552 -0.269 1.196 -0.269 1.748 0 l 39.734 19.31 c 0.688 0.334 1.126 1.033 1.126 1.799 v 22.505 C 86.734 44.92 85.839 45.815 84.734 45.815 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(255,0,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 5.266 38.567 c -1.104 0 -2 -0.896 -2 -2 v -7.096 c 0 -1.104 0.896 -2 2 -2 s 2 0.896 2 2 v 7.096 C 7.266 37.672 6.37 38.567 5.266 38.567 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(255,0,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
<path d="M 45 90 c -0.299 0 -0.598 -0.067 -0.874 -0.201 L 4.392 70.488 c -0.689 -0.335 -1.126 -1.033 -1.126 -1.799 V 45.795 c 0 -1.104 0.896 -2 2 -2 s 2 0.896 2 2 v 21.643 L 45 85.776 l 38.86 -18.886 c 0.99 -0.481 2.19 -0.069 2.673 0.925 c 0.482 0.993 0.068 2.19 -0.925 2.673 L 45.874 89.799 C 45.598 89.933 45.299 90 45 90 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(255,0,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="256" height="256"><g stroke-width="0" stroke-miterlimit="10" fill="red"><path d="M53.42 83.487l74.437-36.193 74.436 36.193-74.436 36.164z"/><path d="M127.857 119.651v88.768l74.436-36.193v-88.74z"/><path d="M127.857 125.271a5.62 5.62 0 01-2.456-.564L50.964 88.533a5.619 5.619 0 010-10.11L125.4 42.247a5.603 5.603 0 014.912 0l74.434 36.176a5.621 5.621 0 010 10.11l-74.434 36.174a5.62 5.62 0 01-2.456.564zM66.278 83.478l61.579 29.924 61.578-29.924-61.578-29.926-61.579 29.926z"/><path d="M127.857 214.03a5.62 5.62 0 01-2.456-.564L50.964 177.29a5.62 5.62 0 01-3.164-5.055V83.478c0-1.936.997-3.737 2.638-4.763a5.633 5.633 0 015.438-.292l71.98 34.979 71.979-34.979a5.619 5.619 0 018.076 5.055v88.757a5.625 5.625 0 01-3.164 5.055l-74.434 36.176a5.62 5.62 0 01-2.456.565zM59.04 168.718l68.817 33.444 68.814-33.444V92.459l-66.358 32.248a5.603 5.603 0 01-4.912 0L59.04 92.459v76.258z"/><path d="M127.857 214.03a5.622 5.622 0 01-5.62-5.62v-88.759c0-3.102 2.517-5.62 5.62-5.62s5.62 2.518 5.62 5.62v88.76a5.622 5.622 0 01-5.62 5.62zM239.51 176.017a5.622 5.622 0 01-5.62-5.62v-19.94c0-3.102 2.517-5.62 5.62-5.62s5.62 2.518 5.62 5.62v19.94a5.62 5.62 0 01-5.62 5.62zM239.51 130.147a5.622 5.622 0 01-5.62-5.62V64.806l-106.033-51.53L18.66 66.343a5.622 5.622 0 01-7.511-2.6 5.62 5.62 0 012.6-7.51L125.4 1.97a5.603 5.603 0 014.912 0l111.652 54.262a5.621 5.621 0 013.164 5.055v63.239a5.618 5.618 0 01-5.62 5.62zM16.204 109.78a5.622 5.622 0 01-5.62-5.62V84.22c0-3.102 2.518-5.62 5.62-5.62s5.62 2.518 5.62 5.62v19.94a5.62 5.62 0 01-5.62 5.62z"/><path d="M127.857 254.307a5.62 5.62 0 01-2.456-.565L13.748 199.478a5.62 5.62 0 01-3.164-5.055V130.09c0-3.103 2.518-5.62 5.62-5.62s5.62 2.517 5.62 5.62v60.816l106.033 51.53 109.196-53.07a5.626 5.626 0 017.511 2.6 5.624 5.624 0 01-2.599 7.51l-111.652 54.265a5.62 5.62 0 01-2.456.565z"/></g></svg>

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -1,8 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="256" height="256" viewBox="0 0 256 256" xml:space="preserve">
<defs>
</defs>
<g style="stroke: none; stroke-width: 0; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: none; fill-rule: nonzero; opacity: 1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)" >
<path d="M 83.843 7.245 H 6.157 C 2.757 7.245 0 10.002 0 13.402 v 49.074 c 0 3.4 2.757 6.157 6.157 6.157 h 28.431 v 8.243 h -7.564 c -1.623 0 -2.939 1.316 -2.939 2.939 s 1.316 2.939 2.939 2.939 h 35.954 c 1.623 0 2.939 -1.316 2.939 -2.939 s -1.316 -2.939 -2.939 -2.939 h -7.564 v -8.243 h 28.431 c 3.4 0 6.157 -2.757 6.157 -6.157 V 13.402 C 90 10.002 87.243 7.245 83.843 7.245 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(0,255,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="256" height="256"><path d="M237.005 21.765H18.708c-9.554 0-17.301 7.747-17.301 17.301v137.898c0 9.554 7.747 17.301 17.3 17.301H98.6v23.163H77.344a8.26 8.26 0 000 16.517h101.03a8.26 8.26 0 000-16.517H157.12v-23.163h79.891c9.554 0 17.301-7.747 17.301-17.3V39.065c-.005-9.554-7.753-17.301-17.307-17.301z" fill="#0f0" stroke-width="0" stroke-miterlimit="10"/></svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 408 B

View File

@@ -1,8 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="256" height="256" viewBox="0 0 256 256" xml:space="preserve">
<defs>
</defs>
<g style="stroke: none; stroke-width: 0; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: none; fill-rule: nonzero; opacity: 1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)" >
<path d="M 83.843 7.245 H 6.157 C 2.757 7.245 0 10.002 0 13.402 v 49.074 c 0 3.4 2.757 6.157 6.157 6.157 h 28.431 v 8.243 h -7.564 c -1.623 0 -2.939 1.316 -2.939 2.939 s 1.316 2.939 2.939 2.939 h 35.954 c 1.623 0 2.939 -1.316 2.939 -2.939 s -1.316 -2.939 -2.939 -2.939 h -7.564 v -8.243 h 28.431 c 3.4 0 6.157 -2.757 6.157 -6.157 V 13.402 C 90 10.002 87.243 7.245 83.843 7.245 z" style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(255,0,0); fill-rule: nonzero; opacity: 1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round" />
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="256" height="256"><path d="M237.005 21.765H18.708c-9.554 0-17.301 7.747-17.301 17.301v137.898c0 9.554 7.747 17.301 17.3 17.301H98.6v23.163H77.344a8.26 8.26 0 000 16.517h101.03a8.26 8.26 0 000-16.517H157.12v-23.163h79.891c9.554 0 17.301-7.747 17.301-17.3V39.065c-.005-9.554-7.753-17.301-17.307-17.301z" fill="red" stroke-width="0" stroke-miterlimit="10"/></svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 407 B