Index: /trunk/.gitignore
===================================================================
--- /trunk/.gitignore	(revision 48)
+++ /trunk/.gitignore	(revision 48)
@@ -0,0 +1,1 @@
+simplytranslate
Index: /trunk/Dockerfile
===================================================================
--- /trunk/Dockerfile	(revision 47)
+++ /trunk/Dockerfile	(revision 48)
@@ -2,5 +2,4 @@
 
 COPY . .
-WORKDIR web/
 RUN go mod download
 RUN go build -o simplytranslate
Index: /trunk/Makefile
===================================================================
--- /trunk/Makefile	(revision 48)
+++ /trunk/Makefile	(revision 48)
@@ -0,0 +1,12 @@
+PREFIX ?= /usr/local
+
+build:
+	go build -x -v ./cmd/simplytranslate
+install:
+	install -Dm0755 simplytranslate ${DESTDIR}${PREFIX}/bin/simplytranslate
+	mkdir -p ${DESTDIR}${PREFIX}/share/simplytranslate
+	cp -R static views ${DESTDIR}${PREFIX}/share/simplytranslate
+	@echo "Remember to launch the program with -s ${DESTDIR}${PREFIX}/share/simplytranslate/static -t ${DESTDIR}${PREFIX}/share/simplytranslate/views"
+uninstall:
+	rm -f ${DESTDIR}${PREFIX}/bin/simplytranslate
+	rm -rf ${DESTDIR}${PREFIX}/share/simplytranslate
Index: /trunk/engines/engine.go
===================================================================
--- /trunk/engines/engine.go	(revision 47)
+++ /trunk/engines/engine.go	(revision 48)
@@ -20,6 +20,6 @@
 var Engines = map[string]Engine{
 	"google": &GoogleTranslate{},
-	// "icibia": &ICIBA{},
-	// "libre":    &LibreTranslate{},
+	//	"iciba": &ICIBA{},
+	//	"libre":    &LibreTranslate{},
 	"reverso": &Reverso{},
 }
Index: unk/engines/go.mod
===================================================================
--- /trunk/engines/go.mod	(revision 47)
+++ 	(revision )
@@ -1,8 +1,0 @@
-module codeberg.org/SimpleWeb/SimplyTranslate/engines
-
-go 1.16
-
-require (
-	github.com/PuerkitoBio/goquery v1.8.1
-	golang.org/x/net v0.8.0 // indirect
-)
Index: unk/engines/go.sum
===================================================================
--- /trunk/engines/go.sum	(revision 47)
+++ 	(revision )
@@ -1,43 +1,0 @@
-github.com/PuerkitoBio/goquery v1.8.1 h1:uQxhNlArOIdbrH1tr0UXwdVFgDcZDrZVdcpygAcwmWM=
-github.com/PuerkitoBio/goquery v1.8.1/go.mod h1:Q8ICL1kNUJ2sXGoAhPGUdYDJvgQgHzJsnnd3H7Ho5jQ=
-github.com/andybalholm/cascadia v1.3.1 h1:nhxRkql1kdYCc8Snf7D5/D3spOX+dBgjA6u8x004T2c=
-github.com/andybalholm/cascadia v1.3.1/go.mod h1:R4bJ1UQfqADjvDa4P6HZHLh/3OxWWEqc0Sk8XGwHqvA=
-github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
-golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
-golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
-golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
-golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
-golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
-golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
-golang.org/x/net v0.0.0-20210916014120-12bc252f5db8/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
-golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
-golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
-golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
-golang.org/x/net v0.8.0 h1:Zrh2ngAOFYneWTAIAPethzeaQLuHwhuBkuV6ZiRnUaQ=
-golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc=
-golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
-golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
-golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
-golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
-golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U=
-golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
-golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
-golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
-golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
-golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
-golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
-golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
-golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
-golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
Index: /trunk/go.mod
===================================================================
--- /trunk/go.mod	(revision 48)
+++ /trunk/go.mod	(revision 48)
@@ -0,0 +1,30 @@
+module git.chaotic.ninja/yakumo.izuru/simplytranslate-mod
+
+go 1.20
+
+require (
+	codeberg.org/SimpleWeb/SimplyTranslate/engines v0.0.0-20230920112526-526a2c0ed1dd
+	github.com/PuerkitoBio/goquery v1.8.1
+	github.com/gofiber/fiber/v2 v2.49.2
+	github.com/gofiber/template/html/v2 v2.0.5
+)
+
+require (
+	github.com/andybalholm/brotli v1.0.5 // indirect
+	github.com/andybalholm/cascadia v1.3.1 // indirect
+	github.com/gofiber/template v1.8.2 // indirect
+	github.com/gofiber/utils v1.1.0 // indirect
+	github.com/google/uuid v1.3.1 // indirect
+	github.com/klauspost/compress v1.16.7 // indirect
+	github.com/mattn/go-colorable v0.1.13 // indirect
+	github.com/mattn/go-isatty v0.0.19 // indirect
+	github.com/mattn/go-runewidth v0.0.15 // indirect
+	github.com/rivo/uniseg v0.2.0 // indirect
+	github.com/valyala/bytebufferpool v1.0.0 // indirect
+	github.com/valyala/fasthttp v1.49.0 // indirect
+	github.com/valyala/tcplisten v1.0.0 // indirect
+	golang.org/x/net v0.8.0 // indirect
+	golang.org/x/sys v0.12.0 // indirect
+)
+
+replace codeberg.org/SimpleWeb/SimplyTranslate/engines v0.0.0 => ./engines
Index: /trunk/go.sum
===================================================================
--- /trunk/go.sum	(revision 48)
+++ /trunk/go.sum	(revision 48)
@@ -0,0 +1,77 @@
+codeberg.org/SimpleWeb/SimplyTranslate/engines v0.0.0-20230920112526-526a2c0ed1dd h1:7of7Y4s8COfEcCqTIclI+EgObPRdhX/H4o2cXFGBymY=
+codeberg.org/SimpleWeb/SimplyTranslate/engines v0.0.0-20230920112526-526a2c0ed1dd/go.mod h1:sEsqyflt+UgTVk1Z9hcwEexilsPOosOUPX6dlffsA1w=
+github.com/PuerkitoBio/goquery v1.8.1 h1:uQxhNlArOIdbrH1tr0UXwdVFgDcZDrZVdcpygAcwmWM=
+github.com/PuerkitoBio/goquery v1.8.1/go.mod h1:Q8ICL1kNUJ2sXGoAhPGUdYDJvgQgHzJsnnd3H7Ho5jQ=
+github.com/andybalholm/brotli v1.0.5 h1:8uQZIdzKmjc/iuPu7O2ioW48L81FgatrcpfFmiq/cCs=
+github.com/andybalholm/brotli v1.0.5/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig=
+github.com/andybalholm/cascadia v1.3.1 h1:nhxRkql1kdYCc8Snf7D5/D3spOX+dBgjA6u8x004T2c=
+github.com/andybalholm/cascadia v1.3.1/go.mod h1:R4bJ1UQfqADjvDa4P6HZHLh/3OxWWEqc0Sk8XGwHqvA=
+github.com/gofiber/fiber/v2 v2.49.2 h1:ONEN3/Vc+dUCxxDgZZwpqvhISgHqb+bu+isBiEyKEQs=
+github.com/gofiber/fiber/v2 v2.49.2/go.mod h1:gNsKnyrmfEWFpJxQAV0qvW6l70K1dZGno12oLtukcts=
+github.com/gofiber/template v1.8.2 h1:PIv9s/7Uq6m+Fm2MDNd20pAFFKt5wWs7ZBd8iV9pWwk=
+github.com/gofiber/template v1.8.2/go.mod h1:bs/2n0pSNPOkRa5VJ8zTIvedcI/lEYxzV3+YPXdBvq8=
+github.com/gofiber/template/html/v2 v2.0.5 h1:BKLJ6Qr940NjntbGmpO3zVa4nFNGDCi/IfUiDB9OC20=
+github.com/gofiber/template/html/v2 v2.0.5/go.mod h1:RCF14eLeQDCSUPp0IGc2wbSSDv6yt+V54XB/+Unz+LM=
+github.com/gofiber/utils v1.1.0 h1:vdEBpn7AzIUJRhe+CiTOJdUcTg4Q9RK+pEa0KPbLdrM=
+github.com/gofiber/utils v1.1.0/go.mod h1:poZpsnhBykfnY1Mc0KeEa6mSHrS3dV0+oBWyeQmb2e0=
+github.com/google/uuid v1.3.1 h1:KjJaJ9iWZ3jOFZIf1Lqf4laDRCasjl0BCmnEGxkdLb4=
+github.com/google/uuid v1.3.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
+github.com/klauspost/compress v1.16.7 h1:2mk3MPGNzKyxErAw8YaohYh69+pa4sIQSC0fPGCFR9I=
+github.com/klauspost/compress v1.16.7/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE=
+github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
+github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
+github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
+github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA=
+github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
+github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U=
+github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
+github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY=
+github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
+github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw=
+github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc=
+github.com/valyala/fasthttp v1.49.0 h1:9FdvCpmxB74LH4dPb7IJ1cOSsluR07XG3I1txXWwJpE=
+github.com/valyala/fasthttp v1.49.0/go.mod h1:k2zXd82h/7UZc3VOdJ2WaUqt1uZ/XpXAfE9i+HBC3lA=
+github.com/valyala/tcplisten v1.0.0 h1:rBHj/Xf+E1tRGZyWIWwJDiRY0zc1Js+CV5DqwacVSA8=
+github.com/valyala/tcplisten v1.0.0/go.mod h1:T0xQ8SeCZGxckz9qRXTfG43PvQ/mcWh7FwZEA7Ioqkc=
+github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
+golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
+golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
+golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
+golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
+golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
+golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
+golang.org/x/net v0.0.0-20210916014120-12bc252f5db8/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
+golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
+golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
+golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
+golang.org/x/net v0.8.0 h1:Zrh2ngAOFYneWTAIAPethzeaQLuHwhuBkuV6ZiRnUaQ=
+golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc=
+golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
+golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.12.0 h1:CM0HF96J0hcLAwsHPJZjfdNzs0gftsLfgKt57wWHJ0o=
+golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
+golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
+golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
+golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U=
+golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
+golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
+golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
+golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
+golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
+golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
+golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
+golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
+golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
+golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
+golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
Index: /trunk/legal_notice.txt
===================================================================
--- /trunk/legal_notice.txt	(revision 47)
+++ /trunk/legal_notice.txt	(revision 48)
@@ -4,2 +4,3 @@
 
 The creators of this repository assume no liability for the accuracy and timeliness of any information provided above. Trademark owner information was researched to the best of the author's knowledge at the time of curation and may be outdated or incorrect.
