XMPP Summit - 2020-01-31

  1. MattJ

    Might not make the 9:30 train...

  2. winfried

    The others are meeting at 9:00 in the hotel lobby....

  3. pep.

    ok we just missed this train..

  4. MattJ

    I made it

  5. pep.

    ETA 10:20

  6. MattJ


  7. MattJ

    Most people just this minute arrived, so getting drinks and setting up stuff, I doubt we'll get much into anything before you get here

  8. Holger

    But we need your power!

  9. vanitasvitae

    Do we have a pad for day 2?

  10. vanitasvitae

    Or is https://etherpad.wikimedia.org/p/XMPPSummit24Day1 being reused?

  11. MattJ

    Let's make a new one, but link both to each other?

  12. vanitasvitae


  13. MattJ

    They probably won't live here permanently, we can move them over to the wiki at the end

  14. vanitasvitae


  15. vanitasvitae

    Are you opening a new one or should I?

  16. MattJ

    Go for it

  17. vanitasvitae


  18. Guus

    is there anyone (trying to) join remotely?

  19. goffi

    Guus: I'm trying now

  20. Guus

    It should be up and running.

  21. goffi

    sorry I had an emergency, trying now

  22. goffi

    yes it's fine

  23. goffi

    I'm in

  24. Zash

    <hacker voice> I'm in

  25. Zash

    Yes hello

  26. pep.

    Oh you did hear me!

  27. vanitasvitae

    to be sure, IM NG was the next iteration of "Message Routing", right?

  28. vanitasvitae

    Like, the plans to ditch full jid routing from last years summit?

  29. MattJ

    vanitasvitae, correct

  30. vanitasvitae


  31. vanitasvitae

    And the reason for wanting IM NG is exactly?

  32. MattJ

    https://xmpp.org/extensions/xep-0409.html is the initial proposal

  33. vanitasvitae

    What does it solve?

  34. vanitasvitae

    ah, thanks

  35. MattJ

    The routing rules in RFC 6121 were made before Carbons, MAM, etc.

  36. jonas’

    vanitasvitae, several things

  37. MattJ

    We layered Carbons and MAM on top of them to try to fix the gaps with e.g. having multiple devices, sometimes offline

  38. jonas’

    1. if you have IM-NG, clients are kind of responsible for declaring if their message needs to be broadcast and archived (by sending to bare JID), and servers are left with less to guess

  39. jonas’

    2. it removes some "undefined behaviour" wiggle-room from RFC 6121 regarding handling of bare and full-JID messages. specifically, full-JID messages will never be re-routed to a different full-JID under IM-NG, and bare JID messages will always be received by all (online + MAM-capable) resources

  40. MattJ

    They solved 80% of the problems, and added complexity for servers (and clients) that have to handle all the interactions between these different things

  41. vanitasvitae

    alright, thanks for the clarification 😉

  42. MattJ

    IM-NG is essentially and XMPP 2.0 thing without throwing away all the good bits

  43. MattJ

    It will make life easier for developers

  44. dwd@dave.cridland.net

    Yeah. Just listen to how much easier this is.

  45. vanitasvitae

    I can tell 😛

  46. Zash

    Just YOLO flag day it!!!eleven

  47. pep.

    (I'm a bit lost around that re minutes)

  48. vanitasvitae

    Yeah, me too 😀

  49. vanitasvitae

    So basically the discussion is about uncertain rules for routing of error messages, right?

  50. vanitasvitae

    Like, edge case handling?

  51. dwd@dave.cridland.net

    You're welcome to speak aloud. More voices would be useful here I think.

  52. MattJ

    The current rules are not uncertain - error messages for e.g. delivery errors simply go to the sending device only

  53. vanitasvitae

    makes sense to me.

  54. pep.

    I'd appreciate if somebody(tm) with a bit more understanding of the situation could have a look at minutes on this topic

  55. MattJ

    The reason it's complex is purely because we need backwards compatibility with all the existing clients and servers

  56. MattJ

    Once we phase out Carbons and the various hacks around it, things will be a lot simpler

  57. pep.


  58. Intosi

    6121 SP2

  59. pep.

    Service Pack 2 ?

  60. vanitasvitae

    "Redstone Update"

  61. larma

    Something unstable you probably don't want to start using for the first year?

  62. vanitasvitae

    Strange, today there are so many people named "Angie" around...

  63. vanitasvitae

    Kev keeps repeating "I am Angie too" for some reason...

  64. vanitasvitae

    Pretty sure he is lying

  65. Kev sighs

  66. Intosi inserts GIPHY of Picard facepalm

  67. vanitasvitae

    The internet is asking if there are any plans to "secure metadata".

  68. vanitasvitae

    I guess apart from e2ee there is maybe the sender-less messaging on the agenda, right?

  69. goffi

    I've been to Froscon already, it's open to non german, and very nice meeting

  70. goffi

    (and nice food)

  71. vanitasvitae

    I found it less community oriented and more business focussed than FOSDEM.

  72. MattJ

    vanitasvitae, my personal opinion is "no" - there are other solutions that already do a better job at hiding metadata

  73. MattJ

    They make a certain set of compromises to achieve that

  74. flow

    I think we can, besides taking care of the low hanging fruits right now, only start consider securing metadata after the majority of messages exchanged in xmpp is encrypted. One step after another

  75. MattJ

    flow, and how will the server know where to deliver messages, presence?

  76. flow

    MattJ, I am not sure if I expressed myself where well as I think you may misunderstood me

  77. flow

    *very well

  78. flow

    *after the majority of the payload of messages exchange in xmpp

  79. vanitasvitae

    you could at least hide the recipient from the sending server

  80. MattJ

    vanitasvitae, and how would it know where to deliver to?

  81. Kev

    https://xmpp.org/extensions/xep-0430.html https://xmpp.org/extensions/xep-0386.html https://xmpp.org/extensions/xep-0388.html https://xmpp.org/extensions/xep-0198.html

  82. vanitasvitae

    well, it obviously has to know the domain jid, but not the exact recipient

  83. vanitasvitae

    better than nothing

  84. vanitasvitae


  85. MattJ

    vanitasvitae, which goes against the "it's good to run your own server" model that I'm pushing for :)

  86. flow

    I think it is not productive to put much effort into metadata encryption while we do not even encrypt a majority of the payload

  87. MattJ

    because you'll never guess who a message to the domain "matthewwild.co.uk" may be destined for!

  88. vanitasvitae


  89. MattJ

    You /can/ hide metadata, but it requires a drastically different protocol architecture to achieve that (e.g. something like a gossip protocol)

  90. flow

    Also if you are afraid that metadata is an issue, then you probably should not use XMPP at all. That said, if we can protected metadata easily, we sure should consider it.

  91. dwd@dave.cridland.net

    You could do onion routing over XMPP, of course.

  92. MattJ

    You can *already* do XMPP over onion routing

  93. dwd@dave.cridland.net

    Yes, the other way aorund.

  94. Intosi

    So a hyper onion?

  95. flow

    I think you lay every other protocol over xmpp, like vuvuzela.io, how interoperable that would/could be is another question

  96. pep.


  97. pep.

    this is day2 topics

  98. pep.

    oh MattJ did it already :p

  99. pep.

    Wait no

  100. pep.

    Missing the pink dots!

  101. winfried

    And now something totally different... Sunday morning I will be presenting on the XMPP extensions. What extensions do you think I definitely should mention to the Fosdem audience?

  102. pep.

    What kind of extensions are you presenting? What's the goal?

  103. pep.

    Funny XEPs? Unused XEPs? Useful XEPs?

  104. pep.

    (And what for)

  105. vanitasvitae

    Compliance Suite 2020 😉

  106. pep.

    Yeah I was gonna say

  107. winfried

    My goal is that I discovered that developers considering XMPP find the idea of a modulair standard hard to grasp, so I want to do 2 things: explain how the extensions work (as process, idea, not technically) and I want to mention some nice examples on the way.

  108. winfried

    Compliance suite will definetly be mentioned, because it is a good starting point for many usecases

  109. MattJ

    winfried, there are three things that people who vaguely know XMPP are concerned about: 1) too many XEPs 2) stuck in the past 3) fragmentation (different clients implement different XEPs)

  110. MattJ

    So answers are: 1) C Suites / deprecation of old XEPs 2) new XEPs are being submitted and implemented almost every week 3) C Suites aim to solve this

  111. pep.

    (of which 3) is definitely a feature of XMPP.. just that these people don't get it :x)

  112. pep.

    Sorry mismatching parentheses

  113. MattJ

    winfried, heh, someone just linked to your talk in a different MUC :)

  114. vanitasvitae

    I'd also point out that even if you do some centralized service, XMPP is a good choice as there is already a tried and tested codebase + implementations and building on top of that with custom stuff is very easy.

  115. vanitasvitae

    Not that I'd suggest doing centralized stuff, but still

  116. vanitasvitae

    many devs want to

  117. winfried

    MattJ: good points, I'll make the C-suites more dominant in my talk

  118. winfried

    MattJ: what MUC?

  119. MattJ

    winfried, conversations@conference.siacs.eu

  120. winfried

    MattJ: thanks, can't join... ;-)

  121. winfried

    vanitasvitae: yeah, I would also like to mention some specific usecases, like real time text (which is very useful for communication with deaf people)

  122. vanitasvitae

    yeah nice idea

  123. winfried

    So this is your chance to upvote your great but very specialist XEP for a great exotic usecase ;-)

  124. moparisthebest

    vanitasvitae, I've thought about the "hiding metadata" thing a bit, the problem being it's only easy 1 way (hiding the recipient from your own server), hiding your JID from the recipients server requires something totally different and much harder, and then there is the roster problem :'(

  125. moparisthebest

    I still think it's likely worth doing

  126. winfried

    moparisthebest: it would be quite trival to make an onion routing component for XMPP and turn the XMPP network in a onion routing system....

  127. moparisthebest

    that might be the way to go to solve both ways the same, then you just have to hide the roster from your own server and you've got yourself a complete system :)

  128. vanitasvitae

    Coffee break after this?

  129. flow

    Is there any reason why we should give up the possibility to implement bind2 or sasl2 indepentently from each other?

  130. vanitasvitae


  131. Syndace

    If someone knows how to get fresh air into this room, please make it flow

  132. pep.

    (ha ha?)

  133. nyco

    yes, it stinks

  134. vanitasvitae

    yeah flow, go for it!

  135. flow

    I have opened the window in my office, does that help?

  136. vanitasvitae

    You have to also open the <stream/>

  137. Kev

    Could you take some of the fresh air and publish it to pep. please?

  138. Kev

    Are the "IC" trains any different to the "S" trains for my train ticket I bought at the station machine?

  139. Daniel

    since the ticket machine doesn’t let you choose between the two i always assumed the same ticket is fine for both

  140. Kev


  141. jabberjocke

    Any plans for evening?

  142. MattJ


  143. Intosi

    Food as well. There will also be drink, I suspect.

  144. goffi

    Movim has its own sticker sets already

  145. MattJ

    goffi, bundled? hosted somewhere?

  146. goffi

    Initially I think it was shared with BoB, but I'm not sure nowadays, maybe SIMS

  147. nyco

    yes, goffi based on XHTML-IM?

  148. goffi

    nyco: Initially, but I think it's SIMS now

  149. goffi

    not sure, to be checked with edhelas

  150. Zash

    But does it have a sticker store?

  151. goffi

    also about file size and directories, we have already all that with Jingle, I have a component doing this for file sharing

  152. nyco

    and themed emojis for announcers

  153. Link Mauve

    No, Movim ships them and it’s AFAIK not extensible.

  154. goffi

    Zash: no store I think they are bundled with the software

  155. Link Mauve

    He sponsored the drawing of the packs it ships.

  156. goffi

    most of those problems are the same as with avatar

  157. goffi

    so it would be nice to have some kind of factorisation there

  158. goffi

    (different sizes, image formats, etc)

  159. vanitasvitae

    A Security Consideration would be that sticker sets are external data, so the processing must be secure

  160. Daniel

    Yes. Also either leaking your ip or your jid everywhere

  161. Daniel

    That's why having your server copy them over might be interesting

  162. goffi

    I think that we actually need a server side HTTP proxy that user can request with some kind of identifier, instead of something specific to stickers or anything else.

  163. jonas’

    I think mastodon-ish-things have something similar

  164. moparisthebest

    I get the impression other protocols don't really care about leaking private data all over the place

  165. vanitasvitae

    well, centralized systems dont have this issue at all

  166. moparisthebest

    (not saying XMPP should be like that, the opposite)

  167. goffi

    About (X)HTML, please take into account that Movim and SàT are doing blogging, and we already manage a large set of HTML (i.e. not only XHTML-IM). We should probably have a XEP describing good security practive with that.

  168. Syndace

    I think immutable sets and and copying the set to your own server is the way to go

  169. Syndace

    but happy to discuss that later/on list

  170. vanitasvitae

    for privacy yes

  171. vanitasvitae

    for flexibility no 😀

  172. goffi

    I don't get everything that MattJ is saying :-/

  173. jabberjocke

    Intosi: > Food as well. There will also be drink, I suspect. At hotel or other place? Just arrived to Brussels

  174. MattJ

    goffi, the words or the meaning?

  175. nyco

    goffi : 3rd point, he forgot :)

  176. ivucica

    Server-provided stickers would be awesome. Well-known/discoverable pubsub node for sticker collection which lists pubsub nodes containing individual stickers?

  177. goffi

    MattJ: I don't get all the words ^^.

  178. goffi

    Are we willing to do a XHML only for IM, or something also used for blogging?

  179. MattJ

    goffi, my words were saying that 1) clients need to sanitize stuff already anyway 2) XHTML-IM v1 was harder to sanitize because it allows and heavily uses CSS

  180. goffi

    oh no, here comes markdown again :(

  181. goffi

    MattJ: OK, thx

  182. goffi

    Mardown is not a wire format, it's handy and should be use in client, but we should use a real wire format for sharing the content.

  183. goffi


  184. jonas’

    oh dear

  185. jonas’

    message markup all over again?

  186. jonas’

    what goffi says is true

  187. moparisthebest

    goffi, why is XHTML better as a wire format than, say, CommonMark ?

  188. goffi

    what's wrong with https://xmpp.org/extensions/xep-0394.html? I really love this one?

  189. vanitasvitae

    Regarding stickers: The internet notes that Zom (the XMPP version) also supported stickers and may be worth a look.

  190. goffi

    moparisthebest: well, first it's XML, and XMPP is XML

  191. moparisthebest

    that's probably not a reason

  192. Intosi

    goffi: agreed on 394.

  193. goffi

    but I don't say that XHTML-IM is necessarily the best way, I really love XEP-0394, it clean, elegant, and extensible

  194. goffi

    it's*, sorry for the typos

  195. moparisthebest

    you still need some specialized parser/display logic to display both XHTML and CommonMark, neither of which comes by default with XML or XMPP

  196. Daniel

    moparisthebest: is this an encumbrance?

  197. moparisthebest


  198. goffi

    Does anybody takes blogging into consideration, as there are only 2 clients with blogging, I have the feeling it's always ignored.

  199. Daniel

    so we want something like message styling but make it explict that message styling is being used?

  200. vanitasvitae


  201. goffi

    Just for the record, here are the complains I've made about markdown in the past (cc moparisthebest): https://mail.jabber.org/pipermail/standards/2017-October/033592.html

  202. moparisthebest

    goffi, those are all correct as a criticism against "markdown" because it's not specified, but "CommonMark" is specified

  203. pep.

    goffi, I don't like 394 for what larma just said. It's leaving 393-like info in body without saying that these characters can be removed

  204. pep.

    And then we're back to parsing body

  205. pep.

    https://lab.louiz.org/poezio/poezio/issues/3455#note_7769 < what Link Mauve is talking about

  206. larma

    pep., `<span start="9" end="15" fallback="*"><emphasis/></span>`

  207. larma

    ^ solves the issue of knowing if it's fallback or not

  208. goffi

    pep.: I don't get what is left in body with XEP-0394? it's all in <markup> isn't it?

  209. vanitasvitae


  210. vanitasvitae

    the original message in in <body>

  211. vanitasvitae

    <markup> only contains markers where certain formatting starts and ends

  212. goffi

    vanitasvitae: yes the message in <body> and markup in <markup>, that's the point

  213. vanitasvitae

    okay, I only followed with half an eye, maybe I missed something 😛

  214. larma

    goffi, the problem is that you may want to have fallback (using 393) in <body> but not display that when 394 is supported

  215. goffi

    pep.: vanitasvitae: I was meaning what markup is left in the <body>?

  216. goffi

    larma: why do I want a fallback as long as the message body is visible by everybody? Compatible client add style, not others, what's wrong with that?

  217. moparisthebest

    whenever you send the same thing in 2 different formats/languages/whatever that opens up all those security issues that aren't practically solvable :/

  218. goffi

    moparisthebest: that's an issue with legacy XHTML-IM I agree, but not with XEP-0394, the message content is only in <body>, or am I missing something?

  219. pep.

    Sorry I'm not taking much notes atm as I'm taking part in the discussion actively :x

  220. moparisthebest

    yep that's right goffi

  221. goffi

    no worries pep., and thanks a lot (and to the other) for those notes, it helps a log to understand when you're not there.

  222. larma

    goffi, the "formatting" might be an emphasize that is required to transfer the message

  223. larma

    loosing this emphasizing might change the message in some cases

  224. goffi

    Sorry to insist about blogging, but I think we need a XEP to explain best practices to sanitize HTML, and probably a different markup for IM

  225. goffi

    larma: yes, but in this case fallback can cause trouble too, be can go far with that.

  226. larma

    goffi, that's why it's complicated 😉

  227. moparisthebest

    larma, true, like if I'm quoting hitler I likely would not like anyone to think I said it directly instead :/

  228. goffi

    OK so we're talking only about IM markup there, I wanted to be sure, thanks

  229. nyco

    thx goffi

  230. goffi

    (blogging is part of XMPP, even if not IM)

  231. goffi

    the issue also with markdown, is that there are billions of more or less (in)compatible parser, and developer will use the available one

  232. goffi

    so rendering may be different because markdown_js is not exactly the same as markdown_rust or markdown_js

  233. moparisthebest

    goffi, and that's not an issue if you specify CommonMark, right?

  234. moparisthebest

    https://commonmark.org/ that one

  235. Daniel

    i think we can at least make some improvements to the current situation by having clients that use 393 make it explicit that they are doing this

  236. goffi

    moparisthebest: if you are 100% sure that all libs used are commonmark compatible, I guess this would not be an issue, but I highly doubt that we'll have something rendered identically everywhere.

  237. moparisthebest

    goffi, so like HTML then? :D

  238. goffi

    Daniel: yes please make it explicit, that one of the main issue I have with XEP-0393

  239. Daniel

    i mean that's a very easy fix

  240. pep.

    goffi, that's not enough to me, saying explicitely you do 393

  241. goffi

    moparisthebest: We have only 2 HTML rendered left, so it's not an issue anymore ;)

  242. Daniel

    that has no huge side effects

  243. goffi


  244. pep.

    Parts of your message could not be markup

  245. goffi

    maybe 3 with servp

  246. goffi


  247. moparisthebest

    goffi, I'm saying there are plenty of HTML parsers/renderers, and none render quite the same

  248. moparisthebest

    even though HTML is a standard, same situation with CommonMark

  249. moparisthebest

    393 just documents what all XMPP/IRC/email clients have been doing since forever, it never removes characters, it's fine as-is imho

  250. goffi

    pep.: I agree with that, and I was thinking that putting everything in <body> was not necessary anymore with OMEMO now that we have XEP-0420

  251. goffi

    moparisthebest: Again, I'm not saying that (X)HTML is the best option, I'm pushing more for XEP-0394

  252. moparisthebest

    also to clarify cramming CommonMark in <body> without any indication would be awful I think everyone agrees, but as far as a specified transport, it's just as valid as XHTML or any other standard

  253. goffi

    I just need XHTML for blogging (specially when importing external sources like RSS/Atom).

  254. moparisthebest

    also CommonMark doesn't solve any problems with regard to sanitization, it's a XHTML super-set, so all sanitization rules still apply (any valid XHTML is valid CommonMark)

  255. pep.

    goffi, agreed, putting everything in body is not a requirement for future work

  256. vanitasvitae

    I think Marking up messages is a non-problem 😛

  257. goffi

    We should do like with stickers: a syntax server where everybody can upload a syntax parser in a home made language, so everybody can use it favorite one :D

  258. vanitasvitae


  259. vanitasvitae

    markup as a service

  260. goffi

    Thanks a lot for the video which was pretty good this year, and live report on etherpad, here and activityPub

  261. moparisthebest

    Just upload and download webasm binaries goffi ? :D

  262. goffi

    moparisthebest: great :)

  263. moparisthebest

    Secure! Flexible! Trustworthy!

  264. moparisthebest

    Pick only the middle one

  265. jonas’

    so not commonmark or anything like it?

  266. jonas’

    sounds like a plan!

  267. pep.

    And in 5 years everybody wants to do BBCode again

  268. pep.

    markup fallback is going to be tricky

  269. goffi

    except with XEP-0394

  270. pep.

    But then maybe clients will finally understand that they have to translate the input :p

  271. vanitasvitae

    The internet notes "I think it is important to announce to a client that the text is markdown styled. Similar to how OMEMO messages are announced as such. "

  272. pep.

    goffi, 394 + fallback yes, still the same issue

  273. jonas’

    goffi, '394 is meh though. I’d prefer to go back to a restricted XHTML-IM subset.

  274. moparisthebest

    394 isn't bad, but yet-another markup format that no one uses etc etc, specify something like CommonMark where all the hard work is done and call it a day

  275. goffi

    the big difference with XEP-0394 is that markup is separated from body content and meaning, no other solution offers that.

  276. goffi

    so if you don't support it, you still have the plain text body, without having to clean it yourself or to use any kind of fallback.

  277. moparisthebest

    which has it's own set of problems

  278. goffi

    moparisthebest: which ones exactly? I still don't get what's wrong with that.

  279. moparisthebest

    > we should kill all $race_here because they are worthless subhumans

  280. moparisthebest

    except your client doesn't support 394, so it's not rendered like a quote

  281. moparisthebest

    it's rendered like I said it

  282. moparisthebest

    that's... less than ideal

  283. pep.

    I'm stuck outside, nothing at the front, can somebody open? :p

  284. pep.

    all good

  285. goffi

    moparisthebest: well you have usually have context, and you'll have this issue with any markup fallback

  286. moparisthebest

    it's possibly less of an issue if you just display raw CommonMark ? :/

  287. moparisthebest

    maybe raw CommonMark in <body> with a flag stating it's CommonMark, then if it is, you can safely parse/display it as intended, and if not the fallback is just to display it directly?

  288. goffi

    moparisthebest: you're going with XEP-0393 then

  289. moparisthebest

    there is no perfect solution here I think

  290. goffi

    seing that we're all arguing with that for years, I guess the perfect solution if it exists is not obvious :)

  291. moparisthebest

    I just suspect there can never be a perfect solution here: 1. same message, multiple formats/languages - no way to tell if they are different 2. standard non-plaintext format (XHTML/CommonMark/394) - if not supported, plaintext fallback could change meaning or be unreadable for any number of reasons 3. no plaintext fallback - well, no plaintext fallback :)

  292. moparisthebest

    I *think* that about covers all the options?

  293. MattJ

    Why did you italicize 'think'?

  294. moparisthebest

    did I? :)

  295. MattJ

    Oh, you're right, it's underlined in my other client

  296. MattJ

    j/k of course :)

  297. moparisthebest

    bold for me haha

  298. moparisthebest

    man if we can solve "derive meaning from text messages" we'll really have it made

  299. moparisthebest

    I guess we do have a standard already to transfer thoughts/intent/meaning over XMPP https://xmpp.org/extensions/xep-0183.html

  300. Syndace

    Oh, I forgot trading the taxi receipt for money today, shall we do that at fosdem tomorrow?

  301. Syndace

    Oh, I forgot to trade the taxi receipt for money today, shall we do that at fosdem tomorrow?

  302. Daniel

    In the past I think I just emailed them to Guus or something

  303. pep.

    ah right I'll do that as well

  304. Syndace

    ok thanks, will do that

  305. lsdlfjljuie

    I'm somewhat unhappy to see that people just post fotos of other summit participants on social media. I would have expected to be in an environment where people would at least ask beforehand...

  306. dwd

    I can see arguments both ways on that. I would expect the summit itself to be public, and in the record.

  307. moparisthebest

    the video stream was public

  308. zash

    Don't you need permission to publish pictures from people in the picture?

  309. moparisthebest

    do we need an opinion from a lawyer in every jurisdiction again?

  310. zash


  311. zash

    At least in the EU it should be somewhat unified.

  312. zash

    Also see the "Note Well" thing the IETF does.

  313. Martin

    > Don't you need permission to publish pictures from people in the picture? In germany you don't have the right on your picture anymore when you attend public events like concerts, summits and so on. I guess it's more or less the same in other European countries.

  314. moparisthebest

    I don't think anyone would object if you attended the summit wearing a facemask, if you want your privacy