xcratch-create 0.5.6 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/create.js +67 -63
- package/package.json +5 -4
- package/template/.mocharc.js +4 -0
- package/template/README.md +29 -3
- package/template/babel.config.json +18 -0
- package/template/dot_gitignore +1 -0
- package/template/package.json +29 -5
- package/template/projects/example/881c5994e99006fc05359d738af66337.svg +252 -0
- package/template/projects/example/b6e71f1bf154c8a5470665fe87dd507c.svg +251 -0
- package/template/projects/example/project.json +151 -152
- package/template/scripts/.eslintrc.js +14 -0
- package/template/scripts/rollup.config.mjs +78 -0
- package/template/scripts/setup-dev.mjs +37 -0
- package/template/src/gui/.eslintrc.js +41 -0
- package/template/src/gui/lib/libraries/extensions/entry/index.jsx +2 -1
- package/template/src/vm/.eslintrc.js +7 -0
- package/template/src/vm/extensions/block/index.js +18 -12
- package/template/test/.eslintrc.js +13 -0
- package/template/test/setup-test.js +4 -0
- package/template/test/unit/block.test.js +22 -0
- package/template/projects/example/0fb9be3e8397c983338cb71dc84d0b25.svg +0 -1
- package/template/projects/example/bcf454acf82e4504149f7ffe07081dbc.svg +0 -1
package/bin/create.js
CHANGED
|
@@ -1,28 +1,25 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
'use strict'
|
|
3
2
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
3
|
+
import path from 'path';
|
|
4
|
+
import { replaceInFile } from 'replace-in-file';
|
|
5
|
+
import fs from 'fs-extra';
|
|
6
|
+
import AdmZip from 'adm-zip';
|
|
7
|
+
import projectJson from '../package.json' assert { type: 'json' };
|
|
8
|
+
|
|
9
|
+
const __dirname = path.dirname(new URL(import.meta.url).pathname);
|
|
9
10
|
|
|
10
11
|
function getArgs() {
|
|
11
12
|
const args = {};
|
|
12
13
|
process.argv
|
|
13
|
-
.slice(2
|
|
14
|
+
.slice(2) // Start from the third argument (ignoring Node and script path)
|
|
14
15
|
.forEach(arg => {
|
|
15
|
-
if (arg.
|
|
16
|
-
//
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
args
|
|
21
|
-
|
|
22
|
-
else if (arg[0] === '-') {
|
|
23
|
-
// flags
|
|
24
|
-
const flags = arg.slice(1, arg.length).split('');
|
|
25
|
-
flags.forEach(flag => {
|
|
16
|
+
if (arg.startsWith('--')) {
|
|
17
|
+
// Long argument (e.g., --account=my-account)
|
|
18
|
+
const [longArgFlag, ...rest] = arg.slice(2).split('=');
|
|
19
|
+
args[longArgFlag] = rest.join('=') || true; // Handle arguments with and without values
|
|
20
|
+
} else if (arg.startsWith('-')) {
|
|
21
|
+
// Flags (e.g., -abc becomes args.a = args.b = args.c = true)
|
|
22
|
+
arg.slice(1).split('').forEach(flag => {
|
|
26
23
|
args[flag] = true;
|
|
27
24
|
});
|
|
28
25
|
}
|
|
@@ -32,90 +29,97 @@ function getArgs() {
|
|
|
32
29
|
|
|
33
30
|
const args = getArgs();
|
|
34
31
|
|
|
35
|
-
|
|
32
|
+
// Check for version request
|
|
33
|
+
if (args.version || args.V) {
|
|
36
34
|
process.stdout.write(`v${projectJson.version}\n`);
|
|
37
|
-
process.exit(0);
|
|
35
|
+
process.exit(0); // Exit successfully after displaying version
|
|
38
36
|
}
|
|
39
37
|
|
|
40
|
-
|
|
38
|
+
// Validate required arguments
|
|
39
|
+
if (!args.account) {
|
|
41
40
|
process.stderr.write('"--account=<github account>" is not set\n');
|
|
42
|
-
process.exit(1);
|
|
41
|
+
process.exit(1); // Exit with an error code
|
|
43
42
|
}
|
|
44
|
-
const account = args
|
|
43
|
+
const account = args.account;
|
|
45
44
|
|
|
46
|
-
if (!args
|
|
45
|
+
if (!args.repo) {
|
|
47
46
|
process.stderr.write('"--repo=<github repository>" is not set\n');
|
|
48
47
|
process.exit(1);
|
|
49
48
|
}
|
|
50
|
-
const repo = args
|
|
49
|
+
const repo = args.repo;
|
|
51
50
|
|
|
52
|
-
if (!args
|
|
51
|
+
if (!args.extensionID) {
|
|
53
52
|
process.stderr.write('"--extensionID=<extension ID>" is not set\n');
|
|
54
53
|
process.exit(1);
|
|
55
54
|
}
|
|
56
|
-
const extensionID = args
|
|
55
|
+
const extensionID = args.extensionID;
|
|
57
56
|
|
|
58
|
-
if (!args
|
|
57
|
+
if (!args.extensionName) {
|
|
59
58
|
process.stderr.write('"--extensionName=<extension name>" is not set\n');
|
|
60
59
|
process.exit(1);
|
|
61
60
|
}
|
|
62
|
-
const extensionName = args
|
|
61
|
+
const extensionName = args.extensionName;
|
|
63
62
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
path.resolve(process.cwd(),
|
|
63
|
+
// Determine output directory
|
|
64
|
+
const outputDir = args.out
|
|
65
|
+
? path.resolve(process.cwd(), args.out)
|
|
66
|
+
: path.resolve(process.cwd(), repo);
|
|
67
67
|
|
|
68
|
-
|
|
69
|
-
* Fetch template files
|
|
70
|
-
*
|
|
71
|
-
*/
|
|
68
|
+
// Fetch the project template
|
|
72
69
|
async function fetchTemplate() {
|
|
73
|
-
|
|
70
|
+
try {
|
|
71
|
+
await fs.copy(path.resolve(__dirname, '../template'), outputDir);
|
|
72
|
+
} catch (error) {
|
|
73
|
+
console.error('Error fetching template:', error);
|
|
74
|
+
process.exit(1);
|
|
75
|
+
}
|
|
74
76
|
}
|
|
75
77
|
|
|
78
|
+
// Replacement options for template files
|
|
76
79
|
const options = {
|
|
77
|
-
files: [
|
|
78
|
-
'README.md',
|
|
79
|
-
'package.json',
|
|
80
|
-
'src/**/*.js',
|
|
81
|
-
'src/**/*.jsx',
|
|
82
|
-
'src/**/*.json',
|
|
83
|
-
'projects/example/project.json',
|
|
84
|
-
],
|
|
80
|
+
files: ['./**/*'], // Target all files in the output directory
|
|
85
81
|
from: [
|
|
86
82
|
/<<account>>/g,
|
|
87
83
|
/<<repo>>/g,
|
|
88
84
|
/<<extensionID>>/g,
|
|
89
85
|
/<<extensionName>>/g,
|
|
90
86
|
],
|
|
91
|
-
to: [
|
|
92
|
-
account,
|
|
93
|
-
repo,
|
|
94
|
-
extensionID,
|
|
95
|
-
extensionName,
|
|
96
|
-
],
|
|
87
|
+
to: [account, repo, extensionID, extensionName],
|
|
97
88
|
};
|
|
98
89
|
|
|
90
|
+
// Customize the template with provided arguments
|
|
99
91
|
async function resetRepo() {
|
|
100
|
-
process.chdir(outputDir);
|
|
101
|
-
fs.renameSync('dot_gitignore', '.gitignore');
|
|
102
92
|
try {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
93
|
+
process.chdir(outputDir); // Change working directory to the output directory
|
|
94
|
+
|
|
95
|
+
// Rename .gitignore file
|
|
96
|
+
await fs.rename('dot_gitignore', '.gitignore');
|
|
97
|
+
|
|
98
|
+
// Replace placeholders in template files
|
|
99
|
+
await replaceInFile(options);
|
|
100
|
+
|
|
101
|
+
// Zip the example project directory
|
|
102
|
+
const zip = new AdmZip();
|
|
111
103
|
const examplePath = path.resolve(outputDir, 'projects/example');
|
|
112
104
|
zip.addLocalFolder(examplePath);
|
|
113
105
|
zip.writeZip(path.resolve(outputDir, 'projects/example.sb3'));
|
|
114
|
-
|
|
106
|
+
|
|
107
|
+
// Remove the original example directory
|
|
108
|
+
await fs.rm(examplePath, { recursive: true, force: true });
|
|
109
|
+
|
|
110
|
+
console.log(`Scaffolding project created at: ${outputDir}`);
|
|
111
|
+
|
|
115
112
|
} catch (error) {
|
|
116
113
|
console.error('Error occurred:', error);
|
|
114
|
+
process.exit(1);
|
|
117
115
|
}
|
|
118
116
|
}
|
|
119
117
|
|
|
118
|
+
// Execute the setup process
|
|
120
119
|
fetchTemplate()
|
|
121
|
-
.then(
|
|
120
|
+
.then(resetRepo)
|
|
121
|
+
.catch(error => {
|
|
122
|
+
console.error('Error during setup:', error);
|
|
123
|
+
process.exit(1);
|
|
124
|
+
});
|
|
125
|
+
|
package/package.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "xcratch-create",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"description": "Support tool to create new extension for Xcratch",
|
|
5
|
+
"type": "module",
|
|
5
6
|
"bin": {
|
|
6
7
|
"xcratch-create": "./bin/create.js"
|
|
7
8
|
},
|
|
@@ -27,8 +28,8 @@
|
|
|
27
28
|
},
|
|
28
29
|
"homepage": "https://github.com/xcratch/xcratch-create#readme",
|
|
29
30
|
"dependencies": {
|
|
30
|
-
"adm-zip": "^0.5.
|
|
31
|
-
"fs-extra": "^
|
|
32
|
-
"replace-in-file": "^
|
|
31
|
+
"adm-zip": "^0.5.16",
|
|
32
|
+
"fs-extra": "^11.3.0",
|
|
33
|
+
"replace-in-file": "^8.3.0"
|
|
33
34
|
}
|
|
34
35
|
}
|
package/template/README.md
CHANGED
|
@@ -20,15 +20,24 @@ This extension can be used with other extension in [Xcratch](https://xcratch.git
|
|
|
20
20
|
```
|
|
21
21
|
https://<<account>>.github.io/<<repo>>/dist/<<extensionID>>.mjs
|
|
22
22
|
```
|
|
23
|
+
5. Click 'OK' button
|
|
24
|
+
6. Now you can use the blocks of this extension
|
|
25
|
+
|
|
23
26
|
|
|
24
27
|
## Development
|
|
25
28
|
|
|
26
|
-
###
|
|
29
|
+
### Install Dependencies
|
|
30
|
+
|
|
31
|
+
```sh
|
|
32
|
+
npm install
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Setup Development Environment
|
|
27
36
|
|
|
28
|
-
|
|
37
|
+
Change ```vmSrcOrg``` to your local ```scratch-vm``` directory in ```./scripts/setup-dev.js``` then run setup-dev script to setup development environment.
|
|
29
38
|
|
|
30
39
|
```sh
|
|
31
|
-
npm run
|
|
40
|
+
npm run setup-dev
|
|
32
41
|
```
|
|
33
42
|
|
|
34
43
|
### Bundle into a Module
|
|
@@ -39,6 +48,23 @@ Run build script to bundle this extension into a module file which could be load
|
|
|
39
48
|
npm run build
|
|
40
49
|
```
|
|
41
50
|
|
|
51
|
+
### Watch and Bundle
|
|
52
|
+
|
|
53
|
+
Run watch script to watch the changes of source files and bundle automatically.
|
|
54
|
+
|
|
55
|
+
```sh
|
|
56
|
+
npm run watch
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Test
|
|
60
|
+
|
|
61
|
+
Run test script to test this extension.
|
|
62
|
+
|
|
63
|
+
```sh
|
|
64
|
+
npm run test
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
|
|
42
68
|
## 🏠 Home Page
|
|
43
69
|
|
|
44
70
|
Open this page from [https://<<account>>.github.io/<<repo>>/](https://<<account>>.github.io/<<repo>>/)
|
package/template/dot_gitignore
CHANGED
package/template/package.json
CHANGED
|
@@ -1,12 +1,36 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "<<repo>>",
|
|
3
3
|
"version": "0.0.0",
|
|
4
|
+
"description": "extension for Xcratch",
|
|
4
5
|
"scripts": {
|
|
5
|
-
"
|
|
6
|
-
"build": "
|
|
6
|
+
"setup-dev": "node ./scripts/setup-dev.mjs",
|
|
7
|
+
"build": "rollup -c ./scripts/rollup.config.mjs",
|
|
8
|
+
"watch": "rollup -c ./scripts/rollup.config.mjs --watch",
|
|
9
|
+
"test": "mocha"
|
|
7
10
|
},
|
|
8
11
|
"devDependencies": {
|
|
9
|
-
"
|
|
10
|
-
"
|
|
12
|
+
"@babel/core": "^7.26.9",
|
|
13
|
+
"@babel/eslint-parser": "^7.26.8",
|
|
14
|
+
"@babel/plugin-transform-react-jsx": "^7.25.9",
|
|
15
|
+
"@babel/plugin-transform-runtime": "^7.26.9",
|
|
16
|
+
"@babel/preset-env": "^7.26.9",
|
|
17
|
+
"@babel/preset-react": "^7.26.3",
|
|
18
|
+
"@babel/register": "^7.25.9",
|
|
19
|
+
"@rollup/plugin-babel": "^6.0.4",
|
|
20
|
+
"@rollup/plugin-commonjs": "^28.0.2",
|
|
21
|
+
"@rollup/plugin-image": "^3.0.3",
|
|
22
|
+
"@rollup/plugin-json": "^6.1.0",
|
|
23
|
+
"@rollup/plugin-multi-entry": "^6.0.1",
|
|
24
|
+
"@rollup/plugin-node-resolve": "^16.0.0",
|
|
25
|
+
"chai": "^5.2.0",
|
|
26
|
+
"core-js": "^3.40.0",
|
|
27
|
+
"eslint": "^8.57.0",
|
|
28
|
+
"eslint-config-scratch": "^9.0.9",
|
|
29
|
+
"eslint-plugin-import": "^2.31.0",
|
|
30
|
+
"eslint-plugin-mocha": "^10.5.0",
|
|
31
|
+
"fs-extra": "^11.3.0",
|
|
32
|
+
"mocha": "^11.1.0",
|
|
33
|
+
"rollup": "^4.34.7",
|
|
34
|
+
"rollup-plugin-polyfill-node": "^0.13.0"
|
|
11
35
|
}
|
|
12
|
-
}
|
|
36
|
+
}
|
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<svg
|
|
3
|
+
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
4
|
+
xmlns:cc="http://creativecommons.org/ns#"
|
|
5
|
+
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
6
|
+
xmlns:svg="http://www.w3.org/2000/svg"
|
|
7
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
8
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
9
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
10
|
+
version="1.1"
|
|
11
|
+
width="131.71837"
|
|
12
|
+
height="49.999924"
|
|
13
|
+
viewBox="0 0 131.71837 49.999925"
|
|
14
|
+
id="svg895"
|
|
15
|
+
sodipodi:docname="cat-top-2-a.svg"
|
|
16
|
+
inkscape:version="1.0 (4035a4f, 2020-05-01)">
|
|
17
|
+
<metadata
|
|
18
|
+
id="metadata901">
|
|
19
|
+
<rdf:RDF>
|
|
20
|
+
<cc:Work
|
|
21
|
+
rdf:about="">
|
|
22
|
+
<dc:format>image/svg+xml</dc:format>
|
|
23
|
+
<dc:type
|
|
24
|
+
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
|
25
|
+
<dc:title></dc:title>
|
|
26
|
+
</cc:Work>
|
|
27
|
+
</rdf:RDF>
|
|
28
|
+
</metadata>
|
|
29
|
+
<defs
|
|
30
|
+
id="defs899" />
|
|
31
|
+
<sodipodi:namedview
|
|
32
|
+
fit-margin-bottom="0"
|
|
33
|
+
fit-margin-right="0"
|
|
34
|
+
fit-margin-left="0"
|
|
35
|
+
fit-margin-top="0"
|
|
36
|
+
inkscape:document-rotation="0"
|
|
37
|
+
pagecolor="#ffffff"
|
|
38
|
+
bordercolor="#666666"
|
|
39
|
+
borderopacity="1"
|
|
40
|
+
objecttolerance="10"
|
|
41
|
+
gridtolerance="10"
|
|
42
|
+
guidetolerance="10"
|
|
43
|
+
inkscape:pageopacity="0"
|
|
44
|
+
inkscape:pageshadow="2"
|
|
45
|
+
inkscape:window-width="1730"
|
|
46
|
+
inkscape:window-height="909"
|
|
47
|
+
id="namedview897"
|
|
48
|
+
showgrid="false"
|
|
49
|
+
inkscape:zoom="4.1340901"
|
|
50
|
+
inkscape:cx="71.579569"
|
|
51
|
+
inkscape:cy="50.556923"
|
|
52
|
+
inkscape:window-x="0"
|
|
53
|
+
inkscape:window-y="25"
|
|
54
|
+
inkscape:window-maximized="0"
|
|
55
|
+
inkscape:current-layer="g891" />
|
|
56
|
+
<g
|
|
57
|
+
transform="translate(-167.40244,-152.39549)"
|
|
58
|
+
id="g893">
|
|
59
|
+
<g
|
|
60
|
+
data-paper-data="{"isPaintingLayer":true}"
|
|
61
|
+
stroke-linecap="round"
|
|
62
|
+
stroke-linejoin="round"
|
|
63
|
+
stroke-miterlimit="1.5"
|
|
64
|
+
stroke-dasharray="none"
|
|
65
|
+
stroke-dashoffset="0"
|
|
66
|
+
style="mix-blend-mode:normal"
|
|
67
|
+
id="g891">
|
|
68
|
+
<path
|
|
69
|
+
d="m 240.55387,197.27305 c -2.18151,-0.55337 -2.13923,0.42792 -3.6105,1.2197 -2.40982,1.29213 -5.68208,1.608 -8.34559,1.3174 -5.99492,-0.65702 -10.45943,-2.64238 -12.54796,-8.22361 -3.06172,-8.19579 7.48314,-17.83954 15.46512,-14.93773 8.13418,2.95402 2.99324,5.62586 17.43523,12.41835 2.78186,1.30732 8.92053,3.49566 10.4087,6.97612 0.97239,2.26416 -0.76099,5.24518 -3.5513,4.95371 -2.12233,-0.22069 -2.88333,-0.33694 -4.95491,-0.8558 -3.45832,-0.86674 -6.84051,-1.99208 -10.29879,-2.86812 z"
|
|
70
|
+
fill="#faa51d"
|
|
71
|
+
fill-rule="evenodd"
|
|
72
|
+
stroke="#c48800"
|
|
73
|
+
stroke-width="2.45913"
|
|
74
|
+
id="path833" />
|
|
75
|
+
<path
|
|
76
|
+
d="m 244.66183,154.82932 c 2.07157,-0.51889 2.83258,-0.63511 4.95492,-0.85582 2.7903,-0.29143 4.52368,2.68955 3.55129,4.95372 -1.48818,3.48046 -7.62686,5.66885 -10.4087,6.97612 -14.44197,6.79249 -9.30106,9.46433 -17.43523,12.41836 -7.98199,2.90182 -18.52682,-6.74193 -15.46508,-14.93773 2.08848,-5.58124 6.553,-7.5666 12.54797,-8.22362 2.66345,-0.2906 5.93574,0.0251 8.34553,1.3174 1.47125,0.7918 1.42898,1.77308 3.61052,1.21967 3.45827,-0.87599 6.84048,-2.00137 10.29879,-2.86809 z"
|
|
77
|
+
fill="#faa51d"
|
|
78
|
+
fill-rule="evenodd"
|
|
79
|
+
stroke="#c48800"
|
|
80
|
+
stroke-width="2.45913"
|
|
81
|
+
id="path835" />
|
|
82
|
+
<path
|
|
83
|
+
d="m 262.72581,183.84987 c 0.92165,0.74881 2.44365,2.79314 3.47523,3.36674 1.2345,0.67978 5.55526,0.84991 6.83202,1.10513 5.20857,1.03777 7.31398,1.81439 11.9476,4.40201 2.51973,1.40752 4.67589,4.06673 2.7142,6.60044 -0.54959,0.70332 -1.52197,1.81266 -3.97406,0.9122 -3.8726,-1.42689 -5.25084,-2.80575 -9.26722,-3.89404 -3.3991,-0.92066 -7.16179,1.50776 -10.30723,1.99882 -5.28469,0.82297 -10.73004,-2.16558 -13.67251,-6.42354 -1.84332,-2.66847 -1.33599,-6.9222 1.14992,-9.03728 4.09245,-3.4948 7.66914,-1.82951 11.10205,0.96951 z"
|
|
84
|
+
fill="#faa51d"
|
|
85
|
+
fill-rule="evenodd"
|
|
86
|
+
stroke="#c48800"
|
|
87
|
+
stroke-width="2.45913"
|
|
88
|
+
id="path837" />
|
|
89
|
+
<path
|
|
90
|
+
d="m 257.81459,171.37995 c -2.48591,-2.11508 -2.99324,-6.3688 -1.14996,-9.0373 2.94253,-4.25792 8.38788,-7.24649 13.67255,-6.42355 3.14545,0.49109 6.90812,2.91949 10.30721,1.99885 4.01637,-1.08829 5.39464,-2.46716 9.26724,-3.89404 2.45211,-0.90045 3.42449,0.2089 3.97409,0.91222 1.96166,2.5337 -0.19449,5.19293 -2.71421,6.60045 -4.6336,2.5876 -6.73903,3.36423 -11.94761,4.40196 -1.27677,0.25522 -5.59752,0.42539 -6.83203,1.10514 -1.03159,0.5736 -2.55357,2.61792 -3.4752,3.36675 -3.43293,2.79905 -7.00962,4.46431 -11.10208,0.96952 z"
|
|
91
|
+
fill="#faa51d"
|
|
92
|
+
fill-rule="evenodd"
|
|
93
|
+
stroke="#c48800"
|
|
94
|
+
stroke-width="2.45913"
|
|
95
|
+
id="path839" />
|
|
96
|
+
<path
|
|
97
|
+
d="m 270.95478,169.87237 c 1.91939,4.15432 1.4882,9.47444 0.40586,12.22544 -1.73336,4.38938 -9.41097,7.27516 -13.52032,9.19145 -4.27004,1.99546 -10.18886,5.8053 -17.08851,5.41699 -8.15113,-0.45823 -14.56883,-3.53187 -18.54292,-6.45388 -4.08402,-3.00795 -9.67309,-4.19983 -9.69847,-12.83195 -0.008,-7.43939 4.86193,-9.33546 9.14884,-12.10754 5.38617,-3.48807 9.95214,-6.1363 17.39296,-6.44631 8.47241,-0.35208 15.35518,2.96751 20.39468,4.73218 3.33143,1.16659 9.68148,2.3307 11.50787,6.27363 z"
|
|
98
|
+
fill="#faa51d"
|
|
99
|
+
fill-rule="evenodd"
|
|
100
|
+
stroke="#c48800"
|
|
101
|
+
stroke-width="2.50587"
|
|
102
|
+
id="path841" />
|
|
103
|
+
<g
|
|
104
|
+
style="stroke-width:1.10793"
|
|
105
|
+
transform="matrix(0.90430677,0,0,0.9008562,16.136991,15.23707)"
|
|
106
|
+
data-paper-data="{"index":null}"
|
|
107
|
+
fill-rule="evenodd"
|
|
108
|
+
id="g847">
|
|
109
|
+
<path
|
|
110
|
+
d="m 221.75393,187.02883 c -1.20618,-1.00421 -2.05706,-0.26274 -4.33852,0.48528 -2.80507,0.9182 -6.30113,2.86586 -10.00009,4.25811 -4.09915,1.54279 -8.0917,2.44602 -12.016,2.57038 -3.67184,0.11688 -12.56393,-1.10333 -18.75286,-4.47129 -1.40347,-0.76392 -4.50495,-2.61433 -6.07673,-4.25156 -1.85883,-1.93457 -1.98131,-2.88642 -1.92802,-3.93552 0.0795,-1.57458 0.85462,-3.25108 2.22723,-4.17488 1.71764,-1.15662 4.70129,-0.29641 7.84859,1.86537 2.68446,1.84293 5.96734,4.07016 10.52558,4.76115 9.05571,1.37261 15.37835,-2.30858 18.05252,-3.54001 3.51663,-1.6204 6.11786,-2.89671 8.96034,-4.36376 1.43994,-0.74802 3.61854,-2.1702 4.40396,-4.1057"
|
|
111
|
+
fill="#faa51d"
|
|
112
|
+
stroke="#c48800"
|
|
113
|
+
stroke-width="2.72453"
|
|
114
|
+
id="path843" />
|
|
115
|
+
<path
|
|
116
|
+
d="m 182.42972,191.03319 c -3.69567,-1.11702 -11.43001,-4.10855 -12.53548,-8.56531 -0.70018,-2.82491 0.77982,-3.99028 2.69902,-4.33675 0.81136,-0.14659 2.25903,0.16627 4.26023,1.27171 2.78575,1.53856 4.15458,3.27667 7.73276,4.61501 3.28565,1.22903 -0.49675,-0.50377 -1.44058,3.47126 -0.83974,3.53577 2.7345,4.58697 -0.71595,3.54407 z"
|
|
117
|
+
fill="#ffffff"
|
|
118
|
+
stroke="none"
|
|
119
|
+
stroke-width="0.0918146"
|
|
120
|
+
id="path845" />
|
|
121
|
+
</g>
|
|
122
|
+
<g
|
|
123
|
+
style="stroke-width:1.10793"
|
|
124
|
+
transform="matrix(0.90430677,0,0,0.9008562,16.136991,15.23707)"
|
|
125
|
+
id="g889">
|
|
126
|
+
<g
|
|
127
|
+
style="stroke-width:1.10792"
|
|
128
|
+
fill-rule="nonzero"
|
|
129
|
+
id="g853">
|
|
130
|
+
<path
|
|
131
|
+
d="m 310.2053,180.06419 c 0.0252,2.58028 -0.90746,5.80582 -3.47205,7.76398 -1.71733,1.31052 -4.49561,6.089 -8.01269,9.78514 -3.08737,3.24428 -8.26115,4.3184 -13.47458,2.75871 -17.23127,-5.1545 -14.51751,-38.31385 -0.002,-41.58436 5.42337,-1.22187 10.11758,0.0822 13.47481,3.78771 2.79281,3.08285 6.32948,8.61594 8.01348,9.86927 2.43367,1.81152 3.4427,4.55644 3.4726,7.61954 z"
|
|
132
|
+
fill="#faa51d"
|
|
133
|
+
stroke="#c48800"
|
|
134
|
+
stroke-width="2.76937"
|
|
135
|
+
id="path849" />
|
|
136
|
+
<path
|
|
137
|
+
d="m 309.44912,180.03723 c 0.0357,3.71925 -1.06263,4.87105 -3.09665,7.02623 -1.54464,1.15248 -3.65423,4.20432 -7.52506,8.42795 -3.1928,-4.51859 7.16534,-10.24719 7.16538,-15.45403 3e-5,-5.20677 -11.24178,-11.15804 -7.10093,-15.40079 4.04089,3.90677 5.50685,7.02323 7.26833,8.79959 1.94244,1.89138 3.24786,2.35145 3.28893,6.60105 z"
|
|
138
|
+
fill="#ffffff"
|
|
139
|
+
stroke="none"
|
|
140
|
+
stroke-width="0.0762813"
|
|
141
|
+
id="path851"
|
|
142
|
+
sodipodi:nodetypes="cccsccc" />
|
|
143
|
+
</g>
|
|
144
|
+
<path
|
|
145
|
+
d="m 307.38042,182.93473 c -0.6068,0 -2.16895,-1.44664 -2.16627,-2.61517 0.003,-1.14437 1.55947,-2.63159 2.16627,-2.63159 0.60681,0 1.42453,0.17805 1.47457,2.63159 0.0429,2.15491 -0.86776,2.61517 -1.47457,2.61517 z"
|
|
146
|
+
fill="#5e4a42"
|
|
147
|
+
fill-rule="evenodd"
|
|
148
|
+
stroke="none"
|
|
149
|
+
stroke-width="0.0852113"
|
|
150
|
+
id="path855" />
|
|
151
|
+
<g
|
|
152
|
+
style="stroke-width:1.10793"
|
|
153
|
+
id="g861">
|
|
154
|
+
<path
|
|
155
|
+
d="m 285.05286,198.9878 c -1.14657,3.61479 -14.64556,9.19625 -16.19807,6.69821 -1.55251,-2.49804 4.18358,-20.57026 6.88302,-21.68645"
|
|
156
|
+
fill="#faa51d"
|
|
157
|
+
fill-rule="nonzero"
|
|
158
|
+
stroke="#c48800"
|
|
159
|
+
stroke-width="2.88894"
|
|
160
|
+
id="path857" />
|
|
161
|
+
<path
|
|
162
|
+
d="m 272.64002,202.17072 c 0.44161,-2.67022 2.02488,-9.27921 4.6256,-11.53911 2.34855,-2.04064 3.16025,3.53472 6.03196,7.94488 -2.16162,2.93019 -11.23842,7.11641 -10.65756,3.59422 z"
|
|
163
|
+
fill="#ffffff"
|
|
164
|
+
fill-rule="evenodd"
|
|
165
|
+
stroke="none"
|
|
166
|
+
stroke-width="0.155299"
|
|
167
|
+
id="path859" />
|
|
168
|
+
</g>
|
|
169
|
+
<g
|
|
170
|
+
style="stroke-width:1.10793"
|
|
171
|
+
id="g867">
|
|
172
|
+
<path
|
|
173
|
+
d="m 275.73781,176.00992 c -2.69944,-1.11619 -8.43553,-19.18841 -6.88302,-21.68645 1.55251,-2.49804 15.0515,3.08342 16.19807,6.69821"
|
|
174
|
+
fill="#faa51d"
|
|
175
|
+
fill-rule="nonzero"
|
|
176
|
+
stroke="#c48800"
|
|
177
|
+
stroke-width="2.88894"
|
|
178
|
+
id="path863" />
|
|
179
|
+
<path
|
|
180
|
+
d="m 283.29758,161.43279 c -2.87171,4.41017 -3.68341,9.98552 -6.03196,7.94488 -2.60072,-2.2599 -4.18399,-8.86889 -4.6256,-11.53911 -0.58086,-3.52219 8.49594,0.66403 10.65756,3.59423 z"
|
|
181
|
+
fill="#ffffff"
|
|
182
|
+
fill-rule="evenodd"
|
|
183
|
+
stroke="none"
|
|
184
|
+
stroke-width="0.155299"
|
|
185
|
+
id="path865" />
|
|
186
|
+
</g>
|
|
187
|
+
<path
|
|
188
|
+
d="m 312.24529,190.75061 c -1.36513,-0.80412 -3.20713,-2.53672 -4.30111,-4.02341"
|
|
189
|
+
fill="none"
|
|
190
|
+
fill-rule="evenodd"
|
|
191
|
+
stroke="#000000"
|
|
192
|
+
stroke-width="1.36743"
|
|
193
|
+
id="path869" />
|
|
194
|
+
<path
|
|
195
|
+
d="m 310.3328,193.53618 c -1.38383,-0.89389 -3.45024,-3.78498 -4.22631,-5.82146"
|
|
196
|
+
fill="none"
|
|
197
|
+
fill-rule="evenodd"
|
|
198
|
+
stroke="#000000"
|
|
199
|
+
stroke-width="1.36743"
|
|
200
|
+
id="path871" />
|
|
201
|
+
<path
|
|
202
|
+
d="m 307.94418,173.98929 c 1.09398,-1.48669 2.93598,-3.21929 4.30111,-4.02341"
|
|
203
|
+
fill="none"
|
|
204
|
+
fill-rule="evenodd"
|
|
205
|
+
stroke="#000000"
|
|
206
|
+
stroke-width="1.36743"
|
|
207
|
+
id="path873" />
|
|
208
|
+
<path
|
|
209
|
+
d="m 306.10649,173.00177 c 0.77607,-2.03648 2.84248,-4.92758 4.22631,-5.82147"
|
|
210
|
+
fill="none"
|
|
211
|
+
fill-rule="evenodd"
|
|
212
|
+
stroke="#000000"
|
|
213
|
+
stroke-width="1.36743"
|
|
214
|
+
id="path875" />
|
|
215
|
+
<g
|
|
216
|
+
style="stroke-width:1.10792"
|
|
217
|
+
fill-rule="evenodd"
|
|
218
|
+
id="g881">
|
|
219
|
+
<path
|
|
220
|
+
d="m 300.59193,190.34949 c -1.24973,1.60082 -3.35451,2.04626 -4.70117,0.99495 -1.34666,-1.05131 -1.42525,-3.20129 -0.17553,-4.80211 1.24973,-1.60082 3.35451,-2.04626 4.70118,-0.99495 1.34666,1.05131 1.42525,3.20129 0.17552,4.80211 z"
|
|
221
|
+
fill="#ffffff"
|
|
222
|
+
stroke="#faa51d"
|
|
223
|
+
stroke-width="0.222615"
|
|
224
|
+
id="path877" />
|
|
225
|
+
<path
|
|
226
|
+
d="m 300.32878,189.93995 c -0.98113,1.25677 -2.63357,1.60648 -3.69081,0.78111 -1.05725,-0.82537 -1.11894,-2.51328 -0.13781,-3.77005 0.98113,-1.25677 2.63357,-1.60648 3.69081,-0.78111 1.05725,0.82537 1.11894,2.51328 0.13781,3.77005 z"
|
|
227
|
+
fill="#000000"
|
|
228
|
+
stroke="none"
|
|
229
|
+
stroke-width="0.16968"
|
|
230
|
+
id="path879" />
|
|
231
|
+
</g>
|
|
232
|
+
<g
|
|
233
|
+
style="stroke-width:1.10792"
|
|
234
|
+
fill-rule="evenodd"
|
|
235
|
+
id="g887">
|
|
236
|
+
<path
|
|
237
|
+
d="m 300.4164,175.18194 c -1.34666,1.05131 -3.45145,0.60586 -4.70118,-0.99495 -1.24973,-1.60082 -1.17114,-3.7508 0.17553,-4.80211 1.34666,-1.05131 3.45145,-0.60586 4.70117,0.99495 1.24973,1.60082 1.17114,3.7508 -0.17552,4.80211 z"
|
|
238
|
+
fill="#ffffff"
|
|
239
|
+
stroke="#faa51d"
|
|
240
|
+
stroke-width="0.222615"
|
|
241
|
+
id="path883" />
|
|
242
|
+
<path
|
|
243
|
+
d="m 300.19097,174.55943 c -1.05725,0.82537 -2.70968,0.47565 -3.69081,-0.78111 -0.98113,-1.25677 -0.91944,-2.94467 0.1378,-3.77004 1.05725,-0.82537 2.70968,-0.47565 3.69081,0.78111 0.98113,1.25677 0.91944,2.94467 -0.13781,3.77004 z"
|
|
244
|
+
fill="#000000"
|
|
245
|
+
stroke="none"
|
|
246
|
+
stroke-width="0.16968"
|
|
247
|
+
id="path885" />
|
|
248
|
+
</g>
|
|
249
|
+
</g>
|
|
250
|
+
</g>
|
|
251
|
+
</g>
|
|
252
|
+
</svg>
|