+
Index: /trunk/static/LICENSE
===================================================================
--- /trunk/static/LICENSE	(revision 48)
+++ /trunk/static/LICENSE	(revision 48)
@@ -0,0 +1,3 @@
+favicon.ico, favicon.svg, favicon128x128.png
+Created by "joelchrono12" (https://joelchrono12.ml/)
+Creative Commons Attribution 4.0 International License (CC BY 4.0)
Index: /trunk/static/favicon.svg
===================================================================
--- /trunk/static/favicon.svg	(revision 48)
+++ /trunk/static/favicon.svg	(revision 48)
@@ -0,0 +1,141 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   width="37.386002"
+   height="37.386002"
+   viewBox="0 0 37.386002 37.386002"
+   version="1.1"
+   id="svg5"
+   inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
+   sodipodi:docname="favicon.svg"
+   inkscape:export-filename="favicon128x128.png"
+   inkscape:export-xdpi="328.67917"
+   inkscape:export-ydpi="328.67917"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg">
+  <sodipodi:namedview
+     id="namedview7"
+     pagecolor="#505050"
+     bordercolor="#eeeeee"
+     borderopacity="1"
+     inkscape:pageshadow="0"
+     inkscape:pageopacity="0"
+     inkscape:pagecheckerboard="0"
+     inkscape:document-units="px"
+     showgrid="false"
+     units="px"
+     showguides="false"
+     inkscape:zoom="11.313709"
+     inkscape:cx="16.617009"
+     inkscape:cy="19.047688"
+     inkscape:window-width="1888"
+     inkscape:window-height="1060"
+     inkscape:window-x="32"
+     inkscape:window-y="0"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="layer1"
+     inkscape:showpageshadow="2"
+     inkscape:deskcolor="#d1d1d1" />
+  <defs
+     id="defs2">
+    <inkscape:path-effect
+       effect="fillet_chamfer"
+       id="path-effect35261"
+       is_visible="true"
+       lpeversion="1"
+       satellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1"
+       unit="px"
+       method="auto"
+       mode="F"
+       radius="1"
+       chamfer_steps="1"
+       flexible="false"
+       use_knot_distance="true"
+       apply_no_radius="true"
+       apply_with_radius="true"
+       only_selected="false"
+       hide_knots="false"
+       nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1" />
+    <style
+       id="style967">.a{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;}</style>
+  </defs>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-5.3069999,-5.307)">
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none"
+       x="22.98719"
+       y="13.623002"
+       id="text6936"><tspan
+         sodipodi:role="line"
+         id="tspan6934"
+         x="22.98719"
+         y="13.623002" /></text>
+    <path
+       class="a"
+       d="M 40.5,5.5 H 7.4999999 a 2,2 0 0 0 -2,2 v 33 a 2,2 0 0 0 2,2 H 40.5 a 2,2 0 0 0 2,-2 v -33 a 2,2 0 0 0 -2,-2 z"
+       id="path971"
+       style="fill:#478061;fill-opacity:1;stroke:#478061;stroke-width:0.386;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+    <path
+       id="path39667"
+       style="opacity:0.273315;fill:#000000;stroke:#000000;stroke-width:0.386016px;stroke-linecap:round;stroke-linejoin:round"
+       d="m 24.205078,9.390625 c -2.3698,0 -4.303381,0.683581 -5.800781,2.050781 -1.4974,1.3672 -2.246094,3.138 -2.246094,5.3125 0,2.089163 0.687318,3.790932 2.060547,5.105469 0.04323,0.04393 0.08616,0.08775 0.130859,0.130859 0.05736,0.05873 0.115809,0.116574 0.175782,0.173828 0.04157,0.04213 0.08207,0.08559 0.125,0.126954 0.04814,0.04922 0.09651,0.0983 0.146484,0.146484 0.05513,0.05645 0.110428,0.112881 0.167969,0.167969 0.04256,0.04324 0.08493,0.08647 0.128906,0.128906 0.05574,0.05712 0.11171,0.114191 0.169922,0.169922 0.04676,0.04752 0.0941,0.09408 0.142578,0.140625 0.04896,0.0499 0.09759,0.09961 0.148438,0.148437 0.04655,0.04747 0.09236,0.09607 0.140624,0.142579 0.04814,0.04922 0.09651,0.0983 0.146485,0.146484 0.05513,0.05645 0.110428,0.112881 0.167969,0.167969 0.04323,0.04393 0.08616,0.08776 0.130859,0.130859 0.05736,0.05873 0.115812,0.116569 0.175781,0.173828 0.04158,0.04212 0.08207,0.08559 0.125,0.126953 0.04813,0.04922 0.09652,0.0983 0.146485,0.146485 0.05513,0.05645 0.110424,0.112881 0.167968,0.167968 0.04315,0.04385 0.08624,0.08783 0.13086,0.13086 0.05513,0.05645 0.110427,0.112882 0.167969,0.167968 0.04676,0.04752 0.0941,0.09408 0.142578,0.140626 0.04896,0.0499 0.09759,0.0996 0.148437,0.148437 0.04655,0.04746 0.09236,0.09608 0.140625,0.142578 0.04813,0.04923 0.09652,0.09829 0.146484,0.146485 0.05513,0.05644 0.110425,0.112884 0.167969,0.167968 0.04323,0.04393 0.08616,0.08776 0.13086,0.13086 0.05736,0.05873 0.115808,0.116569 0.175781,0.173828 0.04157,0.04213 0.08207,0.08559 0.125,0.126953 0.04814,0.04923 0.09651,0.09829 0.146484,0.146484 0.05513,0.05645 0.110429,0.112884 0.167969,0.167969 0.04315,0.04386 0.08624,0.08783 0.130859,0.130859 0.05513,0.05645 0.110429,0.112885 0.167969,0.167969 0.04676,0.04752 0.0941,0.09408 0.142578,0.140625 0.04896,0.0499 0.09758,0.09961 0.148438,0.148438 0.04655,0.04747 0.09236,0.09608 0.140625,0.142578 0.04814,0.04923 0.09651,0.09829 0.146484,0.146484 0.05513,0.05645 0.110429,0.112884 0.167969,0.167969 0.04383,0.04454 0.08747,0.08912 0.132812,0.132812 0.05451,0.05577 0.109147,0.111575 0.166016,0.166016 0.04676,0.04752 0.0941,0.09408 0.142578,0.140625 0.04547,0.04634 0.08962,0.09325 0.136719,0.138672 0.05513,0.05645 0.110428,0.112881 0.167969,0.167969 0.04315,0.04385 0.08624,0.08783 0.130859,0.130859 0.05513,0.05645 0.110428,0.112884 0.167969,0.167969 0.04323,0.04393 0.08616,0.08775 0.130859,0.130859 0.05736,0.05873 0.115812,0.116573 0.175781,0.173828 0.04158,0.04213 0.08207,0.08559 0.125,0.126953 0.04813,0.04922 0.09652,0.0983 0.146485,0.146485 0.05513,0.05645 0.110425,0.112881 0.167968,0.167969 0.04383,0.04454 0.08747,0.08912 0.132813,0.132812 0.05452,0.05577 0.109144,0.111571 0.166016,0.166016 0.04676,0.04751 0.0941,0.09408 0.142578,0.140625 0.04547,0.04634 0.08962,0.09325 0.136719,0.138671 0.05513,0.05645 0.110428,0.112882 0.167968,0.167969 0.04315,0.04385 0.08624,0.08783 0.13086,0.13086 0.05513,0.05645 0.110424,0.112881 0.167968,0.167968 0.04323,0.04393 0.08616,0.08776 0.13086,0.13086 0.05736,0.05873 0.115808,0.116569 0.175781,0.173828 0.04157,0.04212 0.08207,0.08559 0.125,0.126953 0.04814,0.04923 0.09651,0.09829 0.146484,0.146484 0.05513,0.05645 0.110429,0.112885 0.167969,0.167969 0.04316,0.04385 0.08624,0.08783 0.13086,0.130859 0.05513,0.05645 0.110428,0.112882 0.167968,0.167969 0.04676,0.04752 0.0941,0.09408 0.142578,0.140625 0.04896,0.0499 0.09759,0.0996 0.148438,0.148438 0.04655,0.04746 0.09236,0.09608 0.140625,0.142578 0.04814,0.04923 0.09651,0.09829 0.146484,0.146484 0.05513,0.05645 0.110429,0.112885 0.167969,0.167969 0.04323,0.04393 0.08616,0.08775 0.130859,0.130859 0.05513,0.05644 0.110429,0.112885 0.167969,0.167969 0.04387,0.04458 0.08743,0.08908 0.132813,0.132813 0.04813,0.04923 0.09652,0.09829 0.146484,0.146484 0.05513,0.05644 0.110425,0.112884 0.167969,0.167969 0.04315,0.04386 0.08624,0.08783 0.130859,0.130859 0.05513,0.05644 0.110428,0.112884 0.167969,0.167969 0.04676,0.04752 0.0941,0.09408 0.142578,0.140625 0.04896,0.0499 0.09759,0.0996 0.148438,0.148437 0.04655,0.04747 0.09236,0.09607 0.140624,0.142579 0.04813,0.04922 0.09652,0.0983 0.146485,0.146484 0.0064,0.0066 0.01306,0.01296 0.01953,0.01953 -0.272715,0.603124 -0.665046,1.134975 -1.183594,1.591797 -0.987429,0.880344 -2.277941,1.353701 -3.863281,1.429688 -0.0097,-0.0094 -0.03885,-0.03921 -0.05273,-0.05273 h 0.0078 c 0,0 -0.11336,-0.110487 -0.152343,-0.148437 -3.03e-4,-2.95e-4 -0.113086,-0.110216 -0.152344,-0.148438 h 0.0059 c 0,0 -0.114471,-0.111621 -0.154297,-0.15039 h 0.0059 c 0,0 -0.11338,-0.110502 -0.152344,-0.148438 -3.06e-4,-2.97e-4 -0.114272,-0.111427 -0.154297,-0.150391 h 0.0078 c 0,0 -0.113391,-0.110516 -0.152344,-0.148437 -3.03e-4,-2.95e-4 -0.113112,-0.110246 -0.152344,-0.148438 h 0.0059 c 0,0 -0.114501,-0.111646 -0.154297,-0.15039 h 0.0059 c 0,0 -0.113405,-0.110528 -0.152344,-0.148438 -3.05e-4,-2.97e-4 -0.114302,-0.111453 -0.154297,-0.15039 h 0.0078 c 0,0 -0.11342,-0.110539 -0.152344,-0.148438 -3.05e-4,-2.97e-4 -0.11424,-0.111393 -0.154297,-0.15039 h 0.0078 c 0,0 -0.113431,-0.11055 -0.152344,-0.148438 -3.02e-4,-2.94e-4 -0.113152,-0.110281 -0.152344,-0.148438 h 0.0059 c 0,0 -0.114543,-0.111688 -0.154297,-0.15039 h 0.0059 c 0,0 -0.113445,-0.110568 -0.152344,-0.148438 -3.05e-4,-2.96e-4 -0.114343,-0.111494 -0.154297,-0.15039 h 0.0078 c 0,0 -0.113456,-0.110579 -0.152344,-0.148438 -3.02e-4,-2.94e-4 -0.113182,-0.110312 -0.152344,-0.148437 h 0.0059 c 0,0 -0.114569,-0.111715 -0.154297,-0.150391 h 0.0059 c 0,0 -0.113474,-0.110594 -0.152344,-0.148437 -3.03e-4,-2.97e-4 -0.114373,-0.111517 -0.154296,-0.150391 h 0.0078 c 0,0 -0.113486,-0.110605 -0.152344,-0.148438 -3.04e-4,-2.95e-4 -0.114311,-0.11146 -0.154296,-0.15039 h 0.0078 c 0,0 -0.113497,-0.110616 -0.152344,-0.148438 -3.01e-4,-2.93e-4 -0.113222,-0.110349 -0.152344,-0.148437 h 0.0059 c 0,0 -0.11461,-0.111752 -0.154297,-0.150391 h 0.0059 c 0,0 -0.113515,-0.110634 -0.152343,-0.148437 -3.05e-4,-2.96e-4 -0.114412,-0.111558 -0.154297,-0.150391 h 0.0078 c 0,0 -0.113526,-0.110645 -0.152344,-0.148437 -3.05e-4,-2.98e-4 -0.114276,-0.111428 -0.154296,-0.150391 h 0.0078 c 0,0 -0.113537,-0.110657 -0.152344,-0.148438 -3.01e-4,-2.93e-4 -0.113263,-0.11039 -0.152343,-0.148437 h 0.0059 c 0,0 -0.114652,-0.11179 -0.154297,-0.150391 h 0.0059 c 0,0 -0.113555,-0.110671 -0.152343,-0.148437 -3.04e-4,-2.96e-4 -0.11438,-0.111525 -0.154297,-0.150391 h 0.0078 c 0,0 -0.113567,-0.110682 -0.152343,-0.148437 -3.02e-4,-2.93e-4 -0.11329,-0.110412 -0.152344,-0.148438 h 0.0059 c 0,0 -0.114682,-0.111819 -0.154297,-0.15039 h 0.0059 c 0,0 -0.113578,-0.110697 -0.152344,-0.148438 -3.04e-4,-2.96e-4 -0.114479,-0.111626 -0.154297,-0.150391 h 0.0078 c 0,0 -0.113589,-0.110712 -0.152344,-0.148437 -0.0019,-0.0019 -0.952652,-0.929914 -0.982422,-0.958984 l -0.002,-0.002 c 0,0 -0.954475,-0.929885 -0.984375,-0.958985 l -0.002,-0.002 -0.986328,0.960938 -0.986328,0.960937 h 0.300781 l -0.152344,0.148437 h 0.304687 l -0.154296,0.150391 h 0.300781 l -0.152344,0.148438 h 0.304688 l -0.154297,0.15039 h 0.287109 c 2.47e-4,0.0039 -2.51e-4,0.0078 0,0.01172 l -0.138672,0.136719 h 0.152344 c 0.0035,0.0459 0.0076,0.09117 0.01172,0.136719 l -0.01367,0.01172 h 0.01367 c 0.121674,1.328298 0.486816,2.512221 1.103515,3.546875 0.328886,0.53724 0.711782,1.019763 1.144532,1.453125 0.04143,0.04384 0.08647,0.08412 0.128906,0.126953 0.05524,0.05893 0.112876,0.114747 0.169922,0.171875 0.04521,0.04785 0.09421,0.09202 0.140625,0.138672 0.04422,0.04695 0.09135,0.09092 0.136718,0.136719 0.05533,0.05902 0.114735,0.114664 0.171876,0.171875 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05524,0.05893 0.112874,0.11475 0.169921,0.171875 0.04522,0.04785 0.09421,0.09202 0.140626,0.138672 0.04422,0.04695 0.09135,0.09092 0.136718,0.136719 0.05533,0.05902 0.114736,0.114662 0.171875,0.171875 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05533,0.05902 0.114736,0.114663 0.171875,0.171875 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05524,0.05893 0.112875,0.11475 0.169922,0.171875 0.04521,0.04785 0.09421,0.09202 0.140625,0.138672 0.04422,0.04695 0.09135,0.09092 0.136719,0.136719 0.05533,0.05902 0.114736,0.114662 0.171875,0.171875 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05524,0.05893 0.112874,0.114749 0.169922,0.171875 0.04142,0.04384 0.08648,0.08412 0.128906,0.126953 0.05082,0.05421 0.103901,0.105516 0.15625,0.158203 0.05225,0.05556 0.108247,0.108156 0.16211,0.162109 0.04143,0.04385 0.08647,0.08411 0.128906,0.126953 0.05533,0.05902 0.114738,0.114663 0.171875,0.171876 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05524,0.05893 0.112877,0.114749 0.169922,0.171875 0.04522,0.04785 0.09421,0.09202 0.140625,0.138672 0.04422,0.04695 0.09135,0.09092 0.136719,0.136718 0.05533,0.05902 0.114736,0.114661 0.171875,0.171875 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05524,0.05893 0.112874,0.114749 0.169922,0.171875 0.04143,0.04384 0.08647,0.08412 0.128906,0.126953 0.05524,0.05893 0.112876,0.114748 0.169922,0.171876 0.04521,0.04785 0.09421,0.09202 0.140625,0.138671 0.04422,0.04695 0.09135,0.09092 0.136719,0.136719 0.05533,0.05902 0.114736,0.114663 0.171875,0.171875 0.04114,0.04352 0.08483,0.08442 0.126953,0.126953 0.05524,0.05893 0.112874,0.114747 0.169922,0.171875 0.04522,0.04785 0.09421,0.09202 0.140625,0.138672 0.04422,0.04695 0.09135,0.09092 0.136718,0.136719 0.05533,0.05902 0.114735,0.114663 0.171875,0.171875 0.04114,0.04352 0.08482,0.08442 0.126954,0.126953 0.0503,0.05366 0.103978,0.104462 0.15625,0.15625 H 40.5 a 2,2 0 0 0 2,-2 V 24.130859 c -0.03302,-0.03282 -0.06654,-0.06495 -0.09961,-0.09766 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.0493,-0.05097 -0.100178,-0.0991 -0.150391,-0.148437 -0.03512,-0.03631 -0.07184,-0.06999 -0.107422,-0.105469 -0.01405,-0.01474 -0.02683,-0.03026 -0.04102,-0.04492 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07407 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.03912,-0.04044 -0.07945,-0.07777 -0.119141,-0.117187 -0.0099,-0.01036 -0.01931,-0.02093 -0.0293,-0.03125 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.07429,-0.0725 -0.111329,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126954 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113282,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.03912,-0.04045 -0.07945,-0.07777 -0.119141,-0.117187 -0.0099,-0.01036 -0.01931,-0.02093 -0.0293,-0.03125 -0.04286,-0.04431 -0.08731,-0.08583 -0.130859,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08602,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126954 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08583 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109376 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.04431 -0.08732,-0.08583 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08602,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.07429,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111329 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.03757,-0.03885 -0.07713,-0.07539 -0.115234,-0.113281 -0.01178,-0.01233 -0.02328,-0.02483 -0.03516,-0.03711 -0.03912,-0.04044 -0.07945,-0.07777 -0.11914,-0.117188 -0.0099,-0.01036 -0.01931,-0.02092 -0.0293,-0.03125 -0.04285,-0.0443 -0.08732,-0.08584 -0.130859,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07407 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111329,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.0493,-0.05097 -0.100178,-0.0991 -0.150391,-0.148437 -0.03512,-0.03631 -0.07184,-0.06999 -0.107421,-0.105469 -0.01405,-0.01474 -0.02683,-0.03026 -0.04102,-0.04492 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04253,-0.04397 -0.0857,-0.08615 -0.128907,-0.128906 -0.007,-0.0073 -0.01441,-0.01417 -0.02148,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113282,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08583 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02149 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.04431 -0.08732,-0.08583 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02149 -0.03653,-0.03777 -0.0743,-0.07251 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02149 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.03912,-0.04045 -0.07945,-0.07777 -0.11914,-0.117188 -0.0099,-0.01036 -0.01931,-0.02093 -0.0293,-0.03125 -0.04285,-0.04431 -0.08732,-0.08583 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02149 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109374 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07407 -0.113281,-0.111329 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02149 -0.04285,-0.0443 -0.08732,-0.08584 -0.130859,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.0443 -0.08732,-0.08584 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07407 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08584 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111329,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04253,-0.04397 -0.0857,-0.08615 -0.128906,-0.128906 -0.007,-0.0073 -0.01441,-0.01417 -0.02148,-0.02149 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.04431 -0.08732,-0.08584 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -1.5363,-1.588302 -3.5161,-2.382623 -5.9375,-2.382813 z" />
+    <g
+       id="g15133"
+       transform="matrix(0.64227027,0,0,0.64227027,-15.275186,-45.367611)">
+      <polyline
+         class="st0"
+         points="63.8,101 61.2,93 58.5,101   "
+         id="polyline15129" />
+      <line
+         class="st0"
+         x1="59.400002"
+         y1="98.300003"
+         x2="62.900002"
+         y2="98.300003"
+         id="line15131" />
+    </g>
+    <g
+       id="path33996" />
+    <g
+       id="path34177" />
+    <g
+       id="g17153"
+       transform="matrix(0.64227027,0,0,0.64227027,8.7500022,8.5520441)">
+      <path
+         style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 19.792122,31.555225 h 7.904173"
+         id="path16798" />
+      <path
+         style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 26.1674,31.596349 c 0,0 -0.879776,4.573392 -5.113091,6.866763"
+         id="path16866" />
+      <path
+         style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 26.262905,38.481686 C 25.267597,38.031795 22.0344,34.63603 21.648922,33.22501"
+         id="path16901"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 23.663218,31.460063 V 30.433904"
+         id="path16936" />
+    </g>
+    <path
+       id="path35934"
+       style="fill:#ffffff;stroke:#ffffff;stroke-width:0.386016;stroke-linecap:round;stroke-linejoin:round"
+       inkscape:transform-center-y="0.32012888"
+       d="m 33.292005,17.78074 h -1.97289 -1.972892 l 0.986446,0.960387 0.986446,0.960385 0.986445,-0.960385 z M 18.500601,30.202889 h -1.97289 -1.972892 l 0.986446,-0.960386 0.986446,-0.960386 0.986445,0.960386 z m 11.817758,1.023673 q 0,-2.382812 -1.367187,-3.75 -1.347656,-1.367187 -5.058594,-2.617187 -3.710937,-1.25 -5.449219,-2.792969 -2.285156,-2.011719 -2.285156,-5.3125 0,-3.261718 2.246094,-5.3125 2.246094,-2.050781 5.800781,-2.050781 3.632813,0 5.9375,2.382813 2.304688,2.382812 2.304688,6.132812 h -2.246094 q 0,-2.871094 -1.621094,-4.628906 Q 26.978516,11.5 24.205078,11.5 q -2.695312,0 -4.257812,1.464844 -1.542969,1.445312 -1.542969,3.75 0,2.148437 1.464844,3.515625 1.464843,1.367187 4.667968,2.441406 3.203125,1.054687 4.84375,2.207031 1.640625,1.132813 2.421876,2.675781 0.781249,1.542969 0.781249,3.632813 0,3.339844 -2.265625,5.390625 -2.246093,2.03125 -5.957031,2.03125 -2.5,0 -4.570312,-1.015625 -2.050782,-1.035156 -3.222657,-2.949219 -1.152343,-1.933594 -1.152343,-4.550781 h 2.226561 q 0,3.007812 1.816407,4.726562 1.816407,1.71875 4.902344,1.71875 2.695313,0 4.316406,-1.445312 1.640625,-1.445313 1.640625,-3.867188 z" />
+  </g>
+  <style
+     type="text/css"
+     id="style14976">&#10;	.st0{fill:none;stroke:#FFFFFF;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st1{fill:#FFFFFF;}&#10;	.st2{fill:none;stroke:#FFFFFF;stroke-width:0.9976;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st3{fill:none;stroke:#FFFFFF;stroke-width:0.9965;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st4{fill:none;stroke:#FFFFFF;stroke-width:0.8662;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;</style>
+  <style
+     type="text/css"
+     id="style44917">&#10;	.st0{fill:none;stroke:#FFFFFF;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st1{fill:#FFFFFF;}&#10;	.st2{fill:none;stroke:#FFFFFF;stroke-width:0.9976;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st3{fill:none;stroke:#FFFFFF;stroke-width:0.9965;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st4{fill:none;stroke:#FFFFFF;stroke-width:0.8662;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;</style>
+</svg>
Index: /trunk/static/script.js
===================================================================
--- /trunk/static/script.js	(revision 48)
+++ /trunk/static/script.js	(revision 48)
@@ -0,0 +1,18 @@
+// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-3.0
+// this code submits the translation form when pressing Ctrl/Meta+Enter while focussed on the input text field
+document.getElementById("input").addEventListener("keydown", function (event) {
+    if (event.keyCode === 13 && (event.metaKey || event.ctrlKey)) {
+        document.getElementById("translation-form").submit();
+    }
+});
+// @license-end
+
+// Auto resize textarea to fit words inside it without need to scroll -- Thanks to: https://stackoverflow.com/a/25621277
+var input = document.getElementById("input");
+var output = document.getElementById("output");
+input.setAttribute("style", "height:" + output.scrollHeight + "px;overflow-y:scroll;");
+output.setAttribute("style", "height:" + output.scrollHeight + "px;overflow-y:scroll;");
+input.addEventListener("input", function (e) {
+    this.style.height = 150 + "px";
+    this.style.height = this.scrollHeight + "px";
+});
Index: /trunk/static/style.css
===================================================================
--- /trunk/static/style.css	(revision 48)
+++ /trunk/static/style.css	(revision 48)
@@ -0,0 +1,188 @@
+.center {
+    text-align: center;
+}
+
+.wrap {
+    display: flex;
+    flex-wrap: wrap;
+    justify-content: center;
+}
+
+.wrap.languages {
+    flex-wrap: nowrap;
+    margin-bottom: 20px;
+}
+
+#could_not_switch_languages_text {
+    color: red;
+}
+
+.item {
+    width: 100%;
+    height: 150px;
+}
+
+.item-wrapper {
+    display: flex;
+    flex-wrap: wrap;
+    justify-content: center;
+    width: 450px;
+    margin: 5px 10px;
+    gap: 10px;
+}
+
+
+.language,
+.switch_languages {
+    display: flex;
+}
+
+.language {
+    margin: 0px 10px;
+}
+
+.switch_languages {
+    margin: 0px 5px;
+}
+
+#switchbutton {
+    white-space: nowrap;
+}
+
+button {
+    font-size: 1rem;
+    padding: 4px 10px;
+    border: 2px solid #888888;
+}
+
+input,
+select,
+textarea {
+    width: 100%;
+    font-size: 1rem;
+    padding: 4px;
+    border: 2px solid #888888;
+}
+
+textarea {
+    resize: vertical;
+    height: 5rem;
+    font-family: sans-serif;
+
+    /* Stretch to form width */
+    width: 100%;
+}
+
+input:focus,
+select:focus,
+textarea:focus,
+button:focus {
+    border-color: #478061;
+    outline: 1px solid #478061;
+}
+
+
+body {
+    justify-content: center;
+    font-family: sans-serif;
+}
+
+#definitions_and_translations {
+    display: grid;
+    margin: auto;
+    width: 1100px;
+    gap: 10px;
+    grid-template-areas: "definitions translations";
+
+}
+
+.def_type {
+    color: #007979;
+    text-transform: capitalize;
+}
+
+.syn {
+    color: #804700;
+}
+
+.syn_type {
+    color: #007979;
+}
+
+.use_in_sentence {
+    color: #009902;
+}
+
+.definitions li:not(:last-child) {
+    margin-bottom: 1rem;
+}
+
+@media screen and (max-width: 1200px) {
+    #definitions_and_translations {
+        display: grid;
+        width: 90vw;
+        grid-template-areas:
+            "definitions definitions"
+            "translations translations";
+    }
+}
+
+
+div.definitions {
+    grid-area: definitions;
+}
+
+div.translations {
+    grid-area: translations;
+}
+
+a {
+    text-decoration: none;
+}
+
+@media screen and (prefers-color-scheme: dark) {
+    body {
+        background-color: #212529;
+        color: #f8f9fa;
+    }
+
+    #could_not_switch_languages_text {
+        color: #F13333;
+    }
+
+    a:visited {
+        color: #9759f6;
+        text-decoration: none;
+    }
+
+    a {
+        color: #599bf6;
+        text-decoration: none;
+    }
+
+    input,
+    select,
+    button,
+    textarea {
+        background-color: #131618;
+        border-color: #495057;
+        color: #f8f9fa;
+    }
+
+    .def_type {
+        color: cyan;
+        text-transform: capitalize;
+    }
+
+    .syn {
+        color: burlywood;
+    }
+
+    .syn_type {
+        color: cyan;
+    }
+
+    .use_in_sentence {
+        color: yellow;
+    }
+}
Index: /trunk/views/index.html
===================================================================
--- /trunk/views/index.html	(revision 48)
+++ /trunk/views/index.html	(revision 48)
@@ -0,0 +1,151 @@
+<!doctype html>
+<html lang="en">
+
+<head>
+    <title>SimplyTranslate</title>
+    <link rel="shortcut icon" href="/static/favicon.ico">
+    <meta name="description" content="Experience simple and private Google translations">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta charset="UTF-8">
+    <meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'">
+    <meta name="referrer" content="no-referrer">
+    <link rel="stylesheet" href="/static/style.css">
+</head>
+
+<body>
+    <header class="center">
+        <h1>SimplyTranslate</h1>
+    </header>
+
+    <form action="/?engine={{.Engine}}" method="POST" id="translation-form">
+
+        <div class="center">
+            Translation Engine
+            {{$i := 0}}
+            {{ range $k, $v := .enginesNames }}
+            <a {{ if eq $k $.Engine }}style="text-decoration:underline" {{end}} href="/?engine={{ $k }}">{{ $v }}</a>
+            {{$i = (inc $i)}}
+            {{if eq $i (len $.enginesNames)}}{{else}}|{{end}}
+            {{end}}
+        </div>
+        <br>
+
+        <div class="wrap languages">
+            <div class="language">
+                <select name="from" aria-label="Source language">
+                    {{range $code, $name := .SourceLanguages}}
+                    {{if and (eq $code "auto") $.SourceLanguage}}
+                    <option value="{{ $code }}" {{if eq $code $.From}}selected{{end}}>{{ $name }} ({{index
+                        $.SourceLanguages $.SourceLanguage}})</option>
+                    {{else }}
+                    <option value="{{ $code }}" {{if eq $code $.From}}selected{{end}}>{{ $name }}</option>
+                    {{end}}
+                    {{end}}
+                </select>
+            </div>
+
+            <div class="switch_languages">
+                <button id="switchbutton" aria-label="Switch languages"
+                    formaction="/switchlanguages/?engine={{ .Engine }}" type="submit">&lt;-&gt;</button>
+            </div>
+
+            <div class="language">
+                <select name="to" aria-label="Target language">
+                    {{range $code, $name := .TargetLanguages}}
+                    <option value="{{ $code }}" {{if eq $code $.To}}selected{{end}}>{{ $name }}</option>
+                    {{end}}
+                </select>
+            </div>
+        </div>
+
+        <div class="wrap">
+            <div class="item-wrapper">
+                <textarea autofocus class="item" id="input" name="text" dir="auto"
+                    placeholder="Enter Text Here">{{ .OriginalText }}</textarea>
+                {{if .TtsFrom}}
+                <audio controls>
+                    <source type="audio/mpeg" src="{{ .TtsFrom }}">
+                </audio>
+                {{end}}
+            </div>
+
+            <div class="item-wrapper">
+                <textarea id="output" class="translation item" dir="auto" placeholder="Translation"
+                    readonly>{{.Translation.TranslatedText}}</textarea>
+                {{if .TtsTo}}
+                <audio controls>
+                    <source type="audio/mpeg" src="{{ .TtsTo }}">
+                </audio>
+                {{end}}
+            </div>
+        </div>
+
+        <br>
+
+        <div class="center">
+            <button type="submit">Translate with {{ index .enginesNames .Engine }}!</button>
+        </div>
+
+        <br>
+
+        <div id="definitions_and_translations">
+            {{ if .Translation.Definitions }}
+            <div class="definitions">
+                {{ range $type, $definitions :=.Translation.Definitions }}
+                <span class="def_type">{{ $type }}</span>
+                <ol>
+                    {{ range $definition_item := $definitions }}
+                    <li>
+                        {{ $definition_item.definition }}
+                        <br>
+                        {{with $definition_item.use_in_sentence}}
+                        <span class="use_in_sentence">"{{$definition_item.use_in_sentence}}"</span>
+                        <br>
+                        {{end}}
+                        {{with $definition_item.synonyms}}
+                        {{ range $synonym_type, $_ := $definition_item.synonyms }}
+                        <span class="syn">
+                            {{if $synonym_type }}
+                            <br>
+                            <span class="syn_type">{{$synonym_type}}: </span>{{end}}{{ range $index, $element := index
+                            $definition_item.synonyms $synonym_type}}{{if $index}}, {{end}}{{$element}}{{end}}
+                        </span>
+                        {{end}}
+                        {{end}}
+                    </li>
+                    {{end}}
+                </ol>
+                {{end}}
+            </div>
+            {{ end}}
+
+            {{ if .Translation.Translations }}
+            <div class="translations">
+                {{ range $def_type, $translations := .Translation.Translations }}
+                <span class="def_type">{{ $def_type }}</span>
+                <ul>
+                    {{ range $word, $word_translations := $translations }}
+                    <li>
+                        <span class="syn_type">{{$word}}:</span>
+                        <span class="syn">{{ range $index, $element := $word_translations.words}}{{if $index}},
+                            {{end}}{{$element}}{{end}}</span>
+                        <span class="syn_type">{{$word_translations.frequency}}</span>
+                    </li>
+                    <br>
+                    {{end}}
+                </ul>
+                {{end}}
+            </div>
+            {{end}}
+        </div>
+
+    </form>
+    <br><br><br><br><br>
+    <footer class="center">
+        <a href="https://codeberg.org/ManeraKai/simplytranslate">Source Code</a>
+    </footer>
+
+    <script src="/static/script.js"></script>
+</body>
+
+</html>
Index: unk/web/go.mod
===================================================================
--- /trunk/web/go.mod	(revision 47)
+++ 	(revision )
@@ -1,11 +1,0 @@
-module codeberg.org/SimpleWeb/SimplyTranslate/web
-
-go 1.16
-
-require (
-	codeberg.org/SimpleWeb/SimplyTranslate/engines v0.0.0
-	github.com/gofiber/fiber/v2 v2.49.0 // indirect
-	github.com/gofiber/template/html/v2 v2.0.5
-)
-
-replace codeberg.org/SimpleWeb/SimplyTranslate/engines v0.0.0 => ../engines
Index: unk/web/go.sum
===================================================================
--- /trunk/web/go.sum	(revision 47)
+++ 	(revision )
@@ -1,85 +1,0 @@
-github.com/PuerkitoBio/goquery v1.8.1 h1:uQxhNlArOIdbrH1tr0UXwdVFgDcZDrZVdcpygAcwmWM=
-github.com/PuerkitoBio/goquery v1.8.1/go.mod h1:Q8ICL1kNUJ2sXGoAhPGUdYDJvgQgHzJsnnd3H7Ho5jQ=
-github.com/andybalholm/brotli v1.0.5 h1:8uQZIdzKmjc/iuPu7O2ioW48L81FgatrcpfFmiq/cCs=
-github.com/andybalholm/brotli v1.0.5/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig=
-github.com/andybalholm/cascadia v1.3.1 h1:nhxRkql1kdYCc8Snf7D5/D3spOX+dBgjA6u8x004T2c=
-github.com/andybalholm/cascadia v1.3.1/go.mod h1:R4bJ1UQfqADjvDa4P6HZHLh/3OxWWEqc0Sk8XGwHqvA=
-github.com/gofiber/fiber/v2 v2.49.0 h1:xBVG2c66GDcWfww56xHvMn52Q0XX7UrSvjj6MD8/5EE=
-github.com/gofiber/fiber/v2 v2.49.0/go.mod h1:oxpt7wQaEYgdDmq7nMxCGhilYicBLFnZ+jQSJcQDlSE=
-github.com/gofiber/template v1.8.2 h1:PIv9s/7Uq6m+Fm2MDNd20pAFFKt5wWs7ZBd8iV9pWwk=
-github.com/gofiber/template v1.8.2/go.mod h1:bs/2n0pSNPOkRa5VJ8zTIvedcI/lEYxzV3+YPXdBvq8=
-github.com/gofiber/template/html/v2 v2.0.5 h1:BKLJ6Qr940NjntbGmpO3zVa4nFNGDCi/IfUiDB9OC20=
-github.com/gofiber/template/html/v2 v2.0.5/go.mod h1:RCF14eLeQDCSUPp0IGc2wbSSDv6yt+V54XB/+Unz+LM=
-github.com/gofiber/utils v1.1.0 h1:vdEBpn7AzIUJRhe+CiTOJdUcTg4Q9RK+pEa0KPbLdrM=
-github.com/gofiber/utils v1.1.0/go.mod h1:poZpsnhBykfnY1Mc0KeEa6mSHrS3dV0+oBWyeQmb2e0=
-github.com/google/uuid v1.3.1 h1:KjJaJ9iWZ3jOFZIf1Lqf4laDRCasjl0BCmnEGxkdLb4=
-github.com/google/uuid v1.3.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
-github.com/klauspost/compress v1.16.3/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE=
-github.com/klauspost/compress v1.16.7 h1:2mk3MPGNzKyxErAw8YaohYh69+pa4sIQSC0fPGCFR9I=
-github.com/klauspost/compress v1.16.7/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE=
-github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
-github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
-github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
-github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA=
-github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
-github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U=
-github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
-github.com/philhofer/fwd v1.1.2/go.mod h1:qkPdfjR2SIEbspLqpe1tO4n5yICnr2DY7mqEx2tUTP0=
-github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY=
-github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
-github.com/tinylib/msgp v1.1.8/go.mod h1:qkpG+2ldGg4xRFmx+jfTvZPxfGFhi64BcnL9vkCm/Tw=
-github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw=
-github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc=
-github.com/valyala/fasthttp v1.48.0 h1:oJWvHb9BIZToTQS3MuQ2R3bJZiNSa2KiNdeI8A+79Tc=
-github.com/valyala/fasthttp v1.48.0/go.mod h1:k2zXd82h/7UZc3VOdJ2WaUqt1uZ/XpXAfE9i+HBC3lA=
-github.com/valyala/tcplisten v1.0.0 h1:rBHj/Xf+E1tRGZyWIWwJDiRY0zc1Js+CV5DqwacVSA8=
-github.com/valyala/tcplisten v1.0.0/go.mod h1:T0xQ8SeCZGxckz9qRXTfG43PvQ/mcWh7FwZEA7Ioqkc=
-github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
-golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
-golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
-golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
-golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
-golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
-golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
-golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
-golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
-golang.org/x/net v0.0.0-20210916014120-12bc252f5db8/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
-golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
-golang.org/x/net v0.3.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE=
-golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
-golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
-golang.org/x/net v0.8.0 h1:Zrh2ngAOFYneWTAIAPethzeaQLuHwhuBkuV6ZiRnUaQ=
-golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc=
-golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
-golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.11.0 h1:eG7RXZHdqOJ1i+0lgLgCpSXAp6M3LYlAo6osgSi0xOM=
-golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
-golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
-golang.org/x/term v0.3.0/go.mod h1:q750SLmJuPmVoN1blW3UFBPREJfb1KmY3vwxfr+nFDA=
-golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
-golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U=
-golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
-golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
-golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
-golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
-golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
-golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
-golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
-golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
-golang.org/x/tools v0.4.0/go.mod h1:UE5sM2OK9E/d67R0ANs2xJizIymRP5gJU295PvKXxjQ=
-golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
-golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
Index: unk/web/main.go
===================================================================
--- /trunk/web/main.go	(revision 47)
+++ 	(revision )
@@ -1,230 +1,0 @@
-package main
-
-import (
-	"bytes"
-	"net/http"
-	"net/url"
-	"os"
-	"time"
-
-	"codeberg.org/SimpleWeb/SimplyTranslate/engines"
-	"github.com/gofiber/fiber/v2"
-	"github.com/gofiber/template/html/v2"
-)
-
-func main() {
-	engine := html.New("./views", ".html")
-	engine.AddFunc("inc", func(i int) int { return i + 1 })
-
-	app := fiber.New(fiber.Config{
-		Views: engine,
-	})
-
-	app.All("/", func(c *fiber.Ctx) error {
-		engine := c.Cookies("engine")
-		if c.Query("engine") != "" {
-			engine = c.Query("engine")
-		}
-		if _, ok := engines.Engines[engine]; !ok {
-			engine = "google"
-		}
-		targetLanguages, err := engines.Engines[engine].TargetLanguages()
-		if err != nil {
-			return c.SendStatus(500)
-		}
-		sourceLanguages, err := engines.Engines[engine].SourceLanguages()
-		if err != nil {
-			return c.SendStatus(500)
-		}
-		originalText := ""
-		translatedText := ""
-		from := ""
-		to := ""
-		ttsFrom := ""
-		ttsTo := ""
-		sourceLanguage := ""
-
-		var translation engines.TranslationResult
-		if c.Method() == "POST" {
-			from = c.FormValue("from")
-			to = c.FormValue("to")
-			originalText = c.FormValue("text")
-			if result, err := engines.Engines[engine].Translate(originalText, from, to); err != nil {
-				return c.SendStatus(500)
-			} else {
-				translatedText = result.TranslatedText
-				translation = result
-				sourceLanguage = result.SourceLanguage
-			}
-
-			ttsFromURL, _ := url.Parse("api/tts")
-			fromQuery := url.Values{}
-			fromQuery.Add("lang", from)
-			fromQuery.Add("text", originalText)
-			ttsFromURL.RawQuery = fromQuery.Encode()
-			ttsFrom = ttsFromURL.String()
-
-			ttsToURL, _ := url.Parse("api/tts")
-			toQuery := url.Values{}
-			toQuery.Add("lang", to)
-			toQuery.Add("text", translatedText)
-			ttsToURL.RawQuery = toQuery.Encode()
-			ttsTo = ttsToURL.String()
-
-			fromCookie := new(fiber.Cookie)
-			fromCookie.Name = "from"
-			fromCookie.Value = from
-			fromCookie.Expires = time.Now().Add(time.Hour * 24 * 365)
-			c.Cookie(fromCookie)
-
-			toCookie := new(fiber.Cookie)
-			toCookie.Name = "to"
-			toCookie.Value = to
-			toCookie.Expires = time.Now().Add(time.Hour * 24 * 365)
-			c.Cookie(toCookie)
-
-			engineCookie := new(fiber.Cookie)
-			engineCookie.Name = "engine"
-			engineCookie.Value = engine
-			engineCookie.Expires = time.Now().Add(time.Hour * 24 * 365)
-			c.Cookie(engineCookie)
-		} else if c.Method() == "GET" {
-			from = c.Cookies("from")
-			to = c.Cookies("to")
-		} else {
-			return c.SendStatus(400)
-		}
-
-		if from == "" {
-			from = "auto"
-		}
-
-		enginesNames := map[string]string{}
-		for k, v := range engines.Engines {
-			enginesNames[k] = v.DisplayName()
-		}
-
-		return c.Render("index", fiber.Map{
-			"Engine":          engine,
-			"enginesNames":    enginesNames,
-			"SourceLanguages": sourceLanguages,
-			"TargetLanguages": targetLanguages,
-			"OriginalText":    originalText,
-			"Translation":     translation,
-			"From":            from,
-			"To":              to,
-			"TtsFrom":         ttsFrom,
-			"TtsTo":           ttsTo,
-			"SourceLanguage":  sourceLanguage,
-		})
-	})
-
-	app.All("/api/translate", func(c *fiber.Ctx) error {
-		from := ""
-		to := ""
-		engine := ""
-		text := ""
-		if c.Method() == "GET" {
-			engine = c.Query("engine")
-			text = c.Query("text")
-			from = c.Query("from")
-			to = c.Query("to")
-		} else if c.Method() == "POST" {
-			engine = c.FormValue("engine")
-			text = c.FormValue("text")
-			from = c.FormValue("from")
-			to = c.FormValue("to")
-		} else {
-			return c.SendStatus(400)
-		}
-		if _, ok := engines.Engines[engine]; !ok || engine == "" {
-			engine = "google"
-		}
-		if to == "" {
-			return c.SendStatus(400)
-		}
-		if result, err := engines.Engines[engine].Translate(text, from, to); err != nil {
-			return c.SendStatus(500)
-		} else {
-			return c.JSON(result)
-		}
-	})
-
-	app.Get("/api/source_languages", func(c *fiber.Ctx) error {
-		engine := c.Query("engine")
-		if _, ok := engines.Engines[engine]; !ok || engine == "" {
-			engine = "google"
-		}
-		if result, err := engines.Engines[engine].SourceLanguages(); err != nil {
-			return c.SendStatus(500)
-		} else {
-			return c.JSON(result)
-		}
-	})
-
-	app.Get("/api/target_languages", func(c *fiber.Ctx) error {
-		engine := c.Query("engine")
-		if _, ok := engines.Engines[engine]; !ok || engine == "" {
-			engine = "google"
-		}
-		if result, err := engines.Engines[engine].TargetLanguages(); err != nil {
-			return c.SendStatus(500)
-		} else {
-			return c.JSON(result)
-		}
-	})
-
-	app.Get("/api/tts", func(c *fiber.Ctx) error {
-		engine := c.Query("engine")
-		if _, ok := engines.Engines[engine]; !ok || engine == "" {
-			engine = "google"
-		}
-
-		text := c.Query("text")
-		if text == "" {
-			return c.SendStatus(400)
-		}
-
-		lang := c.Query("lang")
-
-		if url, err := engines.Engines[engine].Tts(text, lang); err != nil {
-			return c.SendStatus(500)
-		} else {
-			if response, err := http.Get(url); err != nil {
-				return c.SendStatus(500)
-			} else {
-				defer response.Body.Close()
-				var buf bytes.Buffer
-				response.Write(&buf)
-				c.Context().SetContentType("audio/mpeg")
-				return c.Send(buf.Bytes())
-			}
-		}
-	})
-
-	app.Post("/switchlanguages", func(c *fiber.Ctx) error {
-		if c.Cookies("from") != "" {
-			fromCookie := new(fiber.Cookie)
-			fromCookie.Name = "from"
-			fromCookie.Value = c.Cookies("to")
-			fromCookie.Expires = time.Now().Add(24 * time.Hour * 365)
-
-			toCookie := new(fiber.Cookie)
-			toCookie.Name = "to"
-			toCookie.Value = c.Cookies("from")
-			toCookie.Expires = time.Now().Add(24 * time.Hour * 365)
-
-			c.Cookie(fromCookie)
-			c.Cookie(toCookie)
-		}
-		return c.Redirect("/")
-	})
-
-	app.Static("/static", "./static")
-
-	address := os.Getenv("ADDRESS")
-	if address == "" {
-		address = ":5000"
-	}
-	app.Listen(address)
-}
Index: unk/web/static/LICENSE
===================================================================
--- /trunk/web/static/LICENSE	(revision 47)
+++ 	(revision )
@@ -1,3 +1,0 @@
-favicon.ico, favicon.svg, favicon128x128.png
-Created by "joelchrono12" (https://joelchrono12.ml/)
-Creative Commons Attribution 4.0 International License (CC BY 4.0)
Index: unk/web/static/favicon.svg
===================================================================
--- /trunk/web/static/favicon.svg	(revision 47)
+++ 	(revision )
@@ -1,141 +1,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   width="37.386002"
-   height="37.386002"
-   viewBox="0 0 37.386002 37.386002"
-   version="1.1"
-   id="svg5"
-   inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
-   sodipodi:docname="favicon.svg"
-   inkscape:export-filename="favicon128x128.png"
-   inkscape:export-xdpi="328.67917"
-   inkscape:export-ydpi="328.67917"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:svg="http://www.w3.org/2000/svg">
-  <sodipodi:namedview
-     id="namedview7"
-     pagecolor="#505050"
-     bordercolor="#eeeeee"
-     borderopacity="1"
-     inkscape:pageshadow="0"
-     inkscape:pageopacity="0"
-     inkscape:pagecheckerboard="0"
-     inkscape:document-units="px"
-     showgrid="false"
-     units="px"
-     showguides="false"
-     inkscape:zoom="11.313709"
-     inkscape:cx="16.617009"
-     inkscape:cy="19.047688"
-     inkscape:window-width="1888"
-     inkscape:window-height="1060"
-     inkscape:window-x="32"
-     inkscape:window-y="0"
-     inkscape:window-maximized="1"
-     inkscape:current-layer="layer1"
-     inkscape:showpageshadow="2"
-     inkscape:deskcolor="#d1d1d1" />
-  <defs
-     id="defs2">
-    <inkscape:path-effect
-       effect="fillet_chamfer"
-       id="path-effect35261"
-       is_visible="true"
-       lpeversion="1"
-       satellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1"
-       unit="px"
-       method="auto"
-       mode="F"
-       radius="1"
-       chamfer_steps="1"
-       flexible="false"
-       use_knot_distance="true"
-       apply_no_radius="true"
-       apply_with_radius="true"
-       only_selected="false"
-       hide_knots="false"
-       nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1" />
-    <style
-       id="style967">.a{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;}</style>
-  </defs>
-  <g
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer"
-     id="layer1"
-     transform="translate(-5.3069999,-5.307)">
-    <text
-       xml:space="preserve"
-       style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none"
-       x="22.98719"
-       y="13.623002"
-       id="text6936"><tspan
-         sodipodi:role="line"
-         id="tspan6934"
-         x="22.98719"
-         y="13.623002" /></text>
-    <path
-       class="a"
-       d="M 40.5,5.5 H 7.4999999 a 2,2 0 0 0 -2,2 v 33 a 2,2 0 0 0 2,2 H 40.5 a 2,2 0 0 0 2,-2 v -33 a 2,2 0 0 0 -2,-2 z"
-       id="path971"
-       style="fill:#478061;fill-opacity:1;stroke:#478061;stroke-width:0.386;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
-    <path
-       id="path39667"
-       style="opacity:0.273315;fill:#000000;stroke:#000000;stroke-width:0.386016px;stroke-linecap:round;stroke-linejoin:round"
-       d="m 24.205078,9.390625 c -2.3698,0 -4.303381,0.683581 -5.800781,2.050781 -1.4974,1.3672 -2.246094,3.138 -2.246094,5.3125 0,2.089163 0.687318,3.790932 2.060547,5.105469 0.04323,0.04393 0.08616,0.08775 0.130859,0.130859 0.05736,0.05873 0.115809,0.116574 0.175782,0.173828 0.04157,0.04213 0.08207,0.08559 0.125,0.126954 0.04814,0.04922 0.09651,0.0983 0.146484,0.146484 0.05513,0.05645 0.110428,0.112881 0.167969,0.167969 0.04256,0.04324 0.08493,0.08647 0.128906,0.128906 0.05574,0.05712 0.11171,0.114191 0.169922,0.169922 0.04676,0.04752 0.0941,0.09408 0.142578,0.140625 0.04896,0.0499 0.09759,0.09961 0.148438,0.148437 0.04655,0.04747 0.09236,0.09607 0.140624,0.142579 0.04814,0.04922 0.09651,0.0983 0.146485,0.146484 0.05513,0.05645 0.110428,0.112881 0.167969,0.167969 0.04323,0.04393 0.08616,0.08776 0.130859,0.130859 0.05736,0.05873 0.115812,0.116569 0.175781,0.173828 0.04158,0.04212 0.08207,0.08559 0.125,0.126953 0.04813,0.04922 0.09652,0.0983 0.146485,0.146485 0.05513,0.05645 0.110424,0.112881 0.167968,0.167968 0.04315,0.04385 0.08624,0.08783 0.13086,0.13086 0.05513,0.05645 0.110427,0.112882 0.167969,0.167968 0.04676,0.04752 0.0941,0.09408 0.142578,0.140626 0.04896,0.0499 0.09759,0.0996 0.148437,0.148437 0.04655,0.04746 0.09236,0.09608 0.140625,0.142578 0.04813,0.04923 0.09652,0.09829 0.146484,0.146485 0.05513,0.05644 0.110425,0.112884 0.167969,0.167968 0.04323,0.04393 0.08616,0.08776 0.13086,0.13086 0.05736,0.05873 0.115808,0.116569 0.175781,0.173828 0.04157,0.04213 0.08207,0.08559 0.125,0.126953 0.04814,0.04923 0.09651,0.09829 0.146484,0.146484 0.05513,0.05645 0.110429,0.112884 0.167969,0.167969 0.04315,0.04386 0.08624,0.08783 0.130859,0.130859 0.05513,0.05645 0.110429,0.112885 0.167969,0.167969 0.04676,0.04752 0.0941,0.09408 0.142578,0.140625 0.04896,0.0499 0.09758,0.09961 0.148438,0.148438 0.04655,0.04747 0.09236,0.09608 0.140625,0.142578 0.04814,0.04923 0.09651,0.09829 0.146484,0.146484 0.05513,0.05645 0.110429,0.112884 0.167969,0.167969 0.04383,0.04454 0.08747,0.08912 0.132812,0.132812 0.05451,0.05577 0.109147,0.111575 0.166016,0.166016 0.04676,0.04752 0.0941,0.09408 0.142578,0.140625 0.04547,0.04634 0.08962,0.09325 0.136719,0.138672 0.05513,0.05645 0.110428,0.112881 0.167969,0.167969 0.04315,0.04385 0.08624,0.08783 0.130859,0.130859 0.05513,0.05645 0.110428,0.112884 0.167969,0.167969 0.04323,0.04393 0.08616,0.08775 0.130859,0.130859 0.05736,0.05873 0.115812,0.116573 0.175781,0.173828 0.04158,0.04213 0.08207,0.08559 0.125,0.126953 0.04813,0.04922 0.09652,0.0983 0.146485,0.146485 0.05513,0.05645 0.110425,0.112881 0.167968,0.167969 0.04383,0.04454 0.08747,0.08912 0.132813,0.132812 0.05452,0.05577 0.109144,0.111571 0.166016,0.166016 0.04676,0.04751 0.0941,0.09408 0.142578,0.140625 0.04547,0.04634 0.08962,0.09325 0.136719,0.138671 0.05513,0.05645 0.110428,0.112882 0.167968,0.167969 0.04315,0.04385 0.08624,0.08783 0.13086,0.13086 0.05513,0.05645 0.110424,0.112881 0.167968,0.167968 0.04323,0.04393 0.08616,0.08776 0.13086,0.13086 0.05736,0.05873 0.115808,0.116569 0.175781,0.173828 0.04157,0.04212 0.08207,0.08559 0.125,0.126953 0.04814,0.04923 0.09651,0.09829 0.146484,0.146484 0.05513,0.05645 0.110429,0.112885 0.167969,0.167969 0.04316,0.04385 0.08624,0.08783 0.13086,0.130859 0.05513,0.05645 0.110428,0.112882 0.167968,0.167969 0.04676,0.04752 0.0941,0.09408 0.142578,0.140625 0.04896,0.0499 0.09759,0.0996 0.148438,0.148438 0.04655,0.04746 0.09236,0.09608 0.140625,0.142578 0.04814,0.04923 0.09651,0.09829 0.146484,0.146484 0.05513,0.05645 0.110429,0.112885 0.167969,0.167969 0.04323,0.04393 0.08616,0.08775 0.130859,0.130859 0.05513,0.05644 0.110429,0.112885 0.167969,0.167969 0.04387,0.04458 0.08743,0.08908 0.132813,0.132813 0.04813,0.04923 0.09652,0.09829 0.146484,0.146484 0.05513,0.05644 0.110425,0.112884 0.167969,0.167969 0.04315,0.04386 0.08624,0.08783 0.130859,0.130859 0.05513,0.05644 0.110428,0.112884 0.167969,0.167969 0.04676,0.04752 0.0941,0.09408 0.142578,0.140625 0.04896,0.0499 0.09759,0.0996 0.148438,0.148437 0.04655,0.04747 0.09236,0.09607 0.140624,0.142579 0.04813,0.04922 0.09652,0.0983 0.146485,0.146484 0.0064,0.0066 0.01306,0.01296 0.01953,0.01953 -0.272715,0.603124 -0.665046,1.134975 -1.183594,1.591797 -0.987429,0.880344 -2.277941,1.353701 -3.863281,1.429688 -0.0097,-0.0094 -0.03885,-0.03921 -0.05273,-0.05273 h 0.0078 c 0,0 -0.11336,-0.110487 -0.152343,-0.148437 -3.03e-4,-2.95e-4 -0.113086,-0.110216 -0.152344,-0.148438 h 0.0059 c 0,0 -0.114471,-0.111621 -0.154297,-0.15039 h 0.0059 c 0,0 -0.11338,-0.110502 -0.152344,-0.148438 -3.06e-4,-2.97e-4 -0.114272,-0.111427 -0.154297,-0.150391 h 0.0078 c 0,0 -0.113391,-0.110516 -0.152344,-0.148437 -3.03e-4,-2.95e-4 -0.113112,-0.110246 -0.152344,-0.148438 h 0.0059 c 0,0 -0.114501,-0.111646 -0.154297,-0.15039 h 0.0059 c 0,0 -0.113405,-0.110528 -0.152344,-0.148438 -3.05e-4,-2.97e-4 -0.114302,-0.111453 -0.154297,-0.15039 h 0.0078 c 0,0 -0.11342,-0.110539 -0.152344,-0.148438 -3.05e-4,-2.97e-4 -0.11424,-0.111393 -0.154297,-0.15039 h 0.0078 c 0,0 -0.113431,-0.11055 -0.152344,-0.148438 -3.02e-4,-2.94e-4 -0.113152,-0.110281 -0.152344,-0.148438 h 0.0059 c 0,0 -0.114543,-0.111688 -0.154297,-0.15039 h 0.0059 c 0,0 -0.113445,-0.110568 -0.152344,-0.148438 -3.05e-4,-2.96e-4 -0.114343,-0.111494 -0.154297,-0.15039 h 0.0078 c 0,0 -0.113456,-0.110579 -0.152344,-0.148438 -3.02e-4,-2.94e-4 -0.113182,-0.110312 -0.152344,-0.148437 h 0.0059 c 0,0 -0.114569,-0.111715 -0.154297,-0.150391 h 0.0059 c 0,0 -0.113474,-0.110594 -0.152344,-0.148437 -3.03e-4,-2.97e-4 -0.114373,-0.111517 -0.154296,-0.150391 h 0.0078 c 0,0 -0.113486,-0.110605 -0.152344,-0.148438 -3.04e-4,-2.95e-4 -0.114311,-0.11146 -0.154296,-0.15039 h 0.0078 c 0,0 -0.113497,-0.110616 -0.152344,-0.148438 -3.01e-4,-2.93e-4 -0.113222,-0.110349 -0.152344,-0.148437 h 0.0059 c 0,0 -0.11461,-0.111752 -0.154297,-0.150391 h 0.0059 c 0,0 -0.113515,-0.110634 -0.152343,-0.148437 -3.05e-4,-2.96e-4 -0.114412,-0.111558 -0.154297,-0.150391 h 0.0078 c 0,0 -0.113526,-0.110645 -0.152344,-0.148437 -3.05e-4,-2.98e-4 -0.114276,-0.111428 -0.154296,-0.150391 h 0.0078 c 0,0 -0.113537,-0.110657 -0.152344,-0.148438 -3.01e-4,-2.93e-4 -0.113263,-0.11039 -0.152343,-0.148437 h 0.0059 c 0,0 -0.114652,-0.11179 -0.154297,-0.150391 h 0.0059 c 0,0 -0.113555,-0.110671 -0.152343,-0.148437 -3.04e-4,-2.96e-4 -0.11438,-0.111525 -0.154297,-0.150391 h 0.0078 c 0,0 -0.113567,-0.110682 -0.152343,-0.148437 -3.02e-4,-2.93e-4 -0.11329,-0.110412 -0.152344,-0.148438 h 0.0059 c 0,0 -0.114682,-0.111819 -0.154297,-0.15039 h 0.0059 c 0,0 -0.113578,-0.110697 -0.152344,-0.148438 -3.04e-4,-2.96e-4 -0.114479,-0.111626 -0.154297,-0.150391 h 0.0078 c 0,0 -0.113589,-0.110712 -0.152344,-0.148437 -0.0019,-0.0019 -0.952652,-0.929914 -0.982422,-0.958984 l -0.002,-0.002 c 0,0 -0.954475,-0.929885 -0.984375,-0.958985 l -0.002,-0.002 -0.986328,0.960938 -0.986328,0.960937 h 0.300781 l -0.152344,0.148437 h 0.304687 l -0.154296,0.150391 h 0.300781 l -0.152344,0.148438 h 0.304688 l -0.154297,0.15039 h 0.287109 c 2.47e-4,0.0039 -2.51e-4,0.0078 0,0.01172 l -0.138672,0.136719 h 0.152344 c 0.0035,0.0459 0.0076,0.09117 0.01172,0.136719 l -0.01367,0.01172 h 0.01367 c 0.121674,1.328298 0.486816,2.512221 1.103515,3.546875 0.328886,0.53724 0.711782,1.019763 1.144532,1.453125 0.04143,0.04384 0.08647,0.08412 0.128906,0.126953 0.05524,0.05893 0.112876,0.114747 0.169922,0.171875 0.04521,0.04785 0.09421,0.09202 0.140625,0.138672 0.04422,0.04695 0.09135,0.09092 0.136718,0.136719 0.05533,0.05902 0.114735,0.114664 0.171876,0.171875 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05524,0.05893 0.112874,0.11475 0.169921,0.171875 0.04522,0.04785 0.09421,0.09202 0.140626,0.138672 0.04422,0.04695 0.09135,0.09092 0.136718,0.136719 0.05533,0.05902 0.114736,0.114662 0.171875,0.171875 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05533,0.05902 0.114736,0.114663 0.171875,0.171875 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05524,0.05893 0.112875,0.11475 0.169922,0.171875 0.04521,0.04785 0.09421,0.09202 0.140625,0.138672 0.04422,0.04695 0.09135,0.09092 0.136719,0.136719 0.05533,0.05902 0.114736,0.114662 0.171875,0.171875 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05524,0.05893 0.112874,0.114749 0.169922,0.171875 0.04142,0.04384 0.08648,0.08412 0.128906,0.126953 0.05082,0.05421 0.103901,0.105516 0.15625,0.158203 0.05225,0.05556 0.108247,0.108156 0.16211,0.162109 0.04143,0.04385 0.08647,0.08411 0.128906,0.126953 0.05533,0.05902 0.114738,0.114663 0.171875,0.171876 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05524,0.05893 0.112877,0.114749 0.169922,0.171875 0.04522,0.04785 0.09421,0.09202 0.140625,0.138672 0.04422,0.04695 0.09135,0.09092 0.136719,0.136718 0.05533,0.05902 0.114736,0.114661 0.171875,0.171875 0.04114,0.04352 0.08482,0.08442 0.126953,0.126953 0.05524,0.05893 0.112874,0.114749 0.169922,0.171875 0.04143,0.04384 0.08647,0.08412 0.128906,0.126953 0.05524,0.05893 0.112876,0.114748 0.169922,0.171876 0.04521,0.04785 0.09421,0.09202 0.140625,0.138671 0.04422,0.04695 0.09135,0.09092 0.136719,0.136719 0.05533,0.05902 0.114736,0.114663 0.171875,0.171875 0.04114,0.04352 0.08483,0.08442 0.126953,0.126953 0.05524,0.05893 0.112874,0.114747 0.169922,0.171875 0.04522,0.04785 0.09421,0.09202 0.140625,0.138672 0.04422,0.04695 0.09135,0.09092 0.136718,0.136719 0.05533,0.05902 0.114735,0.114663 0.171875,0.171875 0.04114,0.04352 0.08482,0.08442 0.126954,0.126953 0.0503,0.05366 0.103978,0.104462 0.15625,0.15625 H 40.5 a 2,2 0 0 0 2,-2 V 24.130859 c -0.03302,-0.03282 -0.06654,-0.06495 -0.09961,-0.09766 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.0493,-0.05097 -0.100178,-0.0991 -0.150391,-0.148437 -0.03512,-0.03631 -0.07184,-0.06999 -0.107422,-0.105469 -0.01405,-0.01474 -0.02683,-0.03026 -0.04102,-0.04492 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07407 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.03912,-0.04044 -0.07945,-0.07777 -0.119141,-0.117187 -0.0099,-0.01036 -0.01931,-0.02093 -0.0293,-0.03125 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.07429,-0.0725 -0.111329,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126954 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113282,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.03912,-0.04045 -0.07945,-0.07777 -0.119141,-0.117187 -0.0099,-0.01036 -0.01931,-0.02093 -0.0293,-0.03125 -0.04286,-0.04431 -0.08731,-0.08583 -0.130859,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08602,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126954 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08583 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109376 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.04431 -0.08732,-0.08583 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08602,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.07429,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111329 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.03757,-0.03885 -0.07713,-0.07539 -0.115234,-0.113281 -0.01178,-0.01233 -0.02328,-0.02483 -0.03516,-0.03711 -0.03912,-0.04044 -0.07945,-0.07777 -0.11914,-0.117188 -0.0099,-0.01036 -0.01931,-0.02092 -0.0293,-0.03125 -0.04285,-0.0443 -0.08732,-0.08584 -0.130859,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07407 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111329,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.0493,-0.05097 -0.100178,-0.0991 -0.150391,-0.148437 -0.03512,-0.03631 -0.07184,-0.06999 -0.107421,-0.105469 -0.01405,-0.01474 -0.02683,-0.03026 -0.04102,-0.04492 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04253,-0.04397 -0.0857,-0.08615 -0.128907,-0.128906 -0.007,-0.0073 -0.01441,-0.01417 -0.02148,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.04431 -0.08732,-0.08583 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113282,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08583 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02149 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.04431 -0.08732,-0.08583 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02149 -0.03653,-0.03777 -0.0743,-0.07251 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02149 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.03912,-0.04045 -0.07945,-0.07777 -0.11914,-0.117188 -0.0099,-0.01036 -0.01931,-0.02093 -0.0293,-0.03125 -0.04285,-0.04431 -0.08732,-0.08583 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02149 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109374 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07407 -0.113281,-0.111329 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02149 -0.04285,-0.0443 -0.08732,-0.08584 -0.130859,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.0443 -0.08732,-0.08584 -0.13086,-0.128906 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07407 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128907,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04285,-0.04431 -0.08732,-0.08584 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111329,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0068,-0.007 -0.01274,-0.01446 -0.01953,-0.02148 -0.03693,-0.03818 -0.07584,-0.07406 -0.113281,-0.111328 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04221,-0.04364 -0.08603,-0.08451 -0.128906,-0.126953 -0.0067,-0.007 -0.01276,-0.01449 -0.01953,-0.02148 -0.04253,-0.04397 -0.0857,-0.08615 -0.128906,-0.128906 -0.007,-0.0073 -0.01441,-0.01417 -0.02148,-0.02149 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -0.04285,-0.04431 -0.08732,-0.08584 -0.130859,-0.128907 -0.0067,-0.007 -0.01279,-0.01451 -0.01953,-0.02148 -0.03653,-0.03777 -0.0743,-0.0725 -0.111328,-0.109375 -0.01246,-0.01305 -0.02455,-0.02608 -0.03711,-0.03906 -1.5363,-1.588302 -3.5161,-2.382623 -5.9375,-2.382813 z" />
-    <g
-       id="g15133"
-       transform="matrix(0.64227027,0,0,0.64227027,-15.275186,-45.367611)">
-      <polyline
-         class="st0"
-         points="63.8,101 61.2,93 58.5,101   "
-         id="polyline15129" />
-      <line
-         class="st0"
-         x1="59.400002"
-         y1="98.300003"
-         x2="62.900002"
-         y2="98.300003"
-         id="line15131" />
-    </g>
-    <g
-       id="path33996" />
-    <g
-       id="path34177" />
-    <g
-       id="g17153"
-       transform="matrix(0.64227027,0,0,0.64227027,8.7500022,8.5520441)">
-      <path
-         style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
-         d="m 19.792122,31.555225 h 7.904173"
-         id="path16798" />
-      <path
-         style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
-         d="m 26.1674,31.596349 c 0,0 -0.879776,4.573392 -5.113091,6.866763"
-         id="path16866" />
-      <path
-         style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
-         d="M 26.262905,38.481686 C 25.267597,38.031795 22.0344,34.63603 21.648922,33.22501"
-         id="path16901"
-         sodipodi:nodetypes="cc" />
-      <path
-         style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
-         d="M 23.663218,31.460063 V 30.433904"
-         id="path16936" />
-    </g>
-    <path
-       id="path35934"
-       style="fill:#ffffff;stroke:#ffffff;stroke-width:0.386016;stroke-linecap:round;stroke-linejoin:round"
-       inkscape:transform-center-y="0.32012888"
-       d="m 33.292005,17.78074 h -1.97289 -1.972892 l 0.986446,0.960387 0.986446,0.960385 0.986445,-0.960385 z M 18.500601,30.202889 h -1.97289 -1.972892 l 0.986446,-0.960386 0.986446,-0.960386 0.986445,0.960386 z m 11.817758,1.023673 q 0,-2.382812 -1.367187,-3.75 -1.347656,-1.367187 -5.058594,-2.617187 -3.710937,-1.25 -5.449219,-2.792969 -2.285156,-2.011719 -2.285156,-5.3125 0,-3.261718 2.246094,-5.3125 2.246094,-2.050781 5.800781,-2.050781 3.632813,0 5.9375,2.382813 2.304688,2.382812 2.304688,6.132812 h -2.246094 q 0,-2.871094 -1.621094,-4.628906 Q 26.978516,11.5 24.205078,11.5 q -2.695312,0 -4.257812,1.464844 -1.542969,1.445312 -1.542969,3.75 0,2.148437 1.464844,3.515625 1.464843,1.367187 4.667968,2.441406 3.203125,1.054687 4.84375,2.207031 1.640625,1.132813 2.421876,2.675781 0.781249,1.542969 0.781249,3.632813 0,3.339844 -2.265625,5.390625 -2.246093,2.03125 -5.957031,2.03125 -2.5,0 -4.570312,-1.015625 -2.050782,-1.035156 -3.222657,-2.949219 -1.152343,-1.933594 -1.152343,-4.550781 h 2.226561 q 0,3.007812 1.816407,4.726562 1.816407,1.71875 4.902344,1.71875 2.695313,0 4.316406,-1.445312 1.640625,-1.445313 1.640625,-3.867188 z" />
-  </g>
-  <style
-     type="text/css"
-     id="style14976">&#10;	.st0{fill:none;stroke:#FFFFFF;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st1{fill:#FFFFFF;}&#10;	.st2{fill:none;stroke:#FFFFFF;stroke-width:0.9976;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st3{fill:none;stroke:#FFFFFF;stroke-width:0.9965;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st4{fill:none;stroke:#FFFFFF;stroke-width:0.8662;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;</style>
-  <style
-     type="text/css"
-     id="style44917">&#10;	.st0{fill:none;stroke:#FFFFFF;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st1{fill:#FFFFFF;}&#10;	.st2{fill:none;stroke:#FFFFFF;stroke-width:0.9976;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st3{fill:none;stroke:#FFFFFF;stroke-width:0.9965;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;	.st4{fill:none;stroke:#FFFFFF;stroke-width:0.8662;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}&#10;</style>
-</svg>
Index: unk/web/static/script.js
===================================================================
--- /trunk/web/static/script.js	(revision 47)
+++ 	(revision )
@@ -1,18 +1,0 @@
-// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-3.0
-// this code submits the translation form when pressing Ctrl/Meta+Enter while focussed on the input text field
-document.getElementById("input").addEventListener("keydown", function (event) {
-    if (event.keyCode === 13 && (event.metaKey || event.ctrlKey)) {
-        document.getElementById("translation-form").submit();
-    }
-});
-// @license-end
-
-// Auto resize textarea to fit words inside it without need to scroll -- Thanks to: https://stackoverflow.com/a/25621277
-var input = document.getElementById("input");
-var output = document.getElementById("output");
-input.setAttribute("style", "height:" + output.scrollHeight + "px;overflow-y:scroll;");
-output.setAttribute("style", "height:" + output.scrollHeight + "px;overflow-y:scroll;");
-input.addEventListener("input", function (e) {
-    this.style.height = 150 + "px";
-    this.style.height = this.scrollHeight + "px";
-});
Index: unk/web/static/style.css
===================================================================
--- /trunk/web/static/style.css	(revision 47)
+++ 	(revision )
@@ -1,188 +1,0 @@
-.center {
-    text-align: center;
-}
-
-.wrap {
-    display: flex;
-    flex-wrap: wrap;
-    justify-content: center;
-}
-
-.wrap.languages {
-    flex-wrap: nowrap;
-    margin-bottom: 20px;
-}
-
-#could_not_switch_languages_text {
-    color: red;
-}
-
-.item {
-    width: 100%;
-    height: 150px;
-}
-
-.item-wrapper {
-    display: flex;
-    flex-wrap: wrap;
-    justify-content: center;
-    width: 450px;
-    margin: 5px 10px;
-    gap: 10px;
-}
-
-
-.language,
-.switch_languages {
-    display: flex;
-}
-
-.language {
-    margin: 0px 10px;
-}
-
-.switch_languages {
-    margin: 0px 5px;
-}
-
-#switchbutton {
-    white-space: nowrap;
-}
-
-button {
-    font-size: 1rem;
-    padding: 4px 10px;
-    border: 2px solid #888888;
-}
-
-input,
-select,
-textarea {
-    width: 100%;
-    font-size: 1rem;
-    padding: 4px;
-    border: 2px solid #888888;
-}
-
-textarea {
-    resize: vertical;
-    height: 5rem;
-    font-family: sans-serif;
-
-    /* Stretch to form width */
-    width: 100%;
-}
-
-input:focus,
-select:focus,
-textarea:focus,
-button:focus {
-    border-color: #478061;
-    outline: 1px solid #478061;
-}
-
-
-body {
-    justify-content: center;
-    font-family: sans-serif;
-}
-
-#definitions_and_translations {
-    display: grid;
-    margin: auto;
-    width: 1100px;
-    gap: 10px;
-    grid-template-areas: "definitions translations";
-
-}
-
-.def_type {
-    color: #007979;
-    text-transform: capitalize;
-}
-
-.syn {
-    color: #804700;
-}
-
-.syn_type {
-    color: #007979;
-}
-
-.use_in_sentence {
-    color: #009902;
-}
-
-.definitions li:not(:last-child) {
-    margin-bottom: 1rem;
-}
-
-@media screen and (max-width: 1200px) {
-    #definitions_and_translations {
-        display: grid;
-        width: 90vw;
-        grid-template-areas:
-            "definitions definitions"
-            "translations translations";
-    }
-}
-
-
-div.definitions {
-    grid-area: definitions;
-}
-
-div.translations {
-    grid-area: translations;
-}
-
-a {
-    text-decoration: none;
-}
-
-@media screen and (prefers-color-scheme: dark) {
-    body {
-        background-color: #212529;
-        color: #f8f9fa;
-    }
-
-    #could_not_switch_languages_text {
-        color: #F13333;
-    }
-
-    a:visited {
-        color: #9759f6;
-        text-decoration: none;
-    }
-
-    a {
-        color: #599bf6;
-        text-decoration: none;
-    }
-
-    input,
-    select,
-    button,
-    textarea {
-        background-color: #131618;
-        border-color: #495057;
-        color: #f8f9fa;
-    }
-
-    .def_type {
-        color: cyan;
-        text-transform: capitalize;
-    }
-
-    .syn {
-        color: burlywood;
-    }
-
-    .syn_type {
-        color: cyan;
-    }
-
-    .use_in_sentence {
-        color: yellow;
-    }
-}
Index: unk/web/views/index.html
===================================================================
--- /trunk/web/views/index.html	(revision 47)
+++ 	(revision )
@@ -1,151 +1,0 @@
-<!doctype html>
-<html lang="en">
-
-<head>
-    <title>SimplyTranslate</title>
-    <link rel="shortcut icon" href="/static/favicon.ico">
-    <meta name="description" content="Experience simple and private Google translations">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0">
-    <meta charset="UTF-8">
-    <meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'">
-    <meta name="referrer" content="no-referrer">
-    <link rel="stylesheet" href="/static/style.css">
-</head>
-
-<body>
-    <header class="center">
-        <h1>SimplyTranslate</h1>
-    </header>
-
-    <form action="/?engine={{.Engine}}" method="POST" id="translation-form">
-
-        <div class="center">
-            Translation Engine
-            {{$i := 0}}
-            {{ range $k, $v := .enginesNames }}
-            <a {{ if eq $k $.Engine }}style="text-decoration:underline" {{end}} href="/?engine={{ $k }}">{{ $v }}</a>
-            {{$i = (inc $i)}}
-            {{if eq $i (len $.enginesNames)}}{{else}}|{{end}}
-            {{end}}
-        </div>
-        <br>
-
-        <div class="wrap languages">
-            <div class="language">
-                <select name="from" aria-label="Source language">
-                    {{range $code, $name := .SourceLanguages}}
-                    {{if and (eq $code "auto") $.SourceLanguage}}
-                    <option value="{{ $code }}" {{if eq $code $.From}}selected{{end}}>{{ $name }} ({{index
-                        $.SourceLanguages $.SourceLanguage}})</option>
-                    {{else }}
-                    <option value="{{ $code }}" {{if eq $code $.From}}selected{{end}}>{{ $name }}</option>
-                    {{end}}
-                    {{end}}
-                </select>
-            </div>
-
-            <div class="switch_languages">
-                <button id="switchbutton" aria-label="Switch languages"
-                    formaction="/switchlanguages/?engine={{ .Engine }}" type="submit">&lt;-&gt;</button>
-            </div>
-
-            <div class="language">
-                <select name="to" aria-label="Target language">
-                    {{range $code, $name := .TargetLanguages}}
-                    <option value="{{ $code }}" {{if eq $code $.To}}selected{{end}}>{{ $name }}</option>
-                    {{end}}
-                </select>
-            </div>
-        </div>
-
-        <div class="wrap">
-            <div class="item-wrapper">
-                <textarea autofocus class="item" id="input" name="text" dir="auto"
-                    placeholder="Enter Text Here">{{ .OriginalText }}</textarea>
-                {{if .TtsFrom}}
-                <audio controls>
-                    <source type="audio/mpeg" src="{{ .TtsFrom }}">
-                </audio>
-                {{end}}
-            </div>
-
-            <div class="item-wrapper">
-                <textarea id="output" class="translation item" dir="auto" placeholder="Translation"
-                    readonly>{{.Translation.TranslatedText}}</textarea>
-                {{if .TtsTo}}
-                <audio controls>
-                    <source type="audio/mpeg" src="{{ .TtsTo }}">
-                </audio>
-                {{end}}
-            </div>
-        </div>
-
-        <br>
-
-        <div class="center">
-            <button type="submit">Translate with {{ index .enginesNames .Engine }}!</button>
-        </div>
-
-        <br>
-
-        <div id="definitions_and_translations">
-            {{ if .Translation.Definitions }}
-            <div class="definitions">
-                {{ range $type, $definitions :=.Translation.Definitions }}
-                <span class="def_type">{{ $type }}</span>
-                <ol>
-                    {{ range $definition_item := $definitions }}
-                    <li>
-                        {{ $definition_item.definition }}
-                        <br>
-                        {{with $definition_item.use_in_sentence}}
-                        <span class="use_in_sentence">"{{$definition_item.use_in_sentence}}"</span>
-                        <br>
-                        {{end}}
-                        {{with $definition_item.synonyms}}
-                        {{ range $synonym_type, $_ := $definition_item.synonyms }}
-                        <span class="syn">
-                            {{if $synonym_type }}
-                            <br>
-                            <span class="syn_type">{{$synonym_type}}: </span>{{end}}{{ range $index, $element := index
-                            $definition_item.synonyms $synonym_type}}{{if $index}}, {{end}}{{$element}}{{end}}
-                        </span>
-                        {{end}}
-                        {{end}}
-                    </li>
-                    {{end}}
-                </ol>
-                {{end}}
-            </div>
-            {{ end}}
-
-            {{ if .Translation.Translations }}
-            <div class="translations">
-                {{ range $def_type, $translations := .Translation.Translations }}
-                <span class="def_type">{{ $def_type }}</span>
-                <ul>
-                    {{ range $word, $word_translations := $translations }}
-                    <li>
-                        <span class="syn_type">{{$word}}:</span>
-                        <span class="syn">{{ range $index, $element := $word_translations.words}}{{if $index}},
-                            {{end}}{{$element}}{{end}}</span>
-                        <span class="syn_type">{{$word_translations.frequency}}</span>
-                    </li>
-                    <br>
-                    {{end}}
-                </ul>
-                {{end}}
-            </div>
-            {{end}}
-        </div>
-
-    </form>
-    <br><br><br><br><br>
-    <footer class="center">
-        <a href="https://codeberg.org/ManeraKai/simplytranslate">Source Code</a>
-    </footer>
-
-    <script src="/static/script.js"></script>
-</body>
-
-</html>
