 Hello, my name is Szymon Iquaz and in this presentation I would like to show recent improvements in JS Dialogues since the last conference. And for those who doesn't know what the JS Dialogues is, it's some kind of a framework for sharing UI components between LibreOffice and Collabora Online. The idea behind this is very simple. We take some components like Dialogues and we describe the structure of widgets using the JSON notation which we send to the client, to the browser, where we build native user interface from that. And we also send the events after the user's interaction to the server to get the correct results. We can build, thanks to that, different UI variants. For example, on mobile device we can present differently the same component like sidebar on mobile devices we show as a touch device friendly wizard. Like I said, we use that for different components, for dialogues, sidebar, notebook bar or different pop-ups or drop-downs in calc, but recently we added support for navigator and formula bar. Previously in Collabora Online formula bar was tunneled. What means that we rendered the widget on a canvas, then we send the pixels to the browser. It wasn't very good because if someone uses high DPI screen or different settings, the text was blurry, also the accessibility is not great and also user experience because we just click on the picture. Thanks to conversion to JS Dialogues, we send the actual content of the formula bar so we can build native widgets on the browser side so user has a better experience with interacting with apps, typing, selecting things like that. Other new components enabled for JS Dialogues is Navigator, which is very useful for large documents. It is sent as exactly like sidebar was in the past. For the navigator we had to upgrade some widgets we already had in JS Dialogues. We improved JSON so it contains more information about the entries. We can support now other types of content than text. We can have icons or checkboxes and interact with them on the browser side. We also improved the accessibility because now we can navigate over the tree using the keyboard and also we added annotations so screen readers also interpret correctly the entries. Other new widget is scrolled window, which is used for example in Function Wizard where we have some impression of scrolling the different properties but it works differently. We don't scroll anything but we just react on the scroll bar movement and we change the text inside these controls. Now it's also supported in the online so we can use that Function Wizard using JS Dialogues. Other new feature is custom rendering support for combo box entries. We use that for example for font previews or style previews in the sidebar. So now we can see the rendered fonts in online not only the name. Apart of improving different widgets and porting dialogues we need some optimizations so we are focused on sending less messages and smaller messages. So we replace full invitations of some widgets with smaller actions. So JSON is in that case very small. It contains just a comment what happened. There were some cases where we sent not needed JSON updates like switching context in the sidebar or in tabbed dialogues. Dialogues we sent JSON for the full dialogue for different tabs but it is enough to send that only once. So that was fixed. We did also some caching for different widgets which uses the icon view and the images of different entries. So we don't have to render the same thing for all the users but we reuse something what we already did in the past. On the online side we did some improvements to simplify the layout because previously we generated a lot of containers in containers. And we also used CSS Grid to better align everything. The big topic recently was also the accessibility. So now in our JSON we export also information about relation between labor and the widget. So screen reader can read the area properties we add and correctly interpret the different fields in the dialogues. So that was improved and also we added more and more keyboard support for different widgets. That's all from me. Thank you.