Skip to content
Snippets Groups Projects
Commit 72f160b4 authored by Alice Brenon's avatar Alice Brenon
Browse files

Apply guix styling and wrap lines in README

parent 71c227b4
No related branches found
No related tags found
No related merge requests found
...@@ -32,6 +32,6 @@ detailed. ...@@ -32,6 +32,6 @@ detailed.
## Contributing ## Contributing
Your contributions are most welcome. If you have an account on the LIRIS' Your contributions are most welcome. If you have an account on the LIRIS'
[gitlab instance](https://gitlab.liris.cnrs.fr/), just ask us for the rights. Otherwise, send your `git` [gitlab instance](https://gitlab.liris.cnrs.fr/), just ask us for the rights.
paches by email to the author of commit Otherwise, send your `git` paches by email to the author of commit
`7e422c33b70409ecc47336b5583977f43669e45f`. `7e422c33b70409ecc47336b5583977f43669e45f`.
(define-module (geode packages annotation) (define-module (geode packages annotation)
#:use-module ((gnu packages check) #:select (python-coverage #:use-module ((gnu packages check)
python-mock #:select (python-coverage
python-pytest python-mock python-pytest
python-pytest-cov python-pytest-cov
python-pytest-sugar python-pytest-sugar
python-pytest-xdist)) python-pytest-xdist))
#:use-module ((gnu packages geo) #:select (python-geopandas)) #:use-module ((gnu packages geo)
#:use-module ((gnu packages machine-learning) #:select (python-pytorch #:select (python-geopandas))
python-scikit-learn)) #:use-module ((gnu packages machine-learning)
#:use-module ((gnu packages protobuf) #:select (python-protobuf)) #:select (python-pytorch python-scikit-learn))
#:use-module ((gnu packages python-check) #:select (python-mypy #:use-module ((gnu packages protobuf)
python-pytest-rerunfailures)) #:select (python-protobuf))
#:use-module ((gnu packages python-crypto) #:select (python-paramiko)) #:use-module ((gnu packages python-check)
#:use-module ((gnu packages python-science) #:select (python-pandas)) #:select (python-mypy python-pytest-rerunfailures))
#:use-module ((gnu packages python-web) #:select (python-azure-core #:use-module ((gnu packages python-crypto)
python-azure-common #:select (python-paramiko))
python-azure-storage-blob #:use-module ((gnu packages python-science)
python-google-cloud-storage #:select (python-pandas))
python-requests #:use-module ((gnu packages python-web)
python-responses)) #:select (python-azure-core
#:use-module ((gnu packages python-xyz) #:select (python-autoflake python-azure-common
python-black python-azure-storage-blob
python-boto3 python-google-cloud-storage
python-catalogue python-requests python-responses))
python-check-manifest #:use-module ((gnu packages python-xyz)
python-click #:select (python-autoflake
python-colorama python-black
python-contextvars python-boto3
python-cymem python-catalogue
python-cython python-check-manifest
python-dataclasses python-click
python-emoji python-colorama
python-flake8 python-contextvars
python-folium python-cymem
python-geojson python-cython
python-isort python-dataclasses
python-jinja2 python-emoji
python-langcodes python-flake8
python-matplotlib python-folium
python-mdx-include python-geojson
python-mkdocs python-isort
python-mkdocs-material python-jinja2
python-moto python-langcodes
python-murmurhash python-matplotlib
python-numpy python-mdx-include
python-packaging python-mkdocs
python-pathlib2 python-mkdocs-material
python-pre-commit python-moto
python-preshed python-murmurhash
python-pydantic python-numpy
python-shellingham python-packaging
python-six python-pathlib2
python-tqdm python-pre-commit
python-typer python-preshed
python-typing-extensions python-pydantic
python-wasabi)) python-shellingham
#:use-module ((gnu packages serialization) #:select (python-ruamel.yaml)) python-six
#:use-module ((gnu packages xml) #:select (python-lxml)) python-tqdm
#:use-module ((guix build-system copy) #:select (copy-build-system)) python-typer
#:use-module ((guix build-system python) #:select (pypi-uri python-typing-extensions
python-build-system)) python-wasabi))
#:use-module ((guix download) #:select (url-fetch url-fetch/zipbomb)) #:use-module ((gnu packages serialization)
#:use-module ((guix gexp) #:select (gexp)) #:select (python-ruamel.yaml))
#:use-module ((guix licenses) #:select (asl2.0 bsd-2 bsd-3 expat)) #:use-module ((gnu packages xml)
#:use-module ((guix packages) #:select (base32 #:select (python-lxml))
origin #:use-module ((guix build-system copy)
package #:select (copy-build-system))
search-path-specification))) #:use-module ((guix build-system python)
#:select (pypi-uri python-build-system))
#:use-module ((guix download)
#:select (url-fetch url-fetch/zipbomb))
#:use-module ((guix gexp)
#:select (gexp))
#:use-module ((guix licenses)
#:select (asl2.0 bsd-2 bsd-3 expat))
#:use-module ((guix packages)
#:select (base32 origin package search-path-specification)))
(define-public python-blis (define-public python-blis
(package (package
...@@ -76,19 +85,18 @@ ...@@ -76,19 +85,18 @@
(method url-fetch) (method url-fetch)
(uri (pypi-uri "blis" version)) (uri (pypi-uri "blis" version))
(sha256 (sha256
(base32 (base32
"0vrnzk9jx7fcl56q6zpa4w4mxkr4iknxs42fngn9g78zh1kc9skw")))) "0vrnzk9jx7fcl56q6zpa4w4mxkr4iknxs42fngn9g78zh1kc9skw"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
(list (list #:tests? #f))
#:tests? #f))
(propagated-inputs (list python-numpy)) (propagated-inputs (list python-numpy))
(native-inputs (list python-cython)) (native-inputs (list python-cython))
(home-page "https://github.com/explosion/cython-blis") (home-page "https://github.com/explosion/cython-blis")
(synopsis (synopsis
"The Blis BLAS-like linear algebra library, as a self-contained C-extension.") "The Blis BLAS-like linear algebra library, as a self-contained C-extension.")
(description (description
"The Blis BLAS-like linear algebra library, as a self-contained C-extension.") "The Blis BLAS-like linear algebra library, as a self-contained C-extension.")
(license bsd-3))) (license bsd-3)))
(define-public python-confection (define-public python-confection
...@@ -99,11 +107,10 @@ ...@@ -99,11 +107,10 @@
(method url-fetch) (method url-fetch)
(uri (pypi-uri "confection" version)) (uri (pypi-uri "confection" version))
(sha256 (sha256
(base32 (base32
"1lwarwm0idf9dnk2zyi1v4ibmv953rcb44hn720qhhfxpni99y2z")))) "1lwarwm0idf9dnk2zyi1v4ibmv953rcb44hn720qhhfxpni99y2z"))))
(build-system python-build-system) (build-system python-build-system)
(propagated-inputs (list python-pydantic (propagated-inputs (list python-pydantic python-srsly
python-srsly
python-typing-extensions)) python-typing-extensions))
(native-inputs (list python-pytest)) (native-inputs (list python-pytest))
(home-page "https://github.com/explosion/confection") (home-page "https://github.com/explosion/confection")
...@@ -115,12 +122,12 @@ ...@@ -115,12 +122,12 @@
(package (package
(name "python-gpxpy") (name "python-gpxpy")
(version "1.5.0") (version "1.5.0")
(source (source (origin
(origin (method url-fetch)
(method url-fetch) (uri (pypi-uri "gpxpy" version))
(uri (pypi-uri "gpxpy" version)) (sha256
(sha256 (base32
(base32 "0247ddhrg42x1adlmgxjccni6g3cpj5vh16k7j1pmq7a8n4km6g6")))) "0247ddhrg42x1adlmgxjccni6g3cpj5vh16k7j1pmq7a8n4km6g6"))))
(build-system python-build-system) (build-system python-build-system)
(home-page "https://github.com/tkrajina/gpxpy") (home-page "https://github.com/tkrajina/gpxpy")
(synopsis "GPX file parser and GPS track manipulation library") (synopsis "GPX file parser and GPS track manipulation library")
...@@ -138,10 +145,10 @@ ...@@ -138,10 +145,10 @@
(base32 (base32
"0jmnskclbzp5ri1xx5hgys49iddm1yz20w4qgl842dyzv9dj2y1i")))) "0jmnskclbzp5ri1xx5hgys49iddm1yz20w4qgl842dyzv9dj2y1i"))))
(build-system python-build-system) (build-system python-build-system)
(propagated-inputs (list python-dataclasses python-smart-open-5 python-typer)) (propagated-inputs (list python-dataclasses python-smart-open-5
python-typer))
(arguments (arguments
(list (list #:tests? #f))
#:tests? #f))
(home-page "https://github.com/justindujardin/pathy") (home-page "https://github.com/justindujardin/pathy")
(synopsis "pathlib.Path subclasses for local and cloud bucket storage") (synopsis "pathlib.Path subclasses for local and cloud bucket storage")
(description "pathlib.Path subclasses for local and cloud bucket storage") (description "pathlib.Path subclasses for local and cloud bucket storage")
...@@ -155,14 +162,13 @@ ...@@ -155,14 +162,13 @@
(method url-fetch) (method url-fetch)
(uri (pypi-uri "perdido" version)) (uri (pypi-uri "perdido" version))
(sha256 (sha256
(base32 (base32
"1j82mmaayv6ibxdbrhb44ryikh1bwc1h6jjp3nncyij3qlhvdbna")))) "1j82mmaayv6ibxdbrhb44ryikh1bwc1h6jjp3nncyij3qlhvdbna"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
(list (list #:tests? #f
#:tests? #f #:phases #~(modify-phases %standard-phases
#:phases #~(modify-phases %standard-phases (delete 'sanity-check))))
(delete 'sanity-check))))
(propagated-inputs (list python-folium (propagated-inputs (list python-folium
python-geojson python-geojson
python-geopandas python-geopandas
...@@ -186,12 +192,11 @@ ...@@ -186,12 +192,11 @@
(method url-fetch) (method url-fetch)
(uri (pypi-uri "smart_open" version)) (uri (pypi-uri "smart_open" version))
(sha256 (sha256
(base32 (base32
"05sckm0rnrdk7n888h8yivgwxj25qbq56sd97bssi4ksf5cggavm")))) "05sckm0rnrdk7n888h8yivgwxj25qbq56sd97bssi4ksf5cggavm"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
(list (list #:tests? #f))
#:tests? #f))
(native-inputs (list python-azure-common (native-inputs (list python-azure-common
python-azure-core python-azure-core
python-azure-storage-blob python-azure-storage-blob
...@@ -206,9 +211,9 @@ ...@@ -206,9 +211,9 @@
python-responses)) python-responses))
(home-page "https://github.com/piskvorky/smart_open") (home-page "https://github.com/piskvorky/smart_open")
(synopsis (synopsis
"Utils for streaming large files (S3, HDFS, GCS, Azure Blob Storage, gzip, bz2...)") "Utils for streaming large files (S3, HDFS, GCS, Azure Blob Storage, gzip, bz2...)")
(description (description
"Utils for streaming large files (S3, HDFS, GCS, Azure Blob Storage, gzip, "Utils for streaming large files (S3, HDFS, GCS, Azure Blob Storage, gzip,
bz2...)") bz2...)")
(license expat))) (license expat)))
...@@ -220,14 +225,13 @@ ...@@ -220,14 +225,13 @@
(method url-fetch) (method url-fetch)
(uri (pypi-uri "spacy" version)) (uri (pypi-uri "spacy" version))
(sha256 (sha256
(base32 (base32
"0qz467an2qgcs6ahr1rpcf38xl45rpkczicslmj0wv4a6ifwziar")))) "0qz467an2qgcs6ahr1rpcf38xl45rpkczicslmj0wv4a6ifwziar"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
(list (list #:tests? #f
#:tests? #f #:phases #~(modify-phases %standard-phases
#:phases #~(modify-phases %standard-phases (delete 'sanity-check))))
(delete 'sanity-check))))
(propagated-inputs (list python-catalogue (propagated-inputs (list python-catalogue
python-cymem python-cymem
python-jinja2 python-jinja2
...@@ -249,9 +253,9 @@ ...@@ -249,9 +253,9 @@
(home-page "https://spacy.io") (home-page "https://spacy.io")
(synopsis "Industrial-strength Natural Language Processing (NLP) (synopsis "Industrial-strength Natural Language Processing (NLP)
in Python") in Python")
(description (description
"Industrial-strength Natural Language Processing (NLP) in Python") "Industrial-strength Natural Language Processing (NLP) in Python")
(license expat))) (license expat)))
(define-public python-srsly (define-public python-srsly
(package (package
...@@ -261,14 +265,11 @@ ...@@ -261,14 +265,11 @@
(method url-fetch) (method url-fetch)
(uri (pypi-uri "srsly" version)) (uri (pypi-uri "srsly" version))
(sha256 (sha256
(base32 (base32
"0a5196rg2ycs6y8zf17ghv72kfy22iy1n930kkqi4rvvca0nb878")))) "0a5196rg2ycs6y8zf17ghv72kfy22iy1n930kkqi4rvvca0nb878"))))
(build-system python-build-system) (build-system python-build-system)
(propagated-inputs (list python-catalogue)) (propagated-inputs (list python-catalogue))
(native-inputs (list python-cython (native-inputs (list python-cython python-mock python-numpy python-pytest
python-mock
python-numpy
python-pytest
python-ruamel.yaml)) python-ruamel.yaml))
(home-page "https://github.com/explosion/srsly") (home-page "https://github.com/explosion/srsly")
(synopsis "Modern high-performance serialization utilities for Python") (synopsis "Modern high-performance serialization utilities for Python")
...@@ -279,40 +280,38 @@ ...@@ -279,40 +280,38 @@
(package (package
(name "python-stanza") (name "python-stanza")
(version "1.3.0") (version "1.3.0")
(source (source (origin
(origin (method url-fetch)
(method url-fetch) (uri (pypi-uri "stanza" version))
(uri (pypi-uri "stanza" version)) (sha256
(sha256 (base32
(base32 "1wqhz82p158vhch3z3vglgy0s8qwr2aj83dm6y5qgkpbximc3l3h")))) "1wqhz82p158vhch3z3vglgy0s8qwr2aj83dm6y5qgkpbximc3l3h"))))
(build-system python-build-system) (build-system python-build-system)
(propagated-inputs (propagated-inputs (list python-emoji
(list python-emoji python-numpy
python-numpy python-protobuf
python-protobuf python-requests
python-requests python-six
python-six python-pytorch
python-pytorch python-tqdm))
python-tqdm))
(native-inputs (list python-check-manifest)) (native-inputs (list python-check-manifest))
(native-search-paths (native-search-paths
(list (list (search-path-specification
(search-path-specification (variable "STANZA_RESOURCES_DIR") (variable "STANZA_RESOURCES_DIR")
(files '("lib/stanza_resources"))))) (files '("lib/stanza_resources")))))
(arguments (arguments
`(#:tests? #f `(#:tests? #f
#:phases (modify-phases %standard-phases #:phases (modify-phases %standard-phases
(replace 'check (replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys) (lambda* (#:key inputs outputs tests? #:allow-other-keys)
(when tests? (when tests?
(add-installed-pythonpath inputs outputs) (add-installed-pythonpath inputs outputs)
(invoke "python" "setup.py" "test")))) (invoke "python" "setup.py" "test")))))))
)))
(home-page "https://github.com/stanfordnlp/stanza") (home-page "https://github.com/stanfordnlp/stanza")
(synopsis (synopsis
"A Python NLP Library for Many Human Languages, by the Stanford NLP Group") "A Python NLP Library for Many Human Languages, by the Stanford NLP Group")
(description (description
"This package provides a Python NLP Library for Many Human Languages, by the "This package provides a Python NLP Library for Many Human Languages, by the
Stanford NLP Group") Stanford NLP Group")
(license asl2.0))) (license asl2.0)))
...@@ -324,12 +323,11 @@ ...@@ -324,12 +323,11 @@
(method url-fetch) (method url-fetch)
(uri (pypi-uri "thinc" version)) (uri (pypi-uri "thinc" version))
(sha256 (sha256
(base32 (base32
"1k9bsl6rsai4szx3s1mw65i87r7r38dxyrq3iv4smjzkhhlji44v")))) "1k9bsl6rsai4szx3s1mw65i87r7r38dxyrq3iv4smjzkhhlji44v"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
(list (list #:tests? #f))
#:tests? #f))
(propagated-inputs (list python-blis (propagated-inputs (list python-blis
python-catalogue python-catalogue
python-confection python-confection
...@@ -346,11 +344,11 @@ ...@@ -346,11 +344,11 @@
(native-inputs (list python-cython python-mypy python-packaging)) (native-inputs (list python-cython python-mypy python-packaging))
(home-page "https://github.com/explosion/thinc") (home-page "https://github.com/explosion/thinc")
(synopsis (synopsis
"A refreshing functional take on deep learning, compatible with your favorite libraries") "A refreshing functional take on deep learning, compatible with your favorite libraries")
(description (description
"This package provides a refreshing functional take on deep learning, compatible "This package provides a refreshing functional take on deep learning, compatible
with your favorite libraries") with your favorite libraries")
(license expat))) (license expat)))
(define-public python-typer-0.5 (define-public python-typer-0.5
(package (package
...@@ -360,8 +358,8 @@ ...@@ -360,8 +358,8 @@
(method url-fetch) (method url-fetch)
(uri (pypi-uri "typer" version)) (uri (pypi-uri "typer" version))
(sha256 (sha256
(base32 (base32
"00zcc8gk37q7j5y0ycawf6699mp5fyk6paavid3p7paj05n1q9mq")))) "00zcc8gk37q7j5y0ycawf6699mp5fyk6paavid3p7paj05n1q9mq"))))
(build-system python-build-system) (build-system python-build-system)
(propagated-inputs (list python-autoflake (propagated-inputs (list python-autoflake
python-black python-black
...@@ -382,9 +380,9 @@ ...@@ -382,9 +380,9 @@
python-shellingham)) python-shellingham))
(home-page "https://github.com/tiangolo/typer") (home-page "https://github.com/tiangolo/typer")
(synopsis (synopsis
"Typer, build great CLIs. Easy to code. Based on Python type hints.") "Typer, build great CLIs. Easy to code. Based on Python type hints.")
(description (description
"Typer, build great CLIs. Easy to code. Based on Python type hints.") "Typer, build great CLIs. Easy to code. Based on Python type hints.")
(license expat))) (license expat)))
(define-public python-typer-cli (define-public python-typer-cli
...@@ -399,8 +397,7 @@ ...@@ -399,8 +397,7 @@
"15phfgb93pd3wgnbpn9kidmvlxiz2z1d7vkh17xj0v1jq2jsgi6j")))) "15phfgb93pd3wgnbpn9kidmvlxiz2z1d7vkh17xj0v1jq2jsgi6j"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
(list (list #:tests? #f))
#:tests? #f))
(propagated-inputs (list python-colorama python-shellingham python-typer)) (propagated-inputs (list python-colorama python-shellingham python-typer))
(home-page "https://github.com/tiangolo/typer-cli") (home-page "https://github.com/tiangolo/typer-cli")
(synopsis (synopsis
......
(define-module (geode packages models) (define-module (geode packages models)
#:use-module ((guix build-system copy) #:select (copy-build-system)) #:use-module ((guix build-system copy)
#:use-module ((guix build-system python) #:select (python-build-system)) #:select (copy-build-system))
#:use-module ((guix download) #:select (url-fetch url-fetch/zipbomb)) #:use-module ((guix build-system python)
#:use-module ((guix gexp) #:select (gexp)) #:select (python-build-system))
#:use-module ((guix licenses) #:select (asl2.0 expat)) #:use-module ((guix download)
#:use-module ((guix packages) #:select (base32 origin package))) #:select (url-fetch url-fetch/zipbomb))
#:use-module ((guix gexp)
#:select (gexp))
#:use-module ((guix licenses)
#:select (asl2.0 expat))
#:use-module ((guix packages)
#:select (base32 origin package)))
(define-public spacy-fr-core-news-sm (define-public spacy-fr-core-news-sm
(package (package
(name "spacy-fr-core-news-sm") (name "spacy-fr-core-news-sm")
(version "3.4.0") (version "3.4.0")
(source (source (origin
(origin (method url-fetch)
(method url-fetch) (uri
(uri "https://github.com/explosion/spacy-models/releases/download/fr_core_news_sm-3.4.0/fr_core_news_sm-3.4.0.tar.gz")
"https://github.com/explosion/spacy-models/releases/download/fr_core_news_sm-3.4.0/fr_core_news_sm-3.4.0.tar.gz") (sha256
(sha256 (base32
(base32 "1vq1lnvqiap25b9h38fa7hnv1n1xfx3703j4z2k1f56a0k4y5vbr")))) "1vq1lnvqiap25b9h38fa7hnv1n1xfx3703j4z2k1f56a0k4y5vbr"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
(list (list #:tests? #f
#:tests? #f #:phases #~(modify-phases %standard-phases
#:phases #~(modify-phases %standard-phases (delete 'sanity-check))))
(delete 'sanity-check))))
(home-page "https://spacy.io/models/fr") (home-page "https://spacy.io/models/fr")
(synopsis "French model for SpaCy") (synopsis "French model for SpaCy")
(description "When they package their stuff correctly, maybe ?") (description "When they package their stuff correctly, maybe ?")
...@@ -32,25 +37,22 @@ ...@@ -32,25 +37,22 @@
(package (package
(name "stanza-fr") (name "stanza-fr")
(version "1.3.0") (version "1.3.0")
(source (source (origin
(origin (method url-fetch/zipbomb)
(method url-fetch/zipbomb) (uri (string-append
(uri "https://huggingface.co/stanfordnlp/stanza-fr/resolve/v"
(string-append version "/models/default.zip"))
"https://huggingface.co/stanfordnlp/stanza-fr/resolve/v" (sha256
version (base32
"/models/default.zip")) "0rjcgvwbxgxgbf3spf367p07bmycfkipn27n6qm63jbq35gx9b3d"))))
(sha256
(base32 "0rjcgvwbxgxgbf3spf367p07bmycfkipn27n6qm63jbq35gx9b3d"))))
(build-system copy-build-system) (build-system copy-build-system)
(propagated-inputs (list stanza-resources)) (propagated-inputs (list stanza-resources))
(arguments (arguments
(list #:install-plan (list #:install-plan #~'(("." "lib/stanza_resources/fr"))))
#~'(("." "lib/stanza_resources/fr"))))
(home-page "https://stanfordnlp.github.io/stanza/download_models.html") (home-page "https://stanfordnlp.github.io/stanza/download_models.html")
(synopsis "French model for Stanza") (synopsis "French model for Stanza")
(description (description
"This package provides a Python NLP Library for Many Human Languages, by "This package provides a Python NLP Library for Many Human Languages, by
the Stanford NLP Group") the Stanford NLP Group")
(license asl2.0))) (license asl2.0)))
...@@ -58,23 +60,19 @@ ...@@ -58,23 +60,19 @@
(package (package
(name "stanza-resources") (name "stanza-resources")
(version "1.3.0") (version "1.3.0")
(source (source (origin
(origin (method url-fetch)
(method url-fetch) (uri (string-append
(uri "https://downloads.cs.stanford.edu/nlp/software/stanza/stanza-resources/resources_"
(string-append version ".json"))
"https://downloads.cs.stanford.edu/nlp/software/stanza/stanza-resources/resources_" (file-name "resources.json")
version (sha256
".json")) (base32
(file-name "resources.json") "00q6jw8sicbsp42dabx3w586jqb0hs4n2wz5c31cs6n5bz5aaa64"))))
(sha256
(base32 "00q6jw8sicbsp42dabx3w586jqb0hs4n2wz5c31cs6n5bz5aaa64"))))
(build-system copy-build-system) (build-system copy-build-system)
(arguments (arguments
(list #:install-plan (list #:install-plan #~'(("resources.json" "lib/stanza_resources/"))))
#~'(("resources.json" "lib/stanza_resources/"))))
(home-page "??") (home-page "??")
(synopsis "Metadata for the static resources for Stanza") (synopsis "Metadata for the static resources for Stanza")
(description (description "???")
"???")
(license asl2.0))) (license asl2.0)))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment