Commit Graph

186 Commits

Author SHA1 Message Date
dependabot[bot] ce33401c70 Bump quote from 1.0.16 to 1.0.17 (#1118)
Bumps [quote](https://github.com/dtolnay/quote) from 1.0.16 to 1.0.17.
- [Release notes](https://github.com/dtolnay/quote/releases)
- [Commits](https://github.com/dtolnay/quote/compare/1.0.16...1.0.17)

---
updated-dependencies:
- dependency-name: quote
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-29 23:28:23 +02:00
dependabot[bot] 0a90dbe7a2 Bump syn from 1.0.89 to 1.0.90 (#1119)
Bumps [syn](https://github.com/dtolnay/syn) from 1.0.89 to 1.0.90.
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/1.0.89...1.0.90)

---
updated-dependencies:
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-28 21:15:43 +00:00
dependabot[bot] 908776edb6 Bump log from 0.4.14 to 0.4.16 (#1107)
Bumps [log](https://github.com/rust-lang/log) from 0.4.14 to 0.4.16.
- [Release notes](https://github.com/rust-lang/log/releases)
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/log/commits)

---
updated-dependencies:
- dependency-name: log
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-23 00:17:49 +01:00
Squirrel 4497c1f686 xcmp-queue / less indexing (#1100)
* less indexing

* removed unneeded clone

Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
2022-03-22 20:56:58 +00:00
dependabot[bot] 5968f743a0 Bump quote from 1.0.15 to 1.0.16
Bumps [quote](https://github.com/dtolnay/quote) from 1.0.15 to 1.0.16.
- [Release notes](https://github.com/dtolnay/quote/releases)
- [Commits](https://github.com/dtolnay/quote/compare/1.0.15...1.0.16)

---
updated-dependencies:
- dependency-name: quote
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-21 15:32:40 +00:00
Squirrel 585089e687 express intent better (#1099) 2022-03-21 14:47:47 +00:00
dependabot[bot] d1c812ab16 Bump parity-scale-codec from 3.1.0 to 3.1.2 (#1096)
Bumps [parity-scale-codec](https://github.com/paritytech/parity-scale-codec) from 3.1.0 to 3.1.2.
- [Release notes](https://github.com/paritytech/parity-scale-codec/releases)
- [Changelog](https://github.com/paritytech/parity-scale-codec/blob/master/CHANGELOG.md)
- [Commits](https://github.com/paritytech/parity-scale-codec/commits)

---
updated-dependencies:
- dependency-name: parity-scale-codec
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-17 21:09:28 +00:00
Amar Singh 6608d61a61 Add babe randomness to relay state proof (#1083)
* add new babe keys to relay storage proof

* persist relay state proof and make pub super to expose to runtime

* use sp trie StorageProof instead of sp state machine Storage Proof

* fmt
2022-03-17 11:02:59 +01:00
dependabot[bot] c5d688778c Bump syn from 1.0.88 to 1.0.89 (#1094)
Bumps [syn](https://github.com/dtolnay/syn) from 1.0.88 to 1.0.89.
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/1.0.88...1.0.89)

---
updated-dependencies:
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-17 11:01:12 +01:00
Squirrel 51d65e73c7 collator-selection pallet tidy (#1093)
* One less collect + clippy suggestions.

* No need to index into collection

* Update pallets/collator-selection/src/lib.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2022-03-16 19:10:41 +00:00
dependabot[bot] 5298a8903e Bump syn from 1.0.87 to 1.0.88 (#1091)
Bumps [syn](https://github.com/dtolnay/syn) from 1.0.87 to 1.0.88.
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/1.0.87...1.0.88)

---
updated-dependencies:
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-15 21:33:39 +00:00
dependabot[bot] 68b7b68add Bump syn from 1.0.86 to 1.0.87 (#1086)
Bumps [syn](https://github.com/dtolnay/syn) from 1.0.86 to 1.0.87.
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/1.0.86...1.0.87)

---
updated-dependencies:
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-14 21:49:18 +00:00
dependabot[bot] 40025f46d7 Bump parity-scale-codec from 3.0.0 to 3.1.0 (#1087)
Bumps [parity-scale-codec](https://github.com/paritytech/parity-scale-codec) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/paritytech/parity-scale-codec/releases)
- [Changelog](https://github.com/paritytech/parity-scale-codec/blob/master/CHANGELOG.md)
- [Commits](https://github.com/paritytech/parity-scale-codec/compare/v3.0...parity-scale-codec-v3.1.0)

---
updated-dependencies:
- dependency-name: parity-scale-codec
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-14 21:08:40 +00:00
Bastian Köcher c744374f5f Directly use the new to_memory_db function (#1080)
This reduces the amount of code a little bit.
2022-03-11 23:01:17 +01:00
Robert Habermeier 544501a241 Companion for primitives consolidation into v2 (#1071)
* branches

* update all primitives references

* fmt

* Update Polkadot & Substrate

* Again

Co-authored-by: Bastian Köcher <info@kchr.de>
2022-03-10 09:33:05 +00:00
Doordashcon 8d96b8673f Add benchmarks for Xcmp QueueConfigData setters (#982)
* add benchmarks for xcmp queue config data setters

* add new benchmarks

* cargo fmt

* added newline

* Additional weights for dmp queue for westmint

* include new weights

* Adding WeightInfo trait and friends

* WeightInfo should be on xcmp rather than dmp pallet

* cargo fmt

* update scripts

* mock weightinfo

* cargo fmt

* canvas kusama is substrate weight

* weights from bm2

* expanding to other similar config functions

* updated weights from bm2

* Revert "updated weights from bm2"

This reverts commit b1702780982c278b44f572c2089b1d7ddc564d76.

* Consolidation to one benchmark

* reran weights

* Update pallets/xcmp-queue/src/lib.rs

Co-authored-by: Ignacio Palacios <ignacio.palacios.santos@gmail.com>

* integrating review feedback

* rerun weights

* Add DispatchClass::Operational

Co-authored-by: Squirrel <gilescope@gmail.com>
Co-authored-by: Ignacio Palacios <ignacio.palacios.santos@gmail.com>
2022-03-07 11:47:24 +00:00
Kai 1f91a3068f Fix panic in pallet-collator-selection benchmarking (#1061)
* register validators in set_invulnerables benchmarking

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2022-03-02 09:24:36 +00:00
Dan Shields 62ccc85392 Update Cumulus to common Cargo formmating scheme (#1050)
* Update throughout with common Cargo formating scheme
2022-03-02 00:07:29 -07:00
wigy a59f02bc3f Companion to "Updating scale to v3" (#1013)
* Updating dependencies

* Adapting code to scale v3

* cargo fmt

* Fix compilation

* Update Cargo.lock

* TIL  exists

Co-authored-by: Bastian Köcher <info@kchr.de>
2022-02-25 13:40:24 +00:00
dependabot[bot] 903f95ee78 Bump proc-macro-crate from 1.1.2 to 1.1.3 (#1044)
Bumps [proc-macro-crate](https://github.com/bkchr/proc-macro-crate) from 1.1.2 to 1.1.3.
- [Release notes](https://github.com/bkchr/proc-macro-crate/releases)
- [Commits](https://github.com/bkchr/proc-macro-crate/commits)

---
updated-dependencies:
- dependency-name: proc-macro-crate
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-23 21:12:32 +00:00
dependabot[bot] 64a0b0e41b Bump hex-literal from 0.2.1 to 0.3.4 (#1028)
Bumps [hex-literal](https://github.com/RustCrypto/utils) from 0.2.1 to 0.3.4.
- [Release notes](https://github.com/RustCrypto/utils/releases)
- [Commits](https://github.com/RustCrypto/utils/compare/hex-literal-v0.2.1...hex-literal-v0.3.4)

---
updated-dependencies:
- dependency-name: hex-literal
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-22 16:49:46 +01:00
Keith Yeung e7d354ca14 Update rand to v0.8.5 (#987)
* Update rand to v0.8.5

* Enable std_rng feature on rand

* Enable std_rng only when std is enabled

* Revert "Enable std_rng only when std is enabled"

This reverts commit 8fb3b72dbd6dc18bc19868b999b5b07cea4b7392.
2022-02-14 23:14:05 +00:00
Bastian Köcher 98f0e87daf CI: Check that rustdocs can be generated (#972) 2022-02-09 13:24:42 +01:00
omadoyeabraham de8462ec2b Ensure invulnerables have associated validator keys before they are set (#812)
* Added check to ensure invulnerables have associated validator keys before they are set

* Added check to ensure invulnerables have associated validator keys before they are set

* Update pallets/collator-selection/src/lib.rs

Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>

* Added test for associated validators when setting invulnerables

* FMT

Co-authored-by: Omadoye Abraham <abraham.o@turing.com>
Co-authored-by: Ricardo Rius <9488369+riusricardo@users.noreply.github.com>
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
Co-authored-by: Bastian Köcher <info@kchr.de>
2022-02-07 16:42:37 +00:00
Doordashcon 5956c70a58 Add Setter for XCMP QueueConfigData (#931)
* add QueueConfigData setter

* update weights

* syntax change

* add test case

* fix Result error

* cargo fmt

* Apply suggestions from code review

Co-authored-by: Alexander Popiak <alexander.popiak@gmail.com>

* update

* one call per set

* cargo fmt

* cargo fmt

* mutate method

* cargo fmt

Co-authored-by: Alexander Popiak <alexander.popiak@gmail.com>
2022-02-05 11:47:31 +00:00
Keith Yeung d793334bbd Add the ability to suspend or resume XCM execution on the XCMP queue (#896)
* Add the ability to suspend or resume XCM execution on the XCMP queue

* Rename QueueActive to QueueSuspended

* Add the ability to suspend the DMP queue

* Rename XCMP to DMP in comments where appropriate

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Add a bypass for XCMP queue suspension

* Revert "Add the ability to suspend the DMP queue"

This reverts commit 363ca09b41e40fce3f2740e7ab78f5c54781ca5c.

* Change controller origin to either root or council-issued origin

* Rename to ControllerOriginConverter

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2022-01-31 12:12:09 +00:00
Sebastian Kunert dacd0aed5e Unify RelayChainInterface error handling and introduce async (#909) 2022-01-25 18:27:54 +01:00
Keith Yeung 8c28d4c669 Companion for paritytech/polkadot#4712 (#901)
* Rename ParentIsDefault to ParentIsAllZeroes

* Fixes

* Create ParentAccounts for respective networks

* Fixes

* Use b"Parent" as the basis for generating parent AccountId

* Fixes

* Use preset parent account ID

* update lockfile for {"polkadot"}

Co-authored-by: parity-processbot <>
2022-01-21 11:40:27 +00:00
Oliver Tale-Yazdi 7b2b99eefe co #4746: Require MaxEncodedLen per default (#917)
* Add `without_storage_info`

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Add `without_storage_info`

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Add `without_storage_info`

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Add `without_storage_info`

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* update lockfile for {"polkadot"}

* Run `cargo update -p sp-io`

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

Co-authored-by: parity-processbot <>
2022-01-20 13:51:37 +00:00
Squirrel cc025953ac Add collator selection tool tips (#900)
* First doc lines should show as tool tips

* Update pallets/collator-selection/src/lib.rs

* Update pallets/collator-selection/src/lib.rs

Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>

* Update pallets/collator-selection/src/lib.rs

Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>

* Update pallets/collator-selection/src/lib.rs

Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>

* moving comment onto storage

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>
2022-01-19 17:42:09 +01:00
Bastian Köcher d988e383dd xcmp-queue: Fix handling of encoded blobs (#889)
* xcmp-queue: Fix handling of encoded blobs

With #701 we tried to fix some infinite loop related to encoded blobs, however that lead actually to
not being able to process encoded blobs at all. The reason for this is that `decode_all` doesn't
consume the given input. The point of this function is that it returns an error if the data couldn't
be decoded or there is still data left. However, this means that the check
`remaining_fragments.len() < last_remaining_fragments.len()` would always fail.

We remove the while loop, because we decode the entire fragment anyway or it fails. Aka, we don't
need to loop here. Next we remove the broken check and we directly reset the
`remaining_fragments` (because `decode_all` doesn't consume anything).

* Restore correct behavior

We need to use a while loop, because there can be multiple `Vec<u8>`s. We also need to use `decode`,
because `decode_all` would otherwise return an error if the input is not empty afterwards.

* Remove unused import
2022-01-19 16:57:03 +01:00
Ignacio Palacios 6f763b5e71 Add set custom header to Seedling Runtime (#846)
* before adding seedling client side

* seedling runtime compiles

* create seedling spec script added

* seedling node & BaseCallFilter fixes

* update AllPalets

* formatting

* CallFilter + SignedExtra + AccountData fix

* XCM removed

* cleanup

* solo-to-para pallet added & before testing

* fix runtime upgrade method

* soloToPara pallet + set header

* clean up

* clean up 2

* signed extension check sudo added

* fmt + cleanup

* Refac code and fixes

* fmt

* Update pallets/solo-to-para/src/lib.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Update pallets/solo-to-para/src/lib.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Update pallets/solo-to-para/src/lib.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* small fixes

* OnValidationData used

* small changes

* Update pallets/solo-to-para/src/lib.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Update pallets/solo-to-para/src/lib.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Update pallets/solo-to-para/src/lib.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* OnValidationData replaced by OnSystemEvent

* fmt + cargo fix

* disable-default-bootnodes for seedling script

Co-authored-by: Ricardo Rius <ricardo@parity.io>
Co-authored-by: Ricardo Rius <9488369+riusricardo@users.noreply.github.com>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2022-01-14 14:21:10 +01:00
Xiliang Chen 167d363087 Companion for substrate#10620 (#894)
* fix tests

* update lockfile for substrate

* update lockfile for {"polkadot"}

Co-authored-by: parity-processbot <>
2022-01-12 12:42:23 +01:00
Bastian Köcher 7fb70d7530 Fix solo to para custom header return (#882)
* Adds an integration test for testing the migration

* Fix the custom validation header use case
2022-01-03 20:14:14 +01:00
zqhxuyuan d89dc7431b minor dmq test (#878)
* minor dmq test

* fmt
2021-12-31 17:46:05 +01:00
Keith Yeung cd32a971a1 Update proc-macro2 to 1.0.36 (#879) 2021-12-28 21:38:20 +01:00
Bastian Köcher 229000c5fc Mock XCM (#876)
* sketch downward messages

* bring in attempt to mock mqc-head from moonbeam

* just patch individual crates

* fing comma

* add some logs

* Holy shit, we actually imported a block!

* Actually mock the message queue chain

* use relay parent number for `sent_at`

* finish moving MQC to primitives

* more complete mock and better config type

* change name

* fix export

* better map types

* fix dependencies after rebase

* try-rejigging branches because this is an override

* try to re-jig for hrmp mcqs

* fix branches

* actually fix branches better

* even better

* Removestray log lines

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Nicer handling of default `ParachainSystem` name

* better docs

* Default MockXcm for people who only who don't care to mock xcm.

* cargo fmt

* trailing commas

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* use the variable for hrmp to

* fix deref

* deduplicate MessageQueueChain

* better docs for MessageQueueChain

* Use `Vec<u8>` instead of `&'static [u8]`

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* cargo fmt

* associated changes for using Vec<u8>

* Unused import

* Fix compilation

Co-authored-by: Joshy Orndorff <admin@joshyorndorff.com>
Co-authored-by: Joshy Orndorff <JoshOrndorff@users.noreply.github.com>
2021-12-24 18:06:36 +01:00
cheme 0256fe73c0 Companion for substrate#9732 (#678)
* state-update4 branch

* new ref

* Update to latest.

* update deps

* switch to host state version

* update

* fmt

* up

* remove trie patch

* remove patch

* fmt

* update

* set state_versions in runtimes

* state version from storage

* state version from storage

* seedling compat

* restore lock

* update lockfile for substrate

* update lockfile for polkadot

Co-authored-by: parity-processbot <>
2021-12-24 11:28:43 +00:00
Keith Yeung d78ea860ec Update serde to 1.0.132 (#871) 2021-12-21 09:15:50 +01:00
Gavin Wood 0f10bb0aea Companion for #10403: Remove Default for AccountId (#842)
* author is Some

* Bump

* Lockfile

* Fixes

* Fixes

* Fixes

* Fixes

* Bump

* Update Cargo.lock

* bump substrate and polkadot

* fmt

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2021-12-14 09:07:51 +00:00
Keith Yeung 308cb3e76b Update serde to 1.0.131 (#853) 2021-12-11 14:10:51 +01:00
Bastian Köcher 6c6802b67c Update to latest Polkadot & Substrate (#850)
* Update to latest Polkadot & Substrate

* More fixes
2021-12-10 12:08:41 +01:00
Gavin Wood 90a7d1146a Companion for #10382 (Insufficient asset quotes and deposits) (#804)
* MaxConsumers

* Fixes

* Fixes

* Fixes

* Fixes

* Bump

* Fixes

* Fixes

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2021-12-09 17:24:32 +01:00
Keith Yeung b5135277f4 Support overweight messages in XCMP queue (#799)
* Support overweight messages in XCMP queue

* Add storage migration logic to XCMP queue pallet

* Check whether required weight is larger than max individual weight first

* cargo fmt

* Add some unit tests

* Remove review question comment
2021-12-08 18:07:08 -08:00
Bastian Köcher 32a86d8ef4 Adds support for returning a custom header from validate_block (#825)
* Adds support for returning a custom header from `validate_block`

This adds support for returning a custom header from `validate_block`. Before this, we always
returned the header of the block that was validated (and still do it by default). However, after
this pr it is possible to set a custom header or better custom head data that will be returned
instead from `validate_block`. This can be for example when a chain wants to fork.

* FMT
2021-12-03 12:49:13 +01:00
Kian Paimani 70ea98995a Integrate try-runtime into cumulus (#793)
* almost integrate

* revert branch changes

* remove extra deps

* some review comments'

* Fix a bunch of stuff

* Update parachain-template/node/Cargo.toml

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Fix

* Fix

* fix benchmark

* fmt

* Remove wrong bench test

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2021-12-02 14:00:54 +01:00
Keith Yeung ad8fa5fc07 Refactor some types in XCMP queue (#813)
* Rename InboundXcmpStatus and its related types

* Rename OutboundXcmpStatus and its relevant types

* Add documentation to the newly created types

* Ensure storage prefixes are kept the same

* Add code comments

* Revert storage name changes

* typo fix

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2021-12-02 00:24:04 +00:00
zjb0807 b51a6fa4cc use double quotes instead of single quotes (#815) 2021-12-01 03:00:11 +00:00
Guillaume Thiolliere 9a76627938 companion for pallet order fix (#711)
* companion

* Run cargo update

Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
2021-12-01 01:51:58 +00:00
zjb0807 71ac3005ae Companion for #10324 - update frame-benchmarking/runtime-benchmarks (#802)
* update frame-benchmarking/runtime-benchmarks

* cargo update

* add more feature flags

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2021-11-30 21:47:09 +01:00