𝕿𝖊𝖈𝖍𝖗𝖎𝖌𝖍𝖙𝖘 Bulletin for Sunday, March 07, 2021 ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ Generated Mon 8 Mar 02:39:52 GMT 2021 Created by Dr. Roy Schestowitz (𝚛𝚘𝚢 (at) 𝚜𝚌𝚑𝚎𝚜𝚝𝚘𝚠𝚒𝚝𝚣 (dot) 𝚌𝚘𝚖) Full hyperlinks for navigation omitted but are fully available in the originals The corresponding HTML versions are at 𝒕𝒆𝒄𝒉𝒓𝒊𝒈𝒉𝒕𝒔.𝒐𝒓𝒈 Latest in 𝒉𝒕𝒕𝒑://𝒕𝒆𝒄𝒉𝒓𝒊𝒈𝒉𝒕𝒔.𝒐𝒓𝒈/𝒕𝒙𝒕 and older bulletins can be found at 𝒉𝒕𝒕𝒑://𝒕𝒆𝒄𝒉𝒓𝒊𝒈𝒉𝒕𝒔.𝒐𝒓𝒈/𝒕𝒙𝒕-𝒂𝒓𝒄𝒉𝒊𝒗𝒆𝒔 Full IPFS index in 𝒉𝒕𝒕𝒑://𝒕𝒆𝒄𝒉𝒓𝒊𝒈𝒉𝒕𝒔.𝒐𝒓𝒈/𝒊𝒑𝒇𝒔 and as plain text in 𝒉𝒕𝒕𝒑://𝒕𝒆𝒄𝒉𝒓𝒊𝒈𝒉𝒕𝒔.𝒐𝒓𝒈/𝒊𝒑𝒇𝒔/𝒕𝒙𝒕 Gemini index for the day: gemini://gemini.techrights.org/2021/03/07/ ╒═══════════════════ 𝐑𝐄𝐂𝐄𝐍𝐓 𝐁𝐔𝐋𝐋𝐄𝐓𝐈𝐍𝐒 ════════════════════════════════════╕ Previous bulletins in IPFS (past 21 days, in chronological order): QmeidW7C3Nfeo5DgSCuymjXFCNx5k84CW3sDm1xEM1A2vP QmYjM6cB6Z4kvYjHhNvikrBtkxxJu73QFcw85MtznCkPZU QmTuWK5M8BKLKV9kTEfz5BQVkRY8kNjTJSzM4eTkGxvs7a QmVi8wWAB5K8XCTEczCW8tSfWokMSix8hkxfK2nsje5r6w QmR1AGsb7QQmjGiYD6vdxmjmBbmnaNAXuQhLGTmvHVW3Us QmSq5YcztpmMR2UuQfL1yBX7bkKXjs7FKyz6UsnMHPq58B QmXW6ZxAhHeW9g5wHY3DTL6JeZrEoXQw1ghASoRyrNHV4K QmbYNQUWNtVhAQYexu4jom3pG639whDzSgSoVmTABMxaX2 QmQvNZS1LAZnMM4hxFg93Fkzav1osAZoLLmACVyNWTvBEG QmP4sJsHWybFCR6L9YwJ4D9c4ty548pLdtooQKSTcnsvBj QmTJDPW4SySqJM91re39cWCksjMPCgmn9cidUgKb9EK8oY QmSw9S6gbPuCY6EoCWq13EveMmEX357wVLwTQEQyXkXLTn QmRLg7W2bYpr1JiQ6rXJd3frzGWwDsyWcVgiT5DQhV2Ma7 QmXwactwdWFj2TLvAXdStVi238in5okXcVFgsCkGsqexMZ QmcSwMjzRJLVJJk1ktjRc1CEDJ92YWeVn9qVE8ATewiQty QmcR4sVbAs9c71Bh9t9M8xCk5YQJAHUKEK9hpNtc3ZUxnk Qmf4okseUL3sX9QU1gV324WnMKDmVEvoX2vboMhRWAVa9A QmW4WcUNmujGK5kcyYfeyVfYpji6GmKLMaxty6WdhcgNhU QmWJmmXoWSvDVv1GXCBeefymKQ4ous4fqKHL8U96jvMRWM QmZABDo4xMH4KexrW2Lkih6fAve7ujxsBUWpbp6uCF4KY7 QmVqgUwgy82Dv9wbRCHDf8Az5JAxCfFrTdgSmUg7JHckhG ╒═══════════════════ 𝐈𝐍𝐃𝐄𝐗 ═══════════════════════════════════════════════════╕ ⦿ When I Discovered People Trafficking in Free/Open Source Software | Techrights ⦿ IRC Proceedings: Saturday, March 06, 2021 | Techrights ⦿ How To Deal With Your Raspberry Spy - Part V: All The Rest | Techrights ䷼ Bulletin articles (as HTML) to comment on (requires login): http://techrights.org/2021/03/07/foss-people-trafficking/#comments http://techrights.org/2021/03/07/irc-log-060321/#comments http://techrights.org/2021/03/07/raspberry-spy-the-rest/#comments ䷞ Followed by Daily Links (assorted news picks curated and categorised): http://techrights.org/2021/03/07/freebsd-13-0-rc1/#comments http://techrights.org/2021/03/07/thunar-4-16-4/#comments ䷩ 𝚕𝚒𝚗𝚎 54 ╒═══════════════════ 𝐀𝐑𝐓𝐈𝐂𝐋𝐄 ═════════════════════════════════════════════════╕ (ℹ) Images, hyperlinks and comments at http://techrights.org/2021/03/07/foss-people-trafficking/#comments Gemini version at gemini://gemini.techrights.org/2021/03/07/foss-people-trafficking/ ⠀⌧ █▇▆▅▄▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ 03.07.21⠀▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▃▄▅▆▇█ ⌧ ✐ When_I_Discovered_People_Trafficking_in_Free/Open_Source_Software⠀✐ Posted in Free/Libre_Software, GNU/Linux, Google at 7:11 pm by Guest Editorial Team Reprinted with permission from Daniel_Pocock Here is an email I received from a woman after a previous election in Australia: I’m emailing you from the Ministerial wing in Parliament House and it feels great. I’m concerned we may end up with Abbott’s office. [http://techrights.org/wp-content/uploads/2021/03/aus_crest_feminin.png] She is referring to Tony Abbott. That’s the former prime minister who decided he_could_be_Minister_for_Women_as_a_side_job. Its odd that we can find the same phenomena from the richest countries to the poorest countries. We can also see the same thing from the largest to the smallest free software organizations. The phenomena I’m referring to: § Men controlling women⠀➾ At FOSDEM 2017, Cat Allman from the Google Open Source Programs Office (Stephanie Taylor’s team) had a discussion with one of the men from Albania. Google offered to be a silver sponsor for OSCAL in May 2017. Google’s logo appears on the OSCAL banner, in the Silver Sponsors section, along with Raiffeisen bank, Red Hat and Wikimedia. [http://techrights.org/wp-content/uploads/2021/03/OSCAL_2017_- _presentations_35_cropped.jpg] Yet there is a problem. At the last minute, when it was too late to change the materials and the budget, Google decided to remove funding from this free software event: Date: May 4, 2017 00:47 From: Cat Allman To: Open Labs Board … snip … Hi [redacted], I wish it was that simple… 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇:-(⦈ Please remove our logo … Google speculated that there may be some technical problems making the payment. Then they stopped replying to any emails from the Albanians. Among other things, OSCAL is one of the last events where security researcher Arjen Kamphuis was invited to speak before_he_disappeared. We don’t know if Google intended to exert some influence by withholding the money, if they had general concerns about the organizers or if it was just a blunder. Nonetheless, they didn’t reply to follow-up emails. At the time this community started looking for help, Google hadn’t paid and they hadn’t given what appears to be a credible reason either. There have been rumours about the organizers using money from sponsors to pay people to attend as “volunteers” and make the event look bigger. Salaries in this region are incredibly low and many students are happy to volunteer in exchange for ten euros and a free lunch. The idea that people receiving cash are volunteers is an illusion that may fool genuine volunteers and sponsors. Chris Lamb, Debian Project Leader, was one of the_visitors_who_appears_to_have been_fooled: Date: 24 May 2017 From: Chris Lamb Just to underline this. It was *extremely* remarkable and commendable that not only did the demographic skew of the organisers about 15-20 years younger than a typical conference, I would wager the gender split was around 70-80% female:male. The Albanian open source community is very healthy indeed. After months of stonewalling from Google, the same Albanians tried something else: they asked me if I could reach out to anybody at Google and simultaneously, they decided to organize a FOSSCamp for August 2017. I wrote to Google and received no reply. § FOSSCamp⠀➾ As I used my blog to promote the FOSSCamp on various Planet sites, including Planet Fedora, Planet Mozilla, Planet Ubuntu and Planet Debian, I feel it is important to follow up and report what really happened. I’m disappointed that some people made decisions forcing these things into the open instead of resolving them privately. Let’s look at some of the communications around the FOSSCamp. In particular, the organizers were using two different names, Open Labs and Ura Design. I asked why volunteers did work to create Open Labs but money from the FOSSCamp goes to Ura Design. The_response: Elio: It allowed us also for more improvising since the decision- making structure of a company is obviously different from a hackerspace. Let’s compare the decision making structures: ____________________________________________________________________________ |Organization|Legal Form |Governance | | | | | |____________|________________________________|______________________________| |Open Labs |Non-profit |Board (3 women : 2 men, female| | | |majority) | | | | | |____________|________________________________|______________________________| |Ura Design |Private company with shareholder|Director with executive | | | |authority | | | | | |____________|________________________________|______________________________| The problem is, all the goodwill from outside sponsors was attracted by the effort of women, as observed by both Lamb and I. Messages promoting the event to sponsors explicitly used the name Open Labs to exploit that goodwill. [http://techrights.org/wp-content/uploads/2021/03/oscal2017.jpg] This comment really nails it: Elio: Ticket Fees didn’t sum up to more than 500 EUR in total which were used to pay for one breakfast, dinner, drinks, snacks and covering some costs for Ura staff (mostly me) for the trip. In other words, men have to be paid. To kickstart the process, they put the names and logos of various organizations on their FOSSCamp web site before having authorization from any other organization. The Debian Project Leader, Chris Lamb, reprimanded them for this: Date: 22 August 2017 In summary, we (or at least Debian did) felt it inappropriate or at least somewhat misleading that we were under a “Supporters” heading. … It therefore it made me uncomfortable for our name to be used where we weren’t sponsoring the event as a whole, not only as a way of being 100% transparent with ourselves at large but also to avoid *any* hint of a suggestion in the free software community that the Debian name was being misleading used to attract other financial sponsors. Yet this was only the tip of the iceberg. In that_forum_thread, they had told me: Elio: As you can see, exactly concerns like these was the reason we decided to organize it as Ura, not as Open Labs. So please, if you have any concerns, address them to us. Open Labs has no affiliation to the event apart being present there. Yet the Open Labs web site had a prominent banner promoting FOSSCamp on their front page: [http://techrights.org/wp-content/uploads/2021/03/openlabs-site-promoting- fosscamp.png] Albanian women had been sending funding requests to various groups, including Fedora, Wikimedia, Mozilla and Debian, asserting their associations with the non-profit Open Labs hackerspace, the female-controlled organization who had attracted so much goodwill at that recent OSCAL conference: Date: 5 August 2017 From: Silva Arapi To: leader@debian.org I’m writing to submit a funding request (costs below) to organize some consecutive Debian focused workshops and localization events during FOSScamp which will be held on Syros island, Greece from 30 of August to 6 September 2017. You can also find a detailed information on the event here: https://wiki.openlabs.cc/faqja/ FOSScamp_Syros_2017/en We at Open Labs Hackerspace have started to actively get more involved with the Debian project as we want it to be one of the main Linux distributions we promote at our hackerspace. We had a considerable presence by the Debian community at the annual conference we organize, Open Source Conference Albania, … To keep up the momentum from those events and satisfy interest in Debian, Redon Skikuli, Giannis Konstantinidis and me (Silva Arapi) thought of joining FOSScamp host some events about Debian This funding request clearly gives the impression that Open Labs, a non-profit, is the event organizer. Yet that was not true, as Elio’s message had told us. A post in the Open Labs forum states that the two male members of the Open Labs board, Elio and Redon, had decided to organize the event through their private company. Their company would collect an attendance fee from volunteers: Redon: there is an early participation fee of 45 euros fee for the participants (deadline 6.08.2017 @ 23.00). After this the late participation fee will be 60 Euros and the latest deadline 10.08.2017 At the OSCAL event, the efforts of woman had generated a lot of goodwill towards the non-profit group. Entrance fees for FOSSCamp would be diverted to a company run by only a subset of the group. Other volunteers would get leftovers. Other organizations also noticed problems. The same people had submitted funding requests to Wikimedia, requesting funds for the same three women, Sidorela, Nafi and Silva. None of these women were members of the Open Labs board. This is where the story becomes more colourful. After so many young people attended OSCAL, why were only three women attending FOSSCamp? It had been organized at the last minute and no other free software group was able to commit to participate at that stage. It looked like the only participants were from Albania, so why was the event so far away on an island of Greece? It was run by the men’s private business, Ura Design, so why were women from Open Labs writing the emails? People began exploring the connections between the organizers and those submitting funding requests. One of the most interesting discoveries is the web site of Elio and Redon’s private business, it shows that people who used the name of Open Labs to request travel funds were Ura Design employees: [http://techrights.org/wp-content/uploads/2021/03/ura-design-silva-sha- 2017.png] [http://techrights.org/wp-content/uploads/2021/03/ura-design-work-week- 2017.png] Remember that this event was asking for a registration fee. The discussion forum shows that this fee didn’t cover anything related to transport, food or accommodation. In other words, it seems that the organizers volunteering to organize were paying themselves, so they were not really volunteers at all. (another volunteer): If I’m correct, there is nothing included in the FOSSCamp ticket price ; no food, no accommodation, no drink, … [http://techrights.org/wp-content/uploads/2021/03/google-logo.jpg] This occurred immediately after Google left a huge hole in their budget. That left me feeling even more concerned about the pressure that Google creates in different groups and the individual volunteers. Wikimedia requests were much the same, the request_from_Silva_to_Wikimedia mentions_Open_Labs_and_not_Ura_Design: Silva: I am an active hactivist, member of Open Labs Hackerspace in Tirana, Albania and during the last two years I’ve organized and participated in different events related to free software, open knowledge, free speech etc. I am an Wikipedian contributor, I … With this registration fee going back to the business of Elio and Redon, Elio was_actively_using_his_own_status_as_a_Wikimedia_member_to_write_messages_of support_for_one_of_the_other_participants. Elio: I support the proposal to have Wiki presence at FOSSCamp as it’s all happening in a relaxed and laid back environment where participants can learn on their own pace and contribute as well. Nafie has been enthusiastic about leading efforts and has always delivered great results in past events. Her curiosity is her greatest strength and I think FOSSCamp is a great opportunity for her to gain experience, but also help others help Wikipedia as well. I am happily supporting her efforts. –[[User:ElioQoshi|ElioQoshi]] ([[User talk: ElioQoshi|talk]]) 21:19, 19 July 2017 (UTC) In the Wikimedia funding request, Elio doesn’t declare that his company is receiving some of the money. He doesn’t mention whether the woman making the request is doing so on behalf of his business, as we saw with the earlier email from Silva. His reference in support of the request appears to be completely impartial. Bemused by this, Debian Developers tried to contact other “volunteers” who they had met in OSCAL and asked them if they were going to FOSSCamp. Many of them said they were not invited and they didn’t know how to get travel funding. Some people told us they were told not to request funding, they had a meeting at the hackerspace and they were told that they have to take turns. Silva, Nafi and Sidorela got this turn. It looks like the FOSSCamp organizers were acting like gatekeepers, allowing their friends, employees and others they may have had conflicts of interest with to make the first requests. This quote from_the_Wikimedia_talk_page makes it even more clear: I see that you, Silva.1994 and Nafie shehu have all submitted requests for travel support from Albania for your participation at FOSScamp Syros 2017. Based on the agenda for this event, it appears that the three of you are collaborating at this event. Generally, in the Travel and Participation Support program, we try to limit the number of requests we fund for any given event. These travel requests didn’t look very big for large organizations like Debian and Wikimedia. For Albanians, these sums of money are huge. Each person is requesting the equivalent of a month’s salary for a student in Albania. On the other hand, the cost of going to Greece was impossible for any Albanian students to pay if they didn’t get funding. This event could only work if every single participant got full funding. A much larger number of people could participate if the event was held in Albania or one of their closest neighbours. When I helped some women to submit their funding requests directly, on at least one occasion I witnessed the local men shouting about it. Shouting at women. § A Code of Conduct for women⠀➾ * Thou shall_not_speak (yes, the title is Confidentiality Agreement for Open Labs Members, what a contradiction) * Thou shall ask for permission before requesting funding from other groups * Thou shall give us a report on every contact you meet in outside events (so we can use them for our business) * Thou shall be expelled if you miss three meetings in a row Various women informed me that this Code of Conduct was being enforced in their group. The behavior of this group may seem outrageous: but in fact it is enabled by many other people turning a blind eye. People from big companies like Google and Canonical/Ubuntu will put on a volunteer t-shirt and try to hide who they really work for. They ask for all kinds of favours from genuine volunteers. Ironically, money donated to empower women is having the opposite effect. Gatekeepers control the access to travel grants and Outreachy internships and use this to exert influence over women. In a previous blog, I suggested that diversity_statistics_fell_by_14%_after_the project_adopted_a_Code_of_Conduct_and_started_to_pay_Outreachy_interns. The evidence in this blog may give hints about the reasons for that. From the US_State_Department_definition_of_Modern_Slavery: Human trafficking can include, but does not require, movement. People may be considered trafficking victims regardless of whether they were born into a state of servitude, were exploited in their home town, were transported to the exploitative situation, previously consented to work for a trafficker, or participated in a crime as a direct result of being trafficked. At the heart of this phenomenon is the traffickers’ aim to exploit and enslave their victims and the myriad coercive and deceptive practices they use to do so. In other words, the 70-80% female:male in Chris Lamb’s comments didn’t represent empowerment, it represented deceptive practices to make women work at OSCAL and coercive practices to prevent them sending funding requests for other events. The bait-and-switch, alternating between a for-profit and non-profit entity, would also appear to be a deceptive practice as defined by the US State Department. In a previous blog about the_harassment_issues_I’ve_assisted_people_with, the second woman quoted was from Albania. I repeat her comments here: Thank you very much for being so supportive. I read the comments on the thread and to be honest I am really sad that Elio said that. It is not true at all. They (Elio & Redon) pretend to support women but on the other hand their behavior towards many of us shows the opposite. Daniel I feel bad because you have encouraged and helped not only me, but so many other people, no matter if they are Open Labs members or not, and also all the attendees from Kosova to learn new things, to work and improve their skills and knowledge. They are doubting your good intentions just to remove the attention from the shady things that they are doing. The free travel comment is really offensive to me and i feel it should be offensive to every woman who is part of the community. I have been contributing and supporting Open Labs since its early days, and I have put a lot of effort and time, I do this because I believe in what it is meant to stand for and without waiting something in exchange, but the situation lately has been not very positive. Daniel has been present by chance in few cases where situations have been very hard to go through. I would definitely like to talk to any of you and tell you more about everything that is happening here, its fine to me whether it is a video call, call or just emails. Please tell me what would be more convenient to you. What we see here is a woman from Albania referring to the same type of behaviour as the woman in Canberra who I quoted at the start of this blog. Women were deceived to feel that they had created something, the non-profit, Open Labs. Goodwill was diverted to something else. We wouldn’t accept Ura Design using the name of some other arbitrary non-profit like Amnesty or WWF. How can they simply borrow the name of Open Labs? The amount of money may seem trivial but the principle of both men and women being equal in an organization is apparently unaffordable even at this level. An email from Arjen Kamphuis before_his_disappearance contained the following comment: I don’t want to get caught up in internal politics but have noticed some strange events around the Dutch visit I’ve organised and co- funded for next month. Will have discusson about that with Openlabs and especially Redon who seems to put himself in positions of control in cases he should not. Yet how can we blame the Albanians for this when they see Google and Canonical employees doing exactly the same thing? Both of those firms are notorious for going under the radar and using private email addresses to communicate with volunteers for projects incidental to their work. █ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⣶⣿⣿⣶⣶⠋⠀⠀⣀⣀⣤⣤⣤⣤⣤⣤⣤⣤⣀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣾⣿⣿⣿⣿⣷⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢳⣄⢠⠇⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⡿⠟⠛⠋⠉⠉⠉⠉⠉⠉⠙⠛⠿⢿⣿⣿⣿⣿⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⣿⣿⣦⡀⠀⠀⢠⣤⣤⣿⣿⣿⣿⣿⣯⣥⠀⠀⠀⠀⠀⠠⠾⣿⣿⠀⠀⠀⠀⠀⠈⠛⢿⣿⣿⣿⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⣿⣿⡿⠿⠿⠀⠀⢀⣼⣿⣿⣿⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠉⢻⣿⣿⣿⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣾⣿⣿⣇⠀⠀⠀⢀⣾⣿⣿⡿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣿⣿⣿⣷⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⣿⣿⣿⣷⣴⣶⣾⣿⣿⣿⣿⣷⣶⣶⣦⣴⣤⣤⣤⣤⣤⣤⠀⣴⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⣿⣿⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⣰⣇⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⣿⣿⣿⣿⣿⣿⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣸⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⣀⣿⣿⣷⣀⡄⠀⠀⠀⠀⠀⡀⠀⠀⢠⣿⣿⣿⣿⣿⣿⣿⣇⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⣤⣶⣶⣶⣶⣶⣤⣄⡀⠀⣰⣇⠀⢠⣿⣿⣿⣿⡤⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⢌⠛⢻⣿⣾⠃⠀⢸⣾⣦⠀⣻⣤⣴⣿⣿⣿⣿⣿⣿⣿⠋⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣿⡿⠆⠀⣻⣿⣿⣿⣴⠁⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⢀⣴⣜⣷⣎⣛⣏⠀⠀⣿⣿⡿⠀⢹⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡄⢠⣼⣿⣿⣿⣷⣦⡀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠈⠿⡟⠿⣟⢁⣰⣷⣶⣺⠻⣃⣸⣿⣿⣿⣿⣿⣿⣿⣿⡿⠁⣿⣿⢾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣠⣌⡛⠿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣙⣿⣿⣿⣿⠉⠙⠁⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⢐⣺⣿⡿⠿⢋⣭⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠺⢿⣯⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣾⣿⠇⠀⣀⣧⢹⣿⡙⣙⣿⣏⣛⣯⣏⣻⣛⢡⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠐⣄⠀⠀⠀⠁⢹⠃⢈⣭⣷⡆⢿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣶⣽⣟⠊⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣼⡿⡆⠀⠛⣿⣾⡟⣁⡿⢿⣿⢰⡿⠿⣿⣇⣾⣿⣿⡿⡀⠀⣠⢀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⣠⣻⣿⣦⠀⡐⢶⣦⣀⡨⠿⢛⣓⠾⣿⣿⣿⣿⣿⣿⣿⣿⢳⣬⣼⠉⠐⠛⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡻⠃⢰⠴⣦⡤⠴⣲⡏⠉⣭⣭⢹⡟⢹⡷⡐⣿⣿⣿⣿⣿⣋⣴⣴⣫⣿⠇⠀⠀⠀⠀ ⠀⡀⠀⠀⣠⠽⢿⣿⣿⢿⢾⣿⡇⣦⣤⣾⣧⣷⣿⣿⣿⣿⣿⣿⣿⢇⢺⣯⣍⠷⣄⡀⢿⣿⣹⣿⣿⣿⣿⣿⣿⣿⢿⣟⠹⣿⣅⠤⠛⢻⣬⣟⣰⠟⢱⢢⣟⣡⣸⣧⠸⣇⣿⣿⣿⣿⣿⣿⡿⠿⠛⣟⡉⠀⠀⠀⣀⡀ ⣎⠾⠇⠀⠀⡠⠟⠉⠁⢼⣽⡟⣠⡶⠻⣟⣃⣴⣿⣿⣿⠟⣶⣿⣿⣼⠟⣿⡏⠀⠀⠙⠻⢽⡿⠁⣙⣿⣿⣿⣿⣷⣌⣻⡴⠋⠀⠀⠀⠀⢛⣿⠏⠀⣾⠃⠻⠿⣿⣿⣿⣿⣿⣿⡿⣿⡀⠉⠛⠀⠀⠙⠣⠀⠀⠘⠒⡹ ⠈⠲⠶⣶⣶⣶⣶⣶⣶⣶⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⣥⣤⣼⣿⣿⣿⣿⣿⣿⣷⣾⣷⣶⣤⡙⣾⣿⡿⠛⠿⣿⣿⣿⣿⣷⣦⣤⣤⣶⣿⣿⣿⣤⣤⣬⣶⣾⣿⣿⣿⣿⣿⣿⣯⣤⣤⣤⣤⣤⣤⣤⣤⣤⣤⠶⠖⠛⠁ ⠀⠀⠀⠀⠀⡉⢻⣿⣿⠉⠉⠉⠉⠛⣿⡟⠛⠛⠛⣛⠻⢿⣿⣿⣿⣭⠽⣭⠭⠤⢤⣬⣉⡙⢷⡙⢿⠑⢄⡐⠉⡿⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣏⠉⠉⣉⠉⠉⢹⣿⡟⢫⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠙⠚⠿⠃⢀⣀⣠⣷⣦⣤⠲⢶⣦⣜⣿⣧⠔⠊⢛⣿⣿⡴⣅⡴⠚⢉⠔⣿⢉⣷⣧⣈⣧⢰⠳⣼⣣⢼⣗⣏⣿⡟⡟⠛⠻⣿⢿⣿⡿⣟⠉⠻⡿⢟⣷⣿⣿⣿⣿⣾⣿⣿⣤⠄⢈⠻⠓⠀⠀⠄⠀⠀⠀ ⠀⠀⢀⣀⣈⣦⠀⠀⢠⣄⠈⠙⠻⣿⣿⢧⣤⣴⠛⢉⢸⣄⣀⠀⠾⣻⣣⣾⢥⣀⡘⣄⡈⣿⣿⡿⢐⡻⣿⢰⡿⠀⠻⣿⣿⣂⡤⢇⣤⡤⢿⣷⣏⡟⠀⠹⣶⣿⡤⠈⣗⡛⣿⣿⣿⣿⡁⣀⣴⠏⣤⣤⣴⣿⣧⣄⠀⠀ ⠀⠀⠉⢻⣿⣿⣷⣷⠤⢽⣧⣤⠒⠚⠙⠁⣾⣿⠆⣿⣿⣝⣡⣤⣄⢛⣿⡇⣈⣾⣿⢦⠹⠿⠟⠀⣿⣿⠹⣿⢴⣿⡆⢻⠻⠟⢀⣹⣷⣿⢺⣿⣏⣦⣶⣦⢨⣿⣿⠔⠿⣿⢸⣿⣿⣿⣿⣿⣷⣶⣿⣿⣿⣿⣿⡛⠀⠀ ⠀⠀⠐⠛⠋⠉⠛⠛⢠⠿⠛⠃⠀⠀⢻⣿⢾⡷⠀⢹⠯⠙⣿⣿⣿⠛⠋⢻⣬⣿⣿⣦⣤⣤⣤⣤⣯⣽⣷⣿⣿⣿⣤⣤⣤⣤⣼⣛⣟⢋⡿⠉⠛⢻⣿⣿⡏⠙⠋⠀⠁⢋⡸⢿⣿⣿⣿⣿⣿⣿⣿⠿⠋⠁⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⡾⠏⢩⣾⡤⠶⠖⠂⢰⣿⣿⣿⣶⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣀⣀⠉⢿⣿⣿⣷⣾⣿⣿⣿⣿⣿⣏⠁⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠁⠀⠀⠉⠃⣴⣿⡁⠛⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠛⢛⣿⣛⣻⣿⣻⣿⣿⡟⢻⣿⡿⠿⣿⣿⣿⣿⣿⣿⣿⣿⡯⠁⣠⣿⣿⣿⣿⣿⡿⠟⠹⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠴⠾⠛⢿⣧⣄⢸⠏⢿⠉⠉⢹⡟⠻⣻⠃⠙⡟⠇⢶⣍⢉⣙⣿⣻⣿⡁⢨⣿⠈⠿⠋⠀⢿⣛⣉⣿⠄⠀⡿⠙⡇⠀⡾⢿⣿⠿⠛⠋⠀⠀⠀⠘⣿⣿⣿⣷⡀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠁⠈⠈⠀⠈⠀⠀⠈⠿⠿⠋⠀⠀⠀⣀⣸⡿⢿⣿⣿⠿⣝⣿⣿⣤⣤⣀⠀⠀⠀⠙⠛⠛⠀⠀⠀⠀⠀⠀⠀⠈⠁⠀⠀⠀⠀⠀⠀⠀⠈⢿⣿⣿⣿⡄⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠒⢿⠿⠛⣫⡴⠟⣹⣿⣤⣼⡟⠹⣧⡀⠈⠛⠷⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⣿⣿⣆⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡾⠋⠀⠀⠀⠈⠁⠀⠀⠀⠈⠿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣿⣿⡿⠆⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠠⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⣇⣀⣀⣀⣀⣀⣀⣀⣀⣀⣀⣀⣠⣤⡄⠀⠀ ⣿⣿⣿⣯⣭⣭⣭⣭⣭⣭⣭⣭⣭⣭⣭⣭⣭⣤⣤⣤⣄⣠⣤⣭⣭⣭⣭⣭⣭⣭⣭⣭⣭⣭⣭⣭⣭⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣶⠿⠟⠛⠛⣛⣛⣛⣛⣛⣛⣛⣉⣉⣉⣉⣉⣉⣉⣭⣭⣤⣤⣤⣤⡄⢰⡆⠀⠀ ⣿⣿⣿⣿⣿⡿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⢸⡇⠀⠀ ⣿⣿⣿⣿⣿⢹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⢿⡟⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⠉⡏⢹⣿⠿⣿⠿⣿⠿⣿⢿⡟⡿⣿⡛⣿⣿⣿⣿⡇⢸⡇⠀⠀ ⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡷⢀⣼⣧⠀⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⢸⣿⢸⡇⣿⢠⣛⠇⣿⡏⠆⡇⣿⣭⣽⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⢸⣿⣿⡇⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡧⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⡘⠛⣼⣷⣭⣧⣥⣶⣥⣷⣿⣴⣼⣿⣿⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣇⠸⣿⠿⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣆⣀⣀⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣉⣉⣯⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⣿⣿⣿⣿⣿⣼⣿⣿⣿⣿⣿⡿⣵⡎⣏⢶⣮⡏⣶⣽⡟⡌⣿⢹⣿⡇⣿⣻⣿⣿⣿⣿⣿⣿⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⡯⢴⢻⠉⢙⠉⢹⠉⠉⠉⣿⣿⣿⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⠿⢇⡟⠷⢎⡇⠿⢻⢡⣭⢹⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⡟⣿⣿⣿⣿⣿⣿⣿⣿⣶⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⣿⣿⣿⣿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠇⣿⡇⠀⠀ ⣿⣿⣿⣿⡇⣟⣿⣟⣛⣛⣛⣛⣛⣛⣛⣛⣛⣛⡛⣛⣛⣛⣛⣛⣛⣛⣛⣛⣿⣻⣻⣿⣿⣿⢼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⡇⣖⣒⣒⣒⣲⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⡆⣿⡇⠀⠀ ⣿⣿⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡄⢸⣿⣾⡍⣿⢹⣻⢿⠫⣯⣿⢻⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⡇⣿⣿⣿⣿⣿⣿⣿⡿⠿⠿⠿⠿⠿⠿⠿⠿⠿⣿⣿⣿⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⣿⣿⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡼⡯⡖⣿⢎⡟⣿⣿⣻⡟⣿⣿⢏⣿⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⡇⣿⣿⣿⣿⣿⣿⣿⡇⡄⢠⠀⡄⠀⠀⠐⡀⠀⣿⣿⣿⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⣿⣿⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡕⢲⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⡇⣿⣿⣿⣿⣿⣿⣿⣧⣤⣤⣤⣤⣤⣤⣤⣠⣤⣿⣿⣿⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⣿⣿⣿⣿⣿⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⡇⣿⣿⡿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠇⣿⡇⠀⠀ ⣿⣿⡿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⡇⣶⣖⣲⣒⣰⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⡆⣿⡇⠀⠀ ⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⣿⣷⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⣿⣿⣿⣿⢹⣼⣿⣿⣿⣿⣿⣿⣿⣏⢿⣿⣿⣿⣟⠷⣛⠩⠽⢻⢷⢻⣿⣿⣿⣿⣿⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⡇⣿⡇⡀⡇⠠⠈⣩⣽⣿⣿⣿⣿⣿⣿⣿⣿⡏⡀⢹⠛⠛⠟⣿⣿⡇⣿⡇⠀⠀ ⣿⣿⡟⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⡟⠈⢿⣿⣿⠕⠊⠀⢂⡭⠴⠮⣯⢿⣿⣿⣿⣿⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⠿⠿⠇⣿⢸⣿⣿⣿⣿⣿⣿⣿⡿⠀⠀⠈⢿⡃⠀⠐⠈⠀⣀⣤⣤⣄⡙⢿⣿⣿⣿⣿⣿⡇⣿⡟⠛⠛⠛⠛⠛⠛⠛⠛⠛⠛⠛⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⡇⠀⠀ ⠀⠀⠀⣿⠘⢈⣻⣿⣿⣿⣿⣿⡟⠷⢄⠒⢮⠅⠁⠀⡴⡔⣿⣿⡿⠟⠋⠘⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣗⣭⣿⣿⣅⣩⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠁⢉⣿⣿⣿⣿⡇⣿⠀⠀⠀ ⣤⣤⠘⣿⠀⠚⠛⢛⠛⠛⠋⠉⠀⠀⠀⠀⠁⠈⠀⢸⣉⠰⣿⣾⣷⡤⠀⣰⣿⣿⣿⣿⣿⣿⣿⣷⣶⣾⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣶⣿⣿⣿⣿⡇⣿⠀⠀⠀ ⣿⣿⢸⣿⡇⣾⣾⣾⡟⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⡈⠛⠻⠿⠛⠋⢀⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠹⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⠀⠀⠀ ⣿⣿⣿⣿⡇⣿⣿⡏⠀⠀⠀⠀⠀⠀⠀⠀⢠⣴⣾⣿⣷⣶⣶⣶⣿⣞⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣭⣭⣭⣭⣽⣿⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⡆⣿⠀⠀⠀ ⣿⣿⣿⡟⣿⣿⠟⠀⠀⠀⠀⠠⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⠀⠀⠀ ⣿⣿⣿⡇⣏⠀⠀⣀⡄⠀⠁⠀⠀⠀⠀⢀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⢿⣿⣿⡿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⠀⠀⠀ ⣿⣿⣿⡇⣿⣷⣿⣿⣇⠀⠀⠀⠀⠀⠀⠀⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣷⣶⣶⣶⣶⣾⣿⣿⣿⣿⣀⣭⣭⣽⣿⣿⠀⣿⠀⠀⠀ ⣿⣿⣿⣷⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠈⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢀⣿⠀⠀⠀ ⣿⣿⣿⣿⢿⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⡿⡿⣿⣛⣿⣿⣿⡿⡿⢿⢿⣿⣿⣿⣿⣿⡿⡿⣿⠿⣿⣿⣿⢰⣿⠀⠀⠀ ⣿⣿⣿⣿⣸⣿⣿⣿⣿⣿⣿⡆⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣶⣶⣾⣿⣿⣿⣿⣵⣦⣥⣤⣤⣿⣿⢸⣿⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⣤⣤⣀⣀⣀⣀⣀⣸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⡿⣿⣿⣿⠛⣽⣿⣿⡿⠛⢿⣿⡿⠛⠿⠿⣿⣿⡿⣿⣿⣿⢸⢟⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣶⣿⣿⣿⣷⣥⣽⣿⣧⠀⠠⣵⣿⣟⣀⠉⢻⣿⢸⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣹⣟⣽⣿⣿⣹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠋⠀⠀⠻⣿⠿⠁⠀⠀⠙⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣛⣛⣛⡛⠻⠿⠿⠿⠿⠿⠿⠿⠟⠛⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⡿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡏⣷⣾⣷⣶⣯⣿⣿⣿⣿⣿⣿⣷⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣜⣟⣯⣯⣭⣿⣿⣧⣭⣽⣿⣿⣿⣿⣿⣿⡇⠖⠂⠂⠆⠐⠲⠆⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⠛⠛⠛⠛⠛⠛⠛⠛⠉⠉⠉⣿⡇⣿⣿⣤⣤⣬⣭⣿⣿⣿⣿⡿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⢹⣿⣿⣿⣿⣿⣿⣿⣿⣽⣭⣭⣭⣭⣭⣭⣭⣽⣭⣭⣭⣭⣭⣭⣭⣭⣭⣭⣿⣿⣯⣭⣽⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠋⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⢹⣇⣀⣀⣤⣤⣤⣤⣤⣤⣤⡄⣭⣥⣭⣭⣭⣭⣍⣉⣉⣉⣉⣁⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⡻⠋⠉⠉⠉⠉⠈⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣦⣀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⢤⣶⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣖⣒⣠⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣼⣦⣄⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣧⣿⣿⣿⣻⡛⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠿⠿⠿⠿⣾⡿⠿⠛⠛⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⡏⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⢀⣹⠟⠛⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢬⣥⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡽⣿⣟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣷⣿⡟⣶⠆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣘⣻⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⢳⡦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⣀⣀⣿⣿⣿⣿⣿⣀⣀⠀⠀⠀ ⠀⣀⣶⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣀⠀ ⣀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⠛⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠛ ⠀⠛⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠛⠀ ⠀⠀⠀⠛⠛⣿⣿⣿⣿⣿⠛⠛⠀⠀⠀ ⠃⠆⢁⠀⢂⠩⠛⣿⣿⣿⣮⡇⢻⣇⠀⣾⢾⣿⣿⣿⣿⣿⣿⣿⣿⣿⡮⠚⠿⣿⣿⡿⡿⡄⠀⠷⠇⠿⠿⠿⠆⠀⡇⠘⠀⠠⣸⣷⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣻⠟⠀⠀⠱⡟⠇⣿⢝⢠⣴⢣⡄⣽⡂⠀⢉ ⣔⠂⣟⠆⠀⠰⢤⣿⡇⡿⣿⣡⣿⣿⣧⡄⠉⢻⣿⣿⣿⣿⣿⣿⣿⣷⣅⣤⣦⣿⣷⣶⣶⡇⠀⢠⠀⣱⣷⣶⠀⠴⢇⠀⠀⣼⣿⣿⣿⣿⣿⣿⡿⣿⣟⢿⡟⡝⢘⠋⠈⢩⠄⠀⠀⠙⠇⠀⠀⡀⡿⢿⢿⣿⣿⣿⣷⣿ ⣿⡆⣸⡀⠆⠀⢸⣿⣧⡀⣿⢛⣻⣿⣿⣿⣷⣼⣿⣿⣿⣿⣿⢿⣿⣷⣿⠟⣿⣿⡆⢀⠀⠀⠀⣿⠀⣿⣿⣿⠀⠀⡁⠀⠀⣿⣿⣿⣿⣿⣿⣿⣧⡆⣨⠈⠻⢀⡁⠀⡀⠈⡠⠀⢀⠀⠀⢀⡆⣤⢩⡂⠉⠉⣻⣿⣿⣿ ⣿⣿⣿⡇⢸⠄⠡⣿⣿⠐⡿⢿⣽⣿⠕⣿⣿⣿⣿⠃⣿⣿⣿⢸⣿⡏⣾⣽⡿⠿⠇⠈⣶⡆⠀⢹⢰⣿⣿⣿⡆⠆⠃⠀⢠⣿⣿⣿⣿⣿⣿⣿⣿⡇⣿⠀⣲⢀⠀⢻⢻⣦⡁⠀⠀⣀⠸⠀⠠⠏⡀⢷⠀⡀⠉⠉⠹⣳ ⣿⣿⣿⡇⠌⠀⠀⠀⠻⡠⠓⢹⣿⣷⢡⢻⣿⣿⣿⡗⢿⣿⣿⠘⣿⣿⣷⠟⠃⣀⣐⡾⠻⢧⣤⣤⣬⣭⠋⠩⡇⠁⠀⠀⢸⣻⣿⣯⣛⣛⢛⣿⣿⣷⡇⢴⣿⡀⢰⣿⠸⠇⠀⠀⠘⠿⣿⣶⣠⠀⠀⠈⠁⣁⠐⡰⠀⢪ ⣿⣿⣿⣿⣦⠀⠀⠀⠀⠰⡄⣸⣿⣿⡝⣿⣿⣿⣿⣇⣘⣋⣠⡾⠟⠭⣰⣒⢀⠡⠀⠀⠠⢼⣿⣿⣿⣿⣽⣾⡇⠀⠀⠀⣚⣿⡿⣿⣩⣝⣛⠻⠻⣿⣧⣿⣿⣷⣼⣿⣤⠀⢀⡀⡇⠸⣿⣿⠛⢀⣤⣤⣀⣀⠄⠉⠀⠀ ⣿⣿⣿⣿⣿⣷⡀⠀⠀⢏⣷⣿⣿⣿⡏⠀⣿⣿⣿⣿⣿⣿⣭⣿⣿⣿⣿⣿⣶⣿⣦⣤⣿⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⢠⣿⣿⠿⢿⣿⡾⡋⠉⠍⢹⣿⣿⣿⣿⣿⣿⣬⡁⡌⣧⡇⠀⠸⠹⠨⢽⡏⣽⣿⢯⣶⣤⣀⢀ ⣿⣿⣿⣿⣿⣿⣧⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⠿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢻⣿⣿⣿⣿⣿⡟⢻⣿⣿⣿⡇⢀⠀⠀⢰⣿⠿⢿⠿⠢⠀⠀⠄⠀⠄⠚⢻⣿⣿⣿⣿⣿⣷⣰⣸⡀⠀⠀⠀⠀⠀⠦⠋⣹⣼⣷⠉⠙⠻ ⣿⣿⣿⣿⣿⣿⣿⡀⢠⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠘⣿⣿⣿⣿⣿⣷⣼⣿⡿⡽⠷⠁⠀⠀⢿⡋⠀⣩⢴⠾⣴⡀⢾⢁⣰⡍⠷⠿⡟⣿⣷⣿⣿⡞⡿⠃⠀⠀⠀⠀⢰⣆⢌⣿⣿⡟⠀⠀⢸ ⣿⣿⣿⣿⣿⣿⣿⣿⡜⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣿⣿⣿⢿⣿⣽⣿⣾⣤⡿⣿⣻⣿⣽⣿⡟⠸⣯⠇⠃⠀⣀⣃⡞⠧⡆⠝⠸⠀⠂⠱⣎⣶⢱⠁⢐⠳⢁⠼⠻⡟⡉⢣⢑⠀⢀⠀⠀⠀⠀⠉⢸⣿⣿⠇⠀⠀⠈ ⠿⢿⣿⣿⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⡿⣟⢿⡿⣿⠉⠁⣿⢓⡙⠳⠃⢱⡛⠏⠝⣛⠀⡅⠐⢟⢷⡰⡯⠩⠜⢘⠰⠀⡆⢰⡆⠏⢒⠢⠐⠓⠀⡜⠀⠓⡲⡴⠛⠹⠶⢀⠁⢀⠀⠀⠀⡰⠀⣿⣿⡿⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⡿⢷⣦⣠⣄⣸⣶⣄⡁⠀⠀⣀⡁⢶⢬⡅⣠⣿⡗⡀⠠⡄⢀⡀⡷⠀⣇⣨⠘⠣⣑⣿⡷⡶⣈⣯⡚⠀⠧⣧⢀⡀⢁⢇⡀⠶⡀⢏⠎⡅⠀⢠⡎⣿⣿⣿⣿⣷⣶⡆⠀⠀ ⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣭⣿⡿⠓⡏⠈⠏⢧⡝⢀⡗⣣⠝⣀⡶⠉⣴⢗⢾⡇⢨⡀⣷⣵⣷⢙⣼⣤⡀⣄⣮⡈⠀⠀⣇⢥⡇⡛⡿⢻⠝⢾⠀⡸⣿⣿⠫⠒⠶⠸⣽⡸⡦⠀⠀⢺⠆⣾⣿⣿⣿⣿⣏⡀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣗⡍⣿⡷⠷⠟⣅⡀⢬⠀⠀⠘⣇⠆⠱⡍⢉⣍⣻⡼⠻⣜⡸⠷⢘⣿⠹⢋⠵⡌⣏⢾⠿⡇⠉⣦⣄⣇⠈⠓⢫⡎⠑⡔⢾⣶⣶⣿⢿⣧⣰⠹⠀⠘⡟⡻⠧⢸⣧⣄⢀⣿⣿⣿⣿⡏⠀⠁⠀⠀ ⣿⣿⣿⣿⡿⣿⣿⣿⣟⠃⠀⢨⢇⢸⢸⣇⠀⠂⢹⡄⠸⠸⠆⢷⣾⣿⣿⠐⡆⢨⠡⣼⣾⡏⣸⠃⣸⡄⠀⠈⣋⡇⢐⡈⠚⣠⣀⣇⢠⡉⣆⡅⠈⠀⣭⣿⢈⢸⢣⣻⣾⣾⠆⠹⠀⠗⠸⡟⣪⢹⣿⣿⣏⠁⠆⢀⠴⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⡀⠨⠑⠇⠈⠼⠅⠀⢠⣀⣠⡄⠀⠎⠈⢻⣿⣿⢸⣃⠘⠰⣴⣷⠽⢺⣷⣿⣦⢈⡇⡉⣷⣼⣇⣱⣯⣼⣯⣸⡐⣿⢧⣴⣿⣷⢣⣼⡼⠉⢖⣽⣱⠆⠀⣞⡀⠐⣤⣏⢸⣿⣿⡇⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣇⣼⣧⠀⠀⠀⠀⠀⠀⠉⠁⠀⠀⠀⠀⠈⠙⠉⠀⠁⠀⠀⠙⠟⠀⠈⢼⣿⡸⣿⣷⠇⢿⣿⣿⠟⣿⡏⢩⣿⡇⢹⣽⣿⣿⣿⣼⣿⡇⢂⣾⣿⣿⠻⣾⣟⠃⡞⠻⠍⣾⣿⣿⠃⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠻⠀⠘⠻⠟⢠⠛⠏⠘⠛⠇⠋⣿⢯⢭⡝⠀⠉⠹⠘⠛⠹⢿⠀⠹⠟⠀⢃⢠⡄⢻⣿⣯⣤⣀⠀⣄⠀⠀ ⣿⣻⣿⣿⣿⣿⣿⣿⣿⣿⣏⣹⣧⡀⠀⠠⣠⡀⢀⠀⠀⠀⠀⠀⠀⡀⣀⡀⣠⣄⠀⢠⢠⠀⠰⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠘⠀⠀⠀⠐⠀⣿⢘⡸⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⡘⡆⢬⠛⣤⢄⣹⣿⣿⣿⣿⣷⣦⣤ ⠄⠭⣿⣿⣟⣛⣯⣭⣤⣩⣘⣽⣿⣶⣾⣿⣿⣿⣶⣾⣷⣶⣶⣤⣶⣿⣿⣷⣿⣯⣄⣸⣿⣿⣷⣾⣼⣤⣠⣤⡀⣀⢠⣤⣶⣴⣴⣦⣀⣰⡄⢾⣿⣷⣶⣦⣤⡀⠀⣰⣄⣼⣿⣿⣷⣿⣿⣧⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷ ⠀⠀⠀⠀⠒⠲⠶⠀⢀⣤⣴⣾⣾⠞⠋⠉⠙⠻⠏⠉⠉⠩⠿⠛⠿⠟⣄⣹⡿⠛⠛⠛⠛⠛⠿⠟⠛⠛⠛⠛⠋⠛⠷⠿⠿⠿⠿⢿⣿⣿⣷⣿⣿⣿⡿⣿⣿⣧⣦⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠀⠴⠆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⣿⣿⡇⠀⠀⠀⠀⣦⣴⣤⠆⠀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠂⠾⠻⡋⠀⠀⠁⠙⠋⠉⢉⢟⣿⣿⣿⣿⣿⣿⣿⣿⣟⣛ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣀⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⡇⠀⠀⠀⠘⢿⣿⡟⡈⠀⠈⠀⢀⣀⣦⠠⢤⡀⠀⠀⠠⠀⠀⠀⠀⠀⠀⠀⠀⠠⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠙⢿⠿⣿⣿⣿⣟⣾⡟⣼ ⠀⠀⣠⣴⣤⠀⠐⠀⠀⠀⠀⠀⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣤⠄⣘⣻⠀⠀⠀⠀⢀⠀⠻⠋⠁⠀⢀⡔⢛⠏⠅⢀⣠⠑⠀⠀⠀⠈⠀⠀⠀⠀⠈⠀⢀⡄⢀⠀⠀⠀⡠⢀⢀⣀⡀⠀⠄⠀⢂⣿⣿⣿⡿⠫⣁⣿ ⠖⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠛⠐⠛⠛⠁⠀⠀⠀⠀⠀⠀⠀⠀⠘⠛⠖⠀⠐⠁⢸⡷⠀⠀⠀⡀⠀⠀⠀⠅⠀⠀⠀⠀⠀⡈⠁⠐⠊⠀⠼⡻⠿⣧⣤⡄⠀⠘⢿⣿⣦⡁⠐⠛⠛ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠾⡿⠷⡀⠀⠀⠀⠀⠀⠀⠀⠀⣄⠀⠀⠀⠀⠀⡀⠀⠚⠀⠀⣀⣬⠙⡁⠀⠀⠉⠉⠉⢷⢆⡀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⣿⣿⣿⣿⣿⣵⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣺⣿⣿⣿⣿⣿⣿⣿⣿⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⡿⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣟⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣿⣿⣿⣿⣿⣯⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣯⣿⣧⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣽⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣏⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣷⣿⣿⣿⡿⣿⣿⣿⣿⣿⣿⣿⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣿⣿⣯⣿⣿⣯⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢭⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣿⣿⣿⣿⣿⣿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣟⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ䷩ 𝚕𝚒𝚗𝚎 837 ╒═══════════════════ 𝐀𝐑𝐓𝐈𝐂𝐋𝐄 ═════════════════════════════════════════════════╕ (ℹ) Images, hyperlinks and comments at http://techrights.org/2021/03/07/irc-log-060321/#comments Gemini version at gemini://gemini.techrights.org/2021/03/07/irc-log-060321/ ⠀⌧ █▇▆▅▄▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ 03.07.21⠀▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▃▄▅▆▇█ ⌧ ✐ IRC_Proceedings:_Saturday,_March_06,_2021⠀✐ Posted in IRC_Logs at 2:21 am by Needs Sunlight 🄸🄼🄰🄶🄴_🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽_⦇H 🄸🄼🄰🄶🄴_🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽_⦇HTML5_logs⦈_ #techrights_log_as_HTML5 #boycottnovell_log_as_HTML5 🄸🄼🄰🄶🄴_🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽_⦇H 🄸🄼🄰🄶🄴_🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽_⦇HTML5_logs⦈_ #boycottnovell-social_log_as_HTML5 #techbytes_log_as_HTML5 🄸🄼🄰🄶🄴_🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽_⦇t 🄸🄼🄰🄶🄴_🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽_⦇text_logs⦈_ #techrights_log_as_text #boycottnovell_log_as_text 🄸🄼🄰🄶🄴_🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽_⦇t 🄸🄼🄰🄶🄴_🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽_⦇text_logs⦈_ #boycottnovell-social_log_as_text #techbytes_log_as_text Enter_the_IRC_channels_now =============================================================================== § IPFS Mirrors⠀➾ CID Description Object type IRC log for  QmPko27aTjb5cyAC2JT4nEwRMUtzg9MxbJjJktmVcSuchh #boycottnovell 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇HTML5 logs⦈ (full IRC log as HTML) IRC log for #boycottnovell  QmeZQeW3ADebtgY2DhhtU69nu4DKzkpdRFK7KRC16iCaVz (full IRC log 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇text logs⦈ as plain/ASCII text) IRC log for #boycottnovell-  QmVXCFTbzvxcUC1ned5aibzBYrpS26ib4bHRHXWGK5paaG social 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇HTML5 logs⦈ (full IRC log as HTML) IRC log for #boycottnovell-  QmbETRpXApaPVxyspagDezdVrWHtaVjWd4TSUsEx928K5x social 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇text logs⦈ (full IRC log as plain/ASCII text) IRC log for  QmeVwVZXZdusjknb4HpGCag9wUG2Waufijv6XnJ6bvAKHP #techbytes 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇HTML5 logs⦈ (full IRC log as HTML) IRC log for #techbytes  QmX4eVQBfRrncABF1HxGYnyGuTFV5toYCJZEix4S9fErqT (full IRC log 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇text logs⦈ as plain/ASCII text) IRC log for  QmdXmhGRgqXSPASrek2d3QEPzPCPmirZMsdZKxiShQRV1G #techrights 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇HTML5 logs⦈ (full IRC log as HTML) IRC log for #techrights  QmenZqKFgxRzjYSPBNaqZZvtws4aYxoCS4vhXXNu2WVtc7 (full IRC log 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇text logs⦈ as plain/ASCII text) 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇IPFS logo⦈ § Bulletin for Yesterday⠀➾ Local_copy | CID (IPFS): QmVqgUwgy82Dv9wbRCHDf8Az5JAxCfFrTdgSmUg7JHckhG ䷩ 𝚕𝚒𝚗𝚎 951 ╒═══════════════════ 𝐀𝐑𝐓𝐈𝐂𝐋𝐄 ═════════════════════════════════════════════════╕ (ℹ) Images, hyperlinks and comments at http://techrights.org/2021/03/07/raspberry-spy-the-rest/#comments Gemini version at gemini://gemini.techrights.org/2021/03/07/raspberry-spy-the-rest/ ⠀⌧ █▇▆▅▄▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ 03.07.21⠀▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▃▄▅▆▇█ ⌧ ✐ How_To_Deal_With_Your_Raspberry_Spy_—_Part_V:_All_The_Rest⠀✐ Posted in BSD, Free/Libre_Software, GNU/Linux at 2:19 am by Guest Editorial Team By Gavin L. Rebeiro § Contents⠀➾ Cover Copyright 1 Acknowledgements 2 Introduction 2.1 Prerequisite Knowledge 2.2 Apparatus 3 Fundamentals 3.1 Communication 3.2 Kernel Ring Buffer 3.3 Drivers 3.4 Operating Systems 3.5 Special Files 4 Doing The Task 4.1 Preparing The Boot Media 4.2 Connecting Physical Components 4.3 Using Picocom 4.4 OS Installation 5 YOU ARE HERE ☞ Thanks 6 OpenPGP Key A Malicious Hardware B Linux Kernel Source Tree Analysis C Digital Multimeter Tests Summary: The final part of a series on liberating the Raspberry Spy from an untrustworthy OS that secretly adds Microsoft keys and proprietary software repositories of Microsoft (see Part_I, Part_II, Part_III, and Part_IV) THIS part is mostly addenda. § Chapter 5: Thanks⠀➾ We’d like to take the opportunity to thank you, the reader. We believe everyone deserves a computing education; however, the topics of computing freedom and how computing affects our basic human rights are neglected in computing education today; at E2EOPS PRESS we strive to change this. Our goal is to inform, educate, and inspire. Computing is also a lot of fun! We want everyone to experience the joys of computing. We hope you enjoyed this issue of our periodical as much as we enjoyed bringing it to you! Our work requires research, equipment, and infrastructure to deliver. We strive for the best quality in all we do. If you would like to support us, there are several ways you can do so. Any support we get from you enables us to bring you the best we possibly can. We distribute all our periodicals via peer-to-peer technology. There are things we publish that some people don’t want out in the open. Thus, if you can contribute to the peer-to-peer sharing, you would be helping us out immensely! If you would like to support us by making a cash donation, we have a Paypal account that you can send donations to: • https://www.paypal.com/donate?hosted_button_id=B5VPZJBKLL2S6 For those that like to use QR codes, you can use the following QR code to donate to our Paypal. If you’d like to donate in some other way, you can send an email to donations@e2eops.io and have a chat with us about it. For encrypted communications, you can use the OpenPGP Key provided in chapter 6. And, as always, happy hacking! § Chapter 6: OpenPGP Key⠀➾ At E2EOPS PRESS, we take your privacy seriously. If you want to send us an encrypted message, you can do so with the following OpenPGP key: -----BEGIN PGP PUBLIC KEY BLOCK----- mQGNBF7JMNYBDACeCfa+NpFSOUOyIKqdZdtIjEZCaLzBKQmnqLJo/5BZZiCrGK8+ MYUfBz6iiEqEJf7N0R6Kg/esyIEy35uYdiLr66fg/sEXHk5eW/9Hanex/Igk9nmg 1+eGo1sk/MQh7lUNydqOHVokhjcPHleUGiJE/F0MjDvs/xTN1HYf1uhmJOZbpL/D oTcTssL1BB2b95QfuUViX7I/+Xoe4VSaxdVlVGGCSI8jAPqb+0PYX6N2yHllFaRI 8D4cQkKpP5z2Y9m65ALWsR0M6GBUIeYe4QzfBVwuPg7TAiSpZWDC3vPIWFsC1zbL NT4y6bxjv9gE0S3GVXZC/bTHuVL3FNrStnMFX0z8E4c19vyo9TyTxXLKC7Qy/dWJ Nf+3tbgNQ7yR8MBwciyQho9MltrIFTz+JXZj7xCM0QiYgTo4rBl9eczaGLZwlOJn sybs3Ia0ZTfm5yQAQ3eJ4yKKkiCjADF6fq6AVgV0D36wgBiZnVa+zbSteamUM7L8 JN4rzqfm587d+/0AEQEAAbQgR2F2aW4gTC4gUmViZWlybyA8Z2xyQGUyZW9wcy5p bz6JAdEEEwEKADsCGwMCHgECF4AFCwkIBwIGFQoJCAsCBBYCAwEWIQTHhRt/mdsE uRCTt6QUP5lU/9Mq/wUCXyPcLAIZAQAKCRAUP5lU/9Mq/xtpC/9nEcxWrB5e3W1o Xl8W9uumnwG5o2ZUYfHtQ+QVpkowdQgEFPLTBicWRPnb61eaT/60hkhH68Gb1oVZ BHHN3YNF9qqQHqOT1iAuP0nidkHXUaz4Bbl0wR8brvY2aJO4l03sOWztQHkAoo+u wNohHM1lwqKYN+HRWm+JyTRxw/YHkYI1Rz1aN9hUNTax1HqAm5fSq+R/VKyUZ9tI 2D93p2PK+c1SEJS1goBnlJu4HW2T7NA7oUboKG0J4h2yBV6WtSgskFEWqYEBzvxw ZaWzooOnJRPc+CibhRuH9VJvegRCkwZcNuZfHBKkh+d30LaJJlpifnu9ADs0PkXx HUsHlgMjUbzjztFEBmAjS8PvKOG2nJxcv362749/M6vI7KP7ktf4i+3wZLe8BC5y hSAAQtLUBC/IratA+4NSI8lxDlNB+rrFTXzYTVGscJWlACCK4l0xaXNC0OBcRosH oFMgSogrXrQ2SsSu8oeVOjx/HOd8tThrCKd2nd40iG5Z3fftzP+5AY0EXskw1gEM ANpbLPGSE9gjT8aAkcK0gIhNwTwR/X9T1YCKViiOYALCzPfGYMQqATSe/J7o/ysO +lAB0B3NExdIbwh3knhoEsXdx9zNz18q827aCdLJVuq9kizXoCkWchJ0QjgacvNe 0jGZ+o3ULIMmnWztGzNixZaAiwzalWghFuiX4pG0su8TYAN1T6DGvdb+F1rx0xo8 tb3T8RaO0VZyji3zBBNXD1ECU6dmi0AJ0zD0S5iRIXIn+QfRR2oJu9ZSR6En7PS1 b4bhJ2OnBE4ZQ3mS4aHPaeIWbeCeq8EuaVQNyv5jT3wD18DIRigOxl9XJFy1IDO+ A45hz9FwxULH1QH5bZXRmkYfcxkLMqoMci0+8XxobpmILjkSHeAo4PR8KTHpNUXf I7rJLpufYRTHf5votrJmgbea5bfnAlSoOXMlN2XZ9oJimOTfyzItCSwb0pkghnW0 Hyo3kd5RbDcZrd6RSSVWo/41gr8SXatlkpbnEYjktFGe2Nxls6qZAgA/lqKrS9ti 7wARAQABiQG8BBgBCgAmFiEEx4Ubf5nbBLkQk7ekFD+ZVP/TKv8FAl7JMNYCGwwF CQPCZwAACgkQFD+ZVP/TKv9XAwv9Heor5YuZalOcXXiGCrqYNHuQJLbDvUpTK6wI t9peV4t6E8oiqb0/0ezLGQSlP8RkBKUkhslVn5M6cDIxdCAlZxUIOjF1tJyHrTua wEayHO5q84tixa00+x2/mmaDy0ddZXc4gITLgZjN4J3e9GUww4N3TUVJTZDPF+mP eFd2HlGj3AHLtNEfsEw4HvYNNzexnom66gdDrrCIBxWRgUD2aRQKxQOquFQt2zYS dgOXVS0eyaN81uqFHVh+tvyBKkrK8D/recaPcCXAFSv9UUcQA6jEFdC9WEjgHD7J nRrCwOGBTZ7IvYO5+rpyh/w8k6eZYhUm3UdXYuPsxaCsSL+OW46DBP0C5sKrhxZK thZOhll4ZYrfX1Vv4awBAB6iMZ0i+i39AQPmpvUviFGUfLkHEEsarHgPDchaOv1p 0xa11jUxU5nkqfiQj5A4h4TMP0q9tGdf1puxRZqwp8T0Jc9uQAm6wUMaaaugiXn+ BQfF5XIfOiXZx9DThhqYwO4WztdEuQINBF87rdYBEAC66OFgJa3p9d6Ets5A3NVm XxXkCBmgIg1HG44bmKz3o2xudRP6o3bbmVI06cmfGAVmKJ0voAVsgHMsTg30iZb3 D/X9iRYTB/1suyYIgP9cRxltLLMTL4LycmrCRCnTJSMThA1V2d5brmmrWcOPmqnT CdbOjUD5OWzGsfIkP0t+Ef4v94j574WAvpGYd7Wf5o30JKNfdOjdLOVFdp6lV9mM FxebC1lZ6uRSeL77/XZJC4ZQ8TzhgsdgnE4M1sKvaDO+DTS3pu7+Dh+ORFQ9TQDP ZuMBpln3UBa1evVR8bF9SgqjGo2Al8K590xGNJEHzj+BGqEKjOVN05uMoplByMdZ pD2lRMdqgIqVXiNtBSBhv1oGQhu5fxW11Xv4Kh5BzuOMLS/0KT2cdlk06eCgWZqT /IM5ipKYpJJgtkJ/0sU+hLq+jilAr3ZhmkxCim+9uYOZ93ypy7QiW8ldbsGEDh5S KcU+qWGNEMHhNwuHY9ChO1hcWi/q5/mZTKXG60/q6RZRI2QxbuKsX3c8GbEea2jU Q+v4zFp/x7G1aPRTRtqOssvBtIikBiKWBEOBwYwqpEjD6IfmWVh8wlJZx/tcBRGF 0FGpyieGAFINaQIjKURm7bHkn4bQwIZkmbAssA6ZHcl9u6/u60155K4ifuf7ChyK 8H5n6vJq4AUxQkA8kADvnwARAQABiQG8BBgBCgAmFiEEx4Ubf5nbBLkQk7ekFD+Z VP/TKv8FAl87rdYCGyAFCQHhM4AACgkQFD+ZVP/TKv9Fwgv+P20Qu7USOJfaUVN4 I52GS6R8veww4aKY16ts3XlIUl3mqbH3KoB1T+YKuqoVrNCtGeXVD0AB+BJxxrQS BFtYq4ZgPnSo7NQST6SWbWhzJmpfuhoInGb9l8v0mwD50DrOPjeZcX7TrQN4jWft OJQkKviCYFCu36xa84FUYxTyvA5V4TpWAgPTUVBpf8BrI2Ktw3Wc1THHqcwIszec Mr/mexDfdCa8G78u3rgX4kZPSGFwaGK339eqlb7rMtspkKQPPmm92lYdfV/icbvw 7iaMAirgYq72qzkuIV6GMUKsTa/1wkJ54yACaLXS9A3NXDVizErWHam9TG/ce/Ll EPUsrXTesrhqZpaHHNxnfiQOXzocrldvvdYOxBeGfMQY7fftX8GgQwMjMi2kracr hWc1mCSMSCerTWCtRfw0CK4Au6881rAAmXDwvjU586ezv1MdBqVmN7eOeeVVGdM1 /+S5QP//oK6MEkAS8y2ZP8A/3iMlYz+SBOUSD0AJ0RZEhkhr =JMTx -----END PGP PUBLIC KEY BLOCK----- § Appendix A: Malicious Hardware⠀➾ While doing research for this issue, I often ran into USB-to-UART bridges of the “FTDI” variety. Upon further digging, an ugly bit of history surfaced. The FTDI modules have a reputation for sabotaging_people’s_hardware. Sadly, we live in a world where this sort of thing is the norm. Pay close attention to the products you buy. You need to practice vigilance in order to defend your computing freedom. Remember, you have control over your wallet. Don’t support malicious actors, if you have the choice (in this case you almost certainly do). § Appendix B: Linux Kernel Source Tree Analysis⠀➾ The directory trees rooted at /sys and /proc are mapping of Linux kernel data structures and interfaces; you can read up on these in the Linux kernel source tree from: • linux/Documentation/filesystems/sysfs.rst • linux/Documentation/filesystems/proc.rst You don’t have a local, up-to-date, copy of the Linux kernel source tree? You really should. Note that some of this documentation is hilariously out-of-date; use the git log on a file to see the last time parts of a file was given an up-date: $ git log -p filename This should give you what you need. Since the Linux kernel is developed with Git, it pays dividends to learn at least the fundamentals of Git. It’s a frequent occurence that people ask me how to make sense of the Linux kernel. You need the following prerequisites: • A familiarity with the C programming language. The syntax is easy to pick up for most people because a lot of the popular programming languages in use today are based on C. Most operating systems today are written in C; the same goes for embedded systems. If you don’t have a good grasp of C, you can kiss any hopes on working on this stuff goodbye. C is not as hard as people make it out to be; just look at real code and don’t waste your time on pointless exercises. Start with the smallest real-world programs you can find – like echo(1); once you get the simple stuff, get more ambitious and look at more complicated things. The following resource is also invaluable to the novice C programmer: C reference. • To make sense of other people’s C code (particularly spaghetti), you need a good source code tagging system. I recommend GNU Global because it works well on most Bourne Shells. Using GNU Global will enable you to look up definitions for things like functions and structs in C code easily. • You need to learn GNU Autotools to automate the workflow of building makefiles and such. The old “./configure && make && make install” ritual stems from GNU Autotools. Learn it and embrace it. You can build truly portable software once you learn the fundamentals of GNU Autotools. You won’t understand head nor tail of embedded programming with the Linux kernel (and several other things) unless you have a grasp on the rudiments of GNU Autotools. • Whether you like it or not, Git is an essential part of Linux kernel development. Without a firm grasp of Git fundamentals, you won’t get anywhere. While you’re at it, you should look into the standalone utilities GNU diff and GNU patch; Git is essentially an abstraction on top of these tools. You should now have enough pointers to begin acquiring knowledge about how to make sense of the Linux kernel (and a whole lot of other things). The aforementioned prerequisites abstract to OS and embedded development and being an effective operator of your computer. These are the tools you really need to know to get anywhere. All of this stuff applies to several other things. Once you start learning them, you’ll see what I mean. It really isn’t a lot to take in. Knowledge of this stuff will last you a lifetime. Don’t fall for the IDE X or framework Y bullshit; those are moving targets and are deliberately broken to keep people reliant on the dictators for “support”. Educate yourself; it’s the only path to computing freedom. Become an operator; don’t be a mindless consumer. § Appendix C: Digital Multimeter Tests⠀➾ As always, follow the instructions in the manual of your Digital Multimeter (DMM). RTFM extra carefully, otherwise you end up with magic smoke (why you were recommended spares). There really are only two simple things you need to test on your UTUB: • Voltage coming out of the UTUB TX and RX pins. • Current from the TX and RX pins. There’s not really much more to be said here. The one bit of general advice is to use a breadboard and some jump wires, if you have access to one; crocodile clip test leads for your DMM also make life easier. Basically, try making sure you don’t short circuit your UTUB by having DMM test leads too close to each other. Make sure the test leads are plugged into the appropriate terminals of your DMM. Always make sure the fuse of a DMM terminal is sufficient for what you’re measuring. You can find GPIO voltage specifications of the Raspberry Spy in the official GPIO guide. Make sure you cross-check with the right CPU model’s datasheet. You may end up needing to buy some resistors to get the right voltage and current. You can find background information useful to the novice hardware hacker from the excellent_Sparkfun_tutorial_on_pull-up_resistors; follow the appropriate links to fill out gaps in your knowledge. However, most UTUBs are usable out-of-the-box (OOTB) so you shouldn’t really have much issue here. But it doesn’t hurt (unless you zap yourself) to get a bit of electronics background knowledge since you’re playing around with wires and electricity! § Index⠀➾ [Editor’s note: this corresponds to the_PDF_version_of_the_document] lsblk -f, 28 sd(4), 34 /dev/ttyUSB0, 23 /proc, 43 /sys, 43 FTDI, 41 apropos(1), 18 cmdline.txt, 29 config.txt, 29 console=fb, 29 cp210x, 23, 24 dmesg(1), 18-20, 22, 25 echo(1), 44 enable_uart=1, 29 grep(1), 20 lsmod(8), 20, 25 lspci -k, 26 lsusb -t, 26 mknod(1), 24 modinfo(8), 19, 20, 23 picocom(1), 17, 24, 32, 33, 35 ttyUSB0, 23, 24 usbcore, 23 usbserial, 23 DMM, 15 EHCI, 20 HCI, 20 idProduct, 25 idVendor, 25 jump wires, 14 kernel ring buffer, 18 KRB, 18 OHCI, 20 PCI, 20 QC, 15 textttmodinfo(8), 25 UART, 17 UTUB, 13, 14 █ ䷩ 𝚕𝚒𝚗𝚎 1325 ╒═══════════════════ 𝐃𝐀𝐈𝐋𝐘 𝐋𝐈𝐍𝐊𝐒 ═════════════════════════════════════════════╕ ⠀⌧ █▇▆▅▄▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ 03.07.21⠀▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▃▄▅▆▇█ ⌧ ✐ Links_7/3/2021:_Sparky_2021.03,_SystemRescue_8.00,_and_FreeBSD_13.0_RC1⠀✐ Posted in News_Roundup at 4:38 am by Dr. Roy Schestowitz 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇GNOME bluefish⦈ § Contents⠀➾ * GNU/Linux o Distributions o Devices/Embedded * Free_Software/Open_Source * Leftovers * § GNU/Linux⠀➾ o § Audiocasts/Shows⠀➾ # ⚓ Browsh:_Fully_Graphical_Text_Based_Browser⠀⇛ There are some weird web browsers out there and this certainly fits into that group, basically browsh is a graphical text based browser designed to but run on a server and SSHed into by people who’s personal connections are too slow to reasonably use the internet. # ⚓ LHS_Episode_#397:_The_Weekender_LXVII⠀⇛ It’s time once again for The Weekender. This is our bi-weekly departure into the world of amateur radio contests, open source conventions, special events, listener challenges, hedonism and just plain fun. Thanks for listening and, if you happen to get a chance, feel free to call us or e-mail and send us some feedback. Tell us how we’re doing. We’d love to hear from you. o § Kernel Space⠀➾ # ⚓ Linux_Kernel_5.12_RC2_Released_Early,_Fixing_the_Scary_Swap File_Bug⠀⇛ The second release candidate of Linux Kernel 5.12 is out early because of a nasty swap file bug. And do not use Linux Kernel 5.12 RC1 for testing, you may lose data. # ⚓ Torvalds_Warns_the_World:_Don’t_Use_the_Linux_5.12-rc1 Kernel⠀⇛ # ⚓ Kernel_prepatch_5.12-rc2⠀⇛ Linus has released 5.12-rc2 a little sooner than would normally be expected due to the problems with 5.12-rc1. “Other than that it all looks pretty normal”. # § Graphics Stack⠀➾ # ⚓ LABWC_Is_The_Newest_Stacking_Wayland_Compositor⠀⇛ The LABWC Wayland compositor advertises itself as an Openbox alternative and just saw its inaugural release. LABWC is a Wayland stacking compositor based on the WLROOTS library engineered by the Sway folks. So while it’s “yet another Wayland compositor”, WLROOTS is doing much of the heavy lifting. # ⚓ X.Org_Foundation_Bows_Out_For_Google_Summer_of_Code 2021⠀⇛ Over the years Google Summer of Code (GSoC) has resulted in some really great projects in the X.Org ecosystem from work in the early days on the open-source Radeon graphics driver stack to VKMS more recently to many other improvements especially as it pertains to open-source graphics drivers / Mesa. But for Google Summer of Code 2021 at least, the organization will not be participating. With rare exceptions, the X.Org Foundation has been a regular fixture of GSoC for as long as Google has been putting it on for more than one decade. It’s resulted in many great contributions not only about the X.Org Server but the X.Org Foundation / FreeDesktop.org ecosystem to the likes of Mesa, Wayland, input, and more. o § Applications⠀➾ # ⚓ Best_Free_Android_Apps:_Termux_–_terminal_emulator_and Linux_environment⠀⇛ There’s a strict eligibility criteria for inclusion in this series. See the Eligibility Criteria section below. Termux offers both a capable terminal emulator and an extremely useful Linux environment (single user) on your Android device. The app provides full-blown versions of Bash, Coreutils and much more. A minimal base system is installed, but the real power comes from the tons of packages available with the APT package manager. # ⚓ Macchina_–_Another_Command_Tool_to_Display_Basic_System Info_in_Linux⠀⇛ Macchina is another command line tool to fetch basic system information in Linux, similar to Neofetch, but focus on performance and minimalism. The software is written in Rust, and it displays basic system information, including hostname, manufacturer, kernel version, uptime, desktop environment, processor, memory / battery status, and more. Macchina is pretty fast, it runs 8.53 ± 0.72 times faster than neofetch! Macchina is a new project in active development. By adding –theme or -t flag, you can specify one of the supported themes. They are so far: default, alt, and long. o § Instructionals/Technical⠀➾ # ⚓ How_To_Install_Google_Cloud_SDK_on_Debian_10_–_idroot⠀⇛ In this tutorial, we will show you how to install Google Cloud SDK on Debian 10. For those of you who didn’t know, The Google Cloud SDK provides users with the ability to access Google Cloud via Terminal. It is a development toolkit that comes with multiple commands that help in managing the resources within the Google Cloud environment. This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you through the step-by- step installation of the Google Cloud SDK on a Debian 10 (Buster). o ⚓ Easy_Way_Install_Blender_3D_On_Linux_Ubuntu!_–_Fosslicious⠀⇛ Blender 3D is a very powerful open source 3D application. Many companies or individuals use this application (based on data from HG Insight) for 3D modeling, animation, or interior design, and many others. Blender 3D is available for various platforms, one of which is Linux. Linux users can install this application using the following methods! o ⚓ Debugging_a_bitbaked_binary⠀⇛ meta-rpm uses groot to build the root file system. Groot will get its own discussion. What I want to talk about here is the steps I used to chase down an error that was happening while generating the root file system. In order to do this, I needed to tweak the groot code. Groot is pulled in via a recipe in the meta-rpm repo. It is checked out from git, and built as part of the bitbake process. o ⚓ How_To_Restore_Or_Recover_Deleted_Commands_In_Linux_–_OSTechNix⠀⇛ In this brief tutorial, we will learn how to restore or recover deleted commands in Linux using coreutils and busybox. o ⚓ How_to_create_your_own_database_on_Linux_|_TechRadar⠀⇛ These days, databases are more routinely associated with powering websites and ecommerce systems. To the casual user they look impenetrable, involving connecting to third-party database servers such as SQL and hiding behind opaque languages like PHP. But at their heart, databases are simple tables of information: each row represents a single record, and its specific characteristics – such as name, colour, or whether it’s currently in your possession or not – are recorded in columns known as fields. If your needs are modest, then you don’t need to learn any programming languages or tackle complex database software to put together a collection of information you can later search in various ways to find what you need from it. o ⚓ Sharing_A_USB_Drive_From_Your_Wi-Fi_Router,_Part_2⠀⇛ In my previous article, I omitted the LXQt desktop environment because I am not well acquainted with it, and was unsure about the status of its “parent” (LXDE). Although LXDE coexists with LXQt and is technically still being maintained, it is living on borrowed time because it has a GTK2 codebase. LXDE’s most recent stable release dates from 2016. LXDE’s founder, Hong Jen Yee (aka “PCMan”), found it impractical to base LXDE on GTK3. GTK3 broke backward compatibility and caused components to become more memory-hungry and slower. So Dr. Hong1 began experimenting with Qt as a base; eventually, his LXDE-Qt project merged with the Razor-qt project (in July 2013). LXQt is now the successor to LXDE. Although a bit rough around the edges compared to LXDE, LXQt is very usable and is progressing towards its goal of reaching version 1.0. (Its current release is 0.16.0). LXQt’s primary goals are simplicity and being light on resources, with sensible default settings that meet most users’ needs. I have been testing the PCLinuxOS LXQt Community Release, created by daniel (Daniel Meiβ-Wilhelm), on a spare partition of my trusty netbook.2 This version resembles a Mini.iso, insofar as it does not include a large collection of applications; however, the applications are well-integrated, responsive and the system is visually appealing. The screenshots were taken from the most recent 2020.11 release. o ⚓ GIMP_Tutorial:_Top_GIMP_Filters,_Part_2⠀⇛ I’ve used this filter (Filters > Blur > Gaussian Blur) to soften photos just a bit, but Davies points out that you can use it to fix a photo problem. Sometimes we want to use the subject of a photo, but not the background. After cutting away the background we’re left with some rough edges on the subject. Gaussian Blur can help minimize them. In this image we have a white flower and many green leaves. Suppose I wanted to add this flower, but not the leaves, to another floral image. o ⚓ Tip_Top_Tips:_How_I_Converted_My_H.264_Video_To_HEVC⠀⇛ Note that on Stream #0:1(eng) the video was indeed encoded in hevc. I have to highlight the significant reduction in file size without losing video and sound quality from the original copy. What I did on the VLC menu was click on Media > Convert / Save (Ctrl+R). On the File tab, click Add then Open the video you want to convert. Once listed, click Convert/ Save. Check that the Source is the actual file you wanted to convert. On the Settings section of the dialog window, you’ll see Profile and a down arrow. Click to change the Profile to Video – H.265 + MP3 (MP4) or you can create your own profile using the (Encapsulation) MP4, (Video codec [enable Video] > Codec) H-265 (Note: also check that the resolution scale is set to either Auto or 1 or you can shrink your video dimensions), (Audio codec [enable Audio] and enable Keep original audio track or as I prefer, change the codec to MPEG 4 Audio (AAC)) … Subtitles? If you’re creating a new profile, do not forget to give it a Profile Name so it’ll be easier to find next time. The last part is the Destination. You will need to click on Browse, navigate to the folder where you want to save your file, and click Save. When all is ready, click Start and wait for VLC to complete the task. Depending on the duration of your video, it may take a couple of minutes or longer. o ⚓ Make_A_Collage_Or_Wordcloud_With_Fotowall⠀⇛ In January, ms_meme posted in the forum that she had been using a program called Fotowall, and was wanting a bit of help. I downloaded it and started talking to her. Turns out that it’s a nifty little program if you want to make a photo collage. It has other features, so I’ll cover some of them, too. It’s a pretty nice little program, but it has some problems and limitations. There’s a beginning screen, which says Create in the center at first. After you’ve saved a project it looks a bit different, listing your previous projects at top left so you can open one if you want. Click on Create. [...] The other choices are Print, PDF or SVG (Scalable Vector Graphics can be edited and manipulated in Inkscape). Setup ONLY lets you enable OpenGL, which is a graphics accelerator. Mine’s working fine right now so I didn’t bother with it. Fotowall is a pretty good program for what it does, but it has some problems. It does the collages pretty well, but the Wordclouds confound me as there seem to be several glitches in the program. If I wanted my words arranged a specific way, however, or a different font, I would fall back to Scribus. There are also a few good internet sites you can use to make Wordclouds. The downside to Fotowall is that it apparently hasn’t had much, if anything, done to it since 2017. Hopefully, they will update and improve it soon. o ⚓ How_to_Mount_Windows_NTFS_Partition_in_Linux⠀⇛ This is quite common for Dual Boot users who use Windows and Linux simultaneously for their work. You can easily mount Windows partitions through File Manager. When you try to mount the NTFS partition from a terminal, you will encounter an error “The disk contains an unclean file system (0, 0). o ⚓ How_To_Install_GNOME_Desktop_on_Manjaro_20_–_idroot⠀⇛ In this tutorial, we will show you how to install GNOME Desktop on Manjaro 20. For those of you who didn’t know, Gnome 3 is an intuitive desktop environment that utilizes a tablet or smartphone-style interface to access applications. Although Gnome is very easy to learn and use, its customization options are quite limited, and it can be difficult to configure. A 64-bit installation of Manjaro running Gnome uses about 447MB of memory. By default, Manjaro installed it as an Xfce4 desktop environment. Installing GNOME Desktop on the Manjaro system is fairly straightforward. There is no need to reinstall your Manjaro Linux system with Manjaro GNOME Edition if you only wish to change the desktop environment. This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you through the step-by-step installation of the GNOME desktop environment on a Manjaro 20 (Nibia). * § Games⠀➾ o ⚓ DIRT_5_Now_Playable_Through_Proton!⠀⇛ Great news, racing fans. Just four months after the release of DIRT 5, I can confirm the game works fine using the latest commit of vkd3d-proton. * § Desktop Environments/WMs⠀➾ o § K Desktop Environment/KDE SC/Qt⠀➾ # ⚓ KDE_Plasma_5.22_Adds_Adaptive_Opacity_+_Will_Avoid_Useless Rendering_When_Screen_Is_Off⠀⇛ KDE developers have been off to a busy March so far with working on adaptive panel opacity support for Plasma 5.22. Another pleasant improvement with that next Plasma release is to avoid rendering work when the screen is off. Some of the KDE improvements for the past week that were noted in Nate Graham’s weekly development summary include: - The KDE Plasma desktop now supports an adaptive panel opacity. The panel and panel applets are more transparent and most will agree should make the desktop look better in Plasma 5.22. # ⚓ KDE_Plasma_5.22_Will_Feature_Adaptive_Transparency⠀⇛ The KDE Plasma desktop will have three new opacity settings starting with the upcoming 5.22 release: Adaptive, Opaque and Translucent. # ⚓ KDE_Code_Formatting⠀⇛ Short history of the ‘KDELIBS’ coding style Once upon a time, in the monolithic KDELIBS world, we had some document describing the KDELIBS coding style. Over the years, that evolved a bit and ended up here as Frameworks Coding Style. As noted there, it is more or less the same stuff Qt does style wise. How was that coding style handled in practice? Actually, this styling was really never enforced on a global scale. During the “we split KDELIBS up into Frameworks” time, on the initial import, the code was once run through astyle to ensure that coding style was kept. But after the initial import, nothing of that sort happened anymore (at least not in some coordinated fashion). Beside, for non-Frameworks, such a mandatory style application never happened. Actually, it was never be agreed that this style is mandatory beside for KDELIBS itself, anyways. Naturally, individual sub-projects/maintainers started to enforce either the stuff linked above or individual similar styles through different means. e.g. in kate.git we noted in the README that we wanted to follow that style. That was it ;=) o § GNOME Desktop/GTK⠀➾ # ⚓ NEXT_STEPS_AFTER_OUTREACHY⠀⇛ Getting selected for the Outreachy program and working at the GNOME foundation in particular, has been one of the biggest blessings I’ve received this year. I’ve met soo many kind people, learnt a lot and gained soo much confidence in myself. It has been nothing short of amazing!! I’m very glad to talk about my overall experience, the things I’ve learnt and what I plan to do next in my career. Let’s dive in !! # ⚓ Nasah_Kuma:_Wrap_Up_blog_post(from_good_to_great)_🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽_⦇:)⦈_⠀⇛ I can’t believe three months went by like three days. It’s the last week of my Outreachy internship @GNOME and there is so much to say. For easy readability, this blog post will have five sections fear, growth, accomplishments, future plans and conclusion. [...] This internship has been an eye opener revealing how much I can do as an individual to improve on the field of software development. GJS is just one of so many projects which needs maintenance and community support. If you are reading this post and wondering if you should contribute to open source, you probably should since it won’t only help the community as a whole but help you improve in particular. To contribute to GJS, follow the guide on this link(https://gitlab.gnome.org/GNOME/gjs/-/ blob/master/CONTRIBUTING.md) and checkout the issues. If you are new to open source, it’s best to take issues tagged newcomer. If you feel that’s not such a good place to start, you can always suggest and create your own issues using the issue tracker. * § Distributions⠀➾ o ⚓ What’s_the_Best_Linux_Distro_for_Enhanced_Privacy_and_Security?⠀⇛ Obviously there’s strong opinions among Slashdot readers. So share your own thoughts in the comments. What’s the best Linux distro for enhanced privacy and security? o § New Releases⠀➾ # ⚓ SystemRescue_8.00_Released_with_Linux_5.10_LTS,_Xfce_4.16, and_Improved_exFAT_Support⠀⇛ SystemRescue 8.00 comes about five months after SystemRescue 7.00, which was the first version to ship with the new name instead of SystemRescueCd. The biggest change in this new release is the inclusion of the long-term supported Linux 5.10 LTS kernel series for improved hardware support. On top of that, SystemRescue 8.00 upgrades the default Xfce desktop environment used for the live session to the latest Xfce 4.16 release, which ships with numerous new features and improvements. o § BSD⠀➾ # ⚓ FreeBSD_13.0-RC1_Now_Available⠀⇛ The first RC build of the 13.0-RELEASE release cycle is now available. Installation images are available for: o 13.0-RC1 amd64 GENERIC o 13.0-RC1 i386 GENERIC o 13.0-RC1 powerpc GENERIC o 13.0-RC1 powerpc64 GENERIC64 o 13.0-RC1 powerpc64le GENERIC64LE o 13.0-RC1 powerpcspe MPC85XXSPE o 13.0-RC1 armv6 RPI-B o 13.0-RC1 armv7 GENERICSD o 13.0-RC1 aarch64 GENERIC o 13.0-RC1 aarch64 RPI o 13.0-RC1 aarch64 PINE64 o 13.0-RC1 aarch64 PINE64-LTS o 13.0-RC1 aarch64 PINEBOOK o 13.0-RC1 aarch64 ROCK64 o 13.0-RC1 aarch64 ROCKPRO64 o 13.0-RC1 riscv64 GENERIC o 13.0-RC1 riscv64 GENERICSD Note regarding arm SD card images: For convenience for those without console access to the system, a freebsd user with a password of freebsd is available by default for ssh(1) access. Additionally, the root user password is set to root. It is strongly recommended to change the password for both users after gaining access to the system. Installer images and memory stick images are available here: https://download.freebsd.org/ftp/releases/ISO- IMAGES/13.0/ The image checksums follow at the end of this e- mail. If you notice problems you can report them through the Bugzilla PR system or on the -stable mailing list. If you would like to use SVN to do a source based update of an existing system, use the "releng/13.0" branch. A summary of changes since 13.0-BETA4 includes: o An update to handle partial data resending on ktls/sendfile has been added. o A bug fix in iflib. o A fix to pf(4) for incorrect fragment handling. o A TCP performance improvement when using TCP_NOOPT has been added. o Several SCTP fixes and improvements. o Several other miscellaneous fixes and improvements. A list of changes since 12.2-RELEASE is available in the releng/13.0 release notes: https://www.freebsd.org/releases/13.0R/ relnotes.html Please note, the release notes page is not yet complete, and will be updated on an ongoing basis as the 13.0-RELEASE cycle progresses. === Virtual Machine Disk Images === VM disk images are available for the amd64, i386, and aarch64 architectures. Disk images may be downloaded from the following URL (or any of the FreeBSD download mirrors): https://download.freebsd.org/ftp/releases/VM- IMAGES/13.0-RC1/ The partition layout is: ~ 16 kB - freebsd-boot GPT partition type (bootfs GPT label) ~ 1 GB - freebsd-swap GPT partition type (swapfs GPT label) ~ 20 GB - freebsd-ufs GPT partition type (rootfs GPT label) The disk images are available in QCOW2, VHD, VMDK, and raw disk image formats. The image download size is approximately 135 MB and 165 MB respectively (amd64/i386), decompressing to a 21 GB sparse image. Note regarding arm64/aarch64 virtual machine images: a modified QEMU EFI loader file is needed for qemu-system-aarch64 to be able to boot the virtual machine images. See this page for more information: https://wiki.freebsd.org/arm64/QEMU To boot the VM image, run: % qemu-system-aarch64 -m 4096M -cpu cortex-a57 -M virt \ -bios QEMU_EFI.fd -serial telnet::4444,server - nographic \ -drive if=none,file=VMDISK,id=hd0 \ -device virtio-blk-device,drive=hd0 \ -device virtio-net-device,netdev=net0 \ -netdev user,id=net0 Be sure to replace "VMDISK" with the path to the virtual machine image. BASIC-CI images can be found at: https://download.freebsd.org/ftp/releases/CI- IMAGES/13.0-RC1/ === Amazon EC2 AMI Images === FreeBSD/amd64 EC2 AMIs are available in the following regions: af-south-1 region: ami-024a37d8ee55504a9 eu-north-1 region: ami-0f7e6ef964131a5c5 ap-south-1 region: ami-0da383cf93cddac9d eu-west-3 region: ami-0c2e5eecf725c8480 eu-west-2 region: ami-07e739abd39787f83 eu-south-1 region: ami-042c036041ab5c683 eu-west-1 region: ami-02b72374c39f164f4 ap-northeast-3 region: ami-06b158bab2dc009b8 ap-northeast-2 region: ami-0fbcb7db014004a7f me-south-1 region: ami-0a5040da848631036 ap-northeast-1 region: ami-0ea2e5573427aa49c sa-east-1 region: ami-0e8ca0e56ecd00395 ca-central-1 region: ami-08503cd732e74743f ap-east-1 region: ami-0fa7c7d12cd5c992f ap-southeast-1 region: ami-0adc820ff9c36b582 ap-southeast-2 region: ami-0f031e3027fe5ed45 eu-central-1 region: ami-0685d9bbc37652517 us-east-1 region: ami-0dc102bfa2a63a6c0 us-east-2 region: ami-0d65407784cf103ac us-west-1 region: ami-0d676e4b02aeac56e us-west-2 region: ami-0f2f2e90ae8956750 FreeBSD/aarch64 EC2 AMIs are available in the following regions: af-south-1 region: ami-00bc7809c32164ef7 eu-north-1 region: ami-079c3b3939e1422f5 ap-south-1 region: ami-09f83dd115907186c eu-west-3 region: ami-0b466ac2ccb1d9a17 eu-west-2 region: ami-03127626a3b795617 eu-south-1 region: ami-04b543c7eca712cb2 eu-west-1 region: ami-04bec8381d23b2d33 ap-northeast-3 region: ami-08ec822521c26b950 ap-northeast-2 region: ami-08b8dd381dcc36d65 me-south-1 region: ami-07253323150004fb7 ap-northeast-1 region: ami-0979ee58e90456542 sa-east-1 region: ami-06effcb873d7718ef ca-central-1 region: ami-0c5838a8f4369ddb8 ap-east-1 region: ami-0ee5d390ccfa85ec5 ap-southeast-1 region: ami-0bda890b388931e8e ap-southeast-2 region: ami-069ccae98ade21bc2 eu-central-1 region: ami-0c06b28ffd66f0a3c us-east-1 region: ami-04f0d8aef11064219 us-east-2 region: ami-022f3e436ebcf74f2 us-west-1 region: ami-037a2837218ac2a61 us-west-2 region: ami-0f0a390fdd1ca6fba === Vagrant Images === FreeBSD/amd64 images are available on the Hashicorp Atlas site, and can be installed by running: % vagrant init freebsd/FreeBSD-13.0-RC1 % vagrant up === Upgrading === The freebsd-update(8) utility supports binary upgrades of amd64 and i386 systems running earlier FreeBSD releases. Systems running earlier FreeBSD releases can upgrade as follows: # freebsd-update upgrade -r 13.0-RC1 During this process, freebsd-update(8) may ask the user to help by merging some configuration files or by confirming that the automatically performed merging was done correctly. # freebsd-update install The system must be rebooted with the newly installed kernel before continuing. # shutdown -r now After rebooting, freebsd-update needs to be run again to install the new userland components: # freebsd-update install It is recommended to rebuild and install all applications if possible, especially if upgrading from an earlier FreeBSD release, for example, FreeBSD 11.x. Alternatively, the user can install misc/compat11x and other compatibility libraries, afterwards the system must be rebooted into the new userland: # shutdown -r now Finally, after rebooting, freebsd-update needs to be run again to remove stale files: # freebsd-update install # ⚓ FreeBSD_13.0-RC1_Released_With_TCP_Performance_Improvement, Other_Fixes⠀⇛ With plans of formally releasing FreeBSD 13.0 at month’s end, FreeBSD 13.0-RC1 is available this weekend and on-schedule for helping to test and evaluate this forthcoming major BSD operating system update. Over the prior betas, FreeBSD 13.0-RC1 has a TCP performance improvement when using TCP_NOOPT, SCTP fixes and improvements, and a variety of other low- level fixes and improvements. But at this stage most of the additions are mundane. o § PCLinuxOS/Mageia/Mandriva/OpenMandriva Family⠀➾ # ⚓ Two_PCLinuxOS_Family_Members_Finally_Meet⠀⇛ I know that the question of meeting other PCLinuxOS users has, again, recently come up in the PCLinuxOS forums. While the middle of a pandemic might not be the best time to meet up with other PCLinuxOS users, it can be the perfect time to start planning a meeting for once this pandemic is in our rearview mirror. Meemaw and I, despite having “worked together” on The PCLinuxOS Magazine for many years, have never met face-to-face. We’ve burned up the email wires, and always do. We’ve “talked” extensively on IRC. We’ve texted each other on our cell phones. We’ve even talked to one another on the telephone. We are planning/hoping to get together for a trip to the Kansas City Zoo, just as soon as the weather turns decent. Even though Meemaw grew up in the Kansas City area, she hasn’t been to the Kansas City Zoo in many, many years. If you live near another PCLinuxOS user, reach out and try to meet them. PCLinuxOS has always had a close, family kind of feeling to it, especially among PCLinuxOS forum members. So, why not try to meet those other family members? If you do, let us know about it here at The PCLinuxOS Magazine. We might just feature your “getting to know you” escapades in a future issue. And remember … pictures, or it never happened! # ⚓ PCLinuxOS_Screenshot_Showcase ⠀⇛ # ⚓ OpenMandriva_notable_mention_in_social_network⠀⇛ FediFollows mentioned OpenMandriva in recommended follows of the week. o § IBM/Red Hat/Fedora⠀➾ # ⚓ Fedora_Community_Blog:_Contribute_to_Fedora_Kernel_5.11 Test_Week⠀⇛ The kernel team is working on final integration for kernel 5.11. This version was recently released and will arrive soon in Fedora. As a result, the Fedora kernel and QA teams have organized a test week from Monday, March 08, 2021 through Monday, March 15, 2021. Refer to the wiki page for links to the test images you’ll need to participate. Read below for details. # ⚓ Fedora_Community_Blog:_Test_Week:_Internationalization_ (i18n)_features_for_Fedora_34⠀⇛ All this week, we will be testing internationalization (i18n) features in Fedora 34. # ⚓ Short_Topix:_10_Year_Old_Sudo_Security_Bug_Patched⠀⇛ As we reported in the January 2021 issue of The PCLinuxOS Magazine, RHEL announced that CentOS was changing directions as of December 31, 2020. CentOS is a favorite for servers across the world, and RHEL’s change of CentOS to CentOS Stream didn’t settle too well with CentOS users. In response, one of CentOS’s founding members, Greg Kurtzer, went back to work to create Rocky Linux. The Kurtzer-led replacement for CentOS is on track for a second quarter 2021 release. Meanwhile, CloudLinux has also chosen to fork CentOS into a new distribution, named AlmaLinux. It seems that CloudLinux is putting their money where their “mouth” is, by backing the new CentOS replacement with $1 million (US) annually. AlmaLinux currently has beta ISOs available on its website, and is based on the current RHEL 8. CloudLinux has promised to update AlmaLinux as RHEL is updated, just as has been done with CentOS over the years. According to an article on TechRepublic, everything on AlmaLinux works pretty much the same as on CentOS, with one exception. Currently, cPanel isn’t yet working on AlmaLinux. This should be remedied in subsequent releases of AlmaLinux, since cPanel currently works on CloudLinux. According to the statement on the AlmaLinux website, “we intend to deliver this forever-free Linux distribution in Q1 2021 — initially built by our own expertise, but owned and governed by the community.” It will be interesting to see the differences between AlmaLinux and the forthcoming Rocky Linux. As we mentioned in our first article, the whole situation with CentOS is rapidly evolving, and continues to evolve at a brisk pace. o § Debian Family⠀➾ # ⚓ Debian_Code_Search:_OpenAPI_now_available⠀⇛ Debian Code Search now offers an OpenAPI-based API! Various developers have created ad-hoc client libraries based on how the web interface works. The goal of offering an OpenAPI-based API is to provide developers with automatically generated client libraries for a large number of programming languages, that target a stable interface independent of the web interface’s implementation details. # ⚓ Sparky_2021.03⠀⇛ Sparky 2021.03 of the (semi-)rolling line is out. It is the first snapshot in 2021 of Sparky which is based on the Debian testing “Bullseye”. # ⚓ SparkyLinux_Finally_Gets_a_KDE_Plasma_Edition,_Xfce_Flavor Updated_to_Xfce_4.16⠀⇛ Based on the Debian Testing repositories as of March 5th, 2021, where the development of the upcoming Debian GNU/Linux 11 “Bullseye” operating system series takes place, the SparkyLinux 2021.03 release ships with Linux kernel 5.10 LTS, the Calamares 3.2.37 installer, and various updated components (see below). But what caught my attention is the fact that SparkyLinux now features a KDE Plasma edition! Until now, SparkyLinux shipped with the Xfce, LXQt, MATE, Openbox (MinimalGUI), and MinimalCLI (text- mode) editions. o § Canonical/Ubuntu Family⠀➾ # ⚓ Hirsute_Yaru_Call_for_Testing⠀⇛ Ubuntu Hirsute – the development release which will become 21.04 enters User Interface Freeze on March 18th! That’s less than a fortnight away! [...] At this point you should start poking around the system. Especially focus on the default system user interfaces, dialogs and experience. Use it as you would any normal install too. Try the default applications, and install your favourite additional ones too. * § Devices/Embedded⠀➾ o ⚓ Track_your_family_calendar_with_a_Raspberry_Pi_and_a_low-power display⠀⇛ The calendar started as a holiday project, so I tried to reuse as much as I could. This included a Raspberry Pi 2 that had been unused for too long. I did not have an E Ink display, so I had to buy it. Fortunately, I found a vendor that provided open source drivers and examples for its Raspberry Pi-ready screen, which is connected using some GPIO ports. My family also wanted to switch between different calendars, and that required some form of input. Instead of adding a USB keyboard, I opted for a simpler solution and bought a 1×4 matrix keypad, similar to the one described in this article. This allowed me to connect the keypad to some GPIO ports in the Raspberry Pi. Finally, I needed a photo frame to house the whole setup. It looks a bit messy on the back, but it gets the job done. o ⚓ That_Yocto_Thing⠀⇛ Many hardware vendors use Yocto as a way to provide a version of the Linux Kernel and board bring up package. This is a very Linux-from-scratch type approach that grew out of GenToo. My current work is on closing the gap between these vendors and the RPM based code management approach in Fedora etc. o § Mobile Systems/Mobile Applications⠀➾ # ⚓ A_new_and_non-intrusive_method_for_preventing_cyber_attacks on_Android_devices⠀⇛ # ⚓ Nokia’s_Android_11_update_promises_remain_unfulfilled_as_Q1 end_nears⠀⇛ # ⚓ [Updated]_OxygenOS_11_(Android_11)_for_OnePlus_7:_Here’s what_we_know⠀⇛ # ⚓ Best_New_Android_Games_This_Week:_Kill_It_With_Fire,_Queen: Rock_Tour,_Clan_N,_and_More_–_Droid_Gamers⠀⇛ # ⚓ Google_testing_Android_TV-like_YouTube_app_for_Chromecast_– 9to5Google⠀⇛ # ⚓ Android_>4GB_file_–_Android_OS⠀⇛ # ⚓ Huawei_suffers_another_blow_as_new_Android-powered_rival storms_ahead_|_Express.co.uk⠀⇛ # ⚓ Android_Auto’s_split-screen_feature_is_now_live⠀⇛ # ⚓ Best_Android_app_deals_of_the_day:_OK_Golf,_Worms_2,_more_– 9to5Toys⠀⇛ # ⚓ 10_new_and_notable_Android_apps_and_live_wallpapers_from the_last_two_weeks_including_Win-X_Launcher,_Dive_Case Connector_for_Google_Camera,_and_SwirlWalls_(2/20/21_–_3/6/ 21)⠀⇛ # ⚓ Top_5_Education_Apps_For_Your_Android_Tablets_–_Geek_Vibes Nation⠀⇛ # ⚓ India’s_largest_cellular_network_plans_to_launch_an_Android laptop_with_4G_support_–_Liliputing⠀⇛ # ⚓ How_to_see_your_Android_notification_history_so_you_can reference_dismissed_notifications_from_the_past_24_hours_| Business_Insider_India⠀⇛ # ⚓ Snapdragon_775_seemingly_set_to_take_performance_of_mid- tier_Android_phones_to_a_new_level_–_PhoneArena⠀⇛ # ⚓ OnePlus_9_vs._Samsung_Galaxy_S21:_Which_Android_phone_will win?_|_Tom’s_Guide⠀⇛ # ⚓ Realme_Narzo_20_receiving_Android_11-based_Realme_UI_2.0 stable_update_–_GSMArena.com_news⠀⇛ # ⚓ Video:_Android_11_Review_on_Nokia_8.3_5G_|_Nokiamob⠀⇛ # ⚓ OnePlus_7_Pro_&_7T_Pro_gets_stable_Android_11_update_in China⠀⇛ # ⚓ Xbox_Game_Pass_vs_Ultimate:_Which_is_right_for_you?_– Android_Authority⠀⇛ # ⚓ How_to_play_Android_games_like_PUBG_Mobile_with_a controller⠀⇛ # ⚓ Chrome_will_provide_settings_for_automatic_translator_of languages_for_Android_users_/_Digital_Information_World⠀⇛ * § Free, Libre, and Open Source Software⠀➾ o ⚓ oneAPI_Level_Zero_1.2.3_Released_For_Intel’s_Low-Level Interface⠀⇛ With oneAPI Level Zero 1.2.3 they now support the Level Zero 1.1 specification, which is just a minor update over last year’s official Level Zero 1.0 specification. The original oneAPI Level Zero specification was tentatively published back at the end of 2019 as Intel’s direct-to- metal interfaces with a focus on offload accelerators. This is not to be confused with the oneAPI specification itself, which is working towards its v1.1 release later this calendar year, but is solely about the “Level Zero” specification. Yes, the oneAPI versioning scheme has become rather convoluted across its many different software components and specifications. [...] The new release does require an updated Intel Compute Runtime stack for hardware support. On that front yesterday marked the Intel Compute Runtime 21.09.19150 release that updates the Intel Graphics Compiler as its only listed change. The Intel Compute Runtime continues to list its Level Zero support as 1.0 in a pre-release stage, while also enjoying OpenCL 3.0 production support) o ⚓ Five_good_reasons_to_try_NextCloud_in_2021⠀⇛ I said so because I thought, and still think, that NextCloud is the most promising self-hosted, Free/Open Source alternative for the services that companies like Dropbox, Google, Facebook or Skype provide in exchange for users’ data, privacy and more. There were already plenty of good reasons to use NextCloud for those services in 2019, and there are many, many more in 2021. But don’t take my word for it. In case you missed NextCloud so far, here are X reasons to try NextCloud now, both personally, and for your company. * § Leftovers⠀➾ o ⚓ Opinion_|_Prince_Redux:_The_Family’s_Imprint_Is_Still_Being Felt⠀⇛ It’s hard not to marvel at their staying power. o ⚓ Elegy⠀⇛ Sundays, my brother returns as a trapezoid of light inching across the fading rug, showing me again that windows need cleaning. He returns each time a breeze brings the unpleasantness of rabbits in a half-shingled hutch, their timid ears pinned in place. Once, hiking through scrub oak, he pulled at a stalk of stubborn cheatgrass which sliced his palm open and his fist dripped blood all the way home. I ask if he remembers that or the forts we built of bedsheets. We secured each corner with volumes on the spider, the mummy, the solar system, and then used box fans for roof raising. How long was it, I ask, before the wind was too much? When did we grow bored? I sometimes forget that my brother’s bones are now ash and the rest of him a cloud. The fact is, my only memory of learning to read is pretending I couldn’t so he would do it for me. A book of illustrated Bible stories more often than not, its spine broken, pages missing, each figure on each page nothing more than hazy pastel. I ask if he remembers that book, if he knows where it is. He says, How should I know? I’m not even here. o § Education⠀➾ # ⚓ Weak_Internet_Faced_by_31%_of_Philippine_Home_Schoolers: Poll⠀⇛ Close to a third of families in the Philippines whose members take school classes online have poor internet connections, according to a Social Weather Stations survey. The poll of 1,500 adults conducted nationwide in November found that 31% of families with online distance learners have weak connections. A combined 68% said they have either strong or fair connections, and most of them are on the main Luzon island where the capital region is, pollster SWS said. # ⚓ How_a_Single_Anonymous_Twitter_Account_Caused_an ‘Indigenized’_Canadian_University_to_Unravel⠀⇛ But those PR dividends come at a cost: Insofar as Indigenization now signifies a system process of compulsory ideological programming among academics, it has led to dissonance in the way universities define themselves. Traditionally, scholars have been free to defy their own administrations in all sorts of ways—from their opposition to campus military recruiters during the Vietnam era, to divestment campaigns targeting oil in the 1990s, to the lengthy anti-racism strikes at Haverford College and Bryn Mawr in late 2020 (during which many teachers filled “teach-in” seminars with fiery denunciations of their own deans). But when it comes to Indigenization, Canadian universities have made it clear that there are to be no conscientious objectors. The result is that, as the following case study shows, even tiny, symbolic acts of ideological resistance can spark wholesale institutional dysfunction. o § Health/Nutrition⠀➾ # ⚓ Opinion_|_Calls_for_the_Biden_Administration_to_Prioritize Our_Water_Infrastructure⠀⇛ Newly introduced legislation would help counteract decades of underinvestment in water infrastructure that’s been plaguing America’s drinking water systems. # ⚓ Manchin_Wins_Cuts_to_Unemployment_Benefits_as_COVID_Relief Bill_Passes_Senate⠀⇛ # ⚓ Punitive_Attendance_Policies_Fueled_COVID-19_Outbreaks_in Meatpacking_Plants⠀⇛ # ⚓ Covid_Relief_Bill_Nears_Vote_After_Manchin_Works_to_Further Limit_Aid⠀⇛ “To be clear, Senator Manchin is choosing to vote against his constituents, but clearly support his donors,” said Democratic Rep. Marie Newman of Illinois. # ⚓ Millions_of_Unpaid_Caregivers_Are_Currently_Ineligible_for COVID_Vaccine⠀⇛ # ⚓ Opinion_|_Typical_Republican:_The_Racism_and_Anti-Science behind_Texas_Gov._Greg_Abbot’s_Lifting_of_Covid Restrictions⠀⇛ Abbott’s policy is in accord with the general Conservative principle that property is more important than human life. # ⚓ Sanders_Praises_Passage_of_Covid_Relief_Bill_to_Address ‘The_Myriad_Crises_That_We_Face’⠀⇛ Following a lengthy overnight session, the U.S. Senate passed the rescue bill 50-49 with no Republican support. # ⚓ Eight_Democrats_Joined_GOP_to_Vote_Down_Sanders’s_$15 Minimum_Wage_Amendment⠀⇛ # ⚓ Europe_Staggers_as_Infectious_Variants_Power_Virus_Surge⠀⇛ The variant first found in the U.K. is spreading significantly in 27 European countries monitored by WHO and is dominant in at least 10 countries: Britain, Denmark, Italy, Ireland, Germany, France, the Netherlands, Israel, Spain and Portugal. It is up to 50% more transmissible than the virus that surged last spring and again in the fall, making it more adept at thwarting measures that were previously effective, WHO experts warned. Scientists have concluded that it is also more deadly. # ⚓ Senate_Passes_$1.9_Trillion_Covid_Relief_Bill_Without_a Single_Republican_Vote⠀⇛ After more than 24 hours of debate, the Senate voted in favor of President Biden’s $1.9 trillion Covid package. The bill, because of the Senate’s changes, will now head back to the House for final passage and then on to the president to sign. On Saturday, the bill passed along party lines 50- 49. Not one Republican supported the legislation that will deliver $1,400 in direct payments to most Americans, extend $300 per week supplemental unemployment insurance, and help fund federal covid programs for testing and vaccine distribution. It also includes a $3,600 one-year child tax credit. # ⚓ PCLOS:_Welcome_From_The_Chief_Editor⠀⇛ These mutations can also go the other way. The right mutation can cause a virus to become less transmissible or less virulent. There are some theories that this is exactly what happened to the H1N1 influenza virus that was responsible for the 1918 Spanish Flu pandemic. It just mutated itself right out of the headlines. The mutations of H1N1 caused it to become less virulent, less deadly, and less transmissible, or so the theory goes. I’m not advocating for keeping such information locked away or behind closed doors. But you don’t have to drive it into the ground with wall-to-wall, gene-by-gene coverage, either. Like I mentioned before, there’s a LARGE gap between keeping people informed and whipping up mass hysteria. When you drive it into the ground with the wall-to-wall, gene-by-gene coverage, you are achieving the latter. Those who want to know more should have the resources already available to seek out the additional information, should they desire. Of course, it also comes into play whether or not the news media deserve our trust, anyway. Their recent track record has been way, way, way less than stellar. Little of what is pawned off as news today is really news at all, at least by traditional measures. I know. I was once a member of that “mainstream media” establishment years ago. The media today is much more interested in pushing an agenda than they are in telling the truth or just telling the story about what happened. And if that story doesn’t pair well with the agenda they are pushing, it simply gets omitted, as if it never happened. These were things that we were taught to NEVER do, no matter what. o § Integrity/Availability⠀➾ # § Proprietary⠀➾ # ⚓ AI_Blackbox:_What’s_under_the_hood?⠀⇛ To better understand the layers of the AI stack, one must understand the complexities of these ‘products’ or ‘complex ecosystems’ that it supports. Kumar elaborates on the concept as follows – These ecosystems consist of billions of entities (customers, assets, facilities), trillions of interactions (Transactions, Social network, content, etc.), millions of decisions (pricing, scheduling, logistics, etc.) that factor in the growth and existence of these ecosystems. Such a complex body needs a well-structured AI/API that smoothens the workings of these systems. The AI stack, as explained by Dr. Kumar, consists of eight layers. Starting with Layer 0 – Digitization, which is not really a part of the AI stack but it is equally necessary as it involves the conversion of raw data (printed material) into digital form, which is an essential part of using, and even starting, an AI stack. # § Security⠀➾ # ⚓ Move_over,_SolarWinds:_30,000_orgs’_email_ [cracked]_via_Microsoft_Exchange_Server_flaws⠀⇛ Four exploits found in Microsoft’s Exchange Server software have reportedly led to over 30,000 US governmental and commercial organizations having their emails [cracked], according to a report by KrebsOnSecurity. Wired is also reporting “tens of thousands of email servers” [cracked]. The exploits have been patched by Microsoft, but security experts talking to Krebs say that the detection and cleanup process will be a massive effort for the thousands of state and city governments, fire and police departments, school districts, financial institutions, and other organizations that were affected. # ⚓ Microsoft_[crack]:_White_House_warns_of_‘active threat’_of_email_attack⠀⇛ Microsoft executive Tom Burt revealed the breach in a blog post on Tuesday and announced updates to counter security flaws which he said had allowed [attackers] to gain access to Microsoft Exchange servers. # ⚓ More_than_20,000_U.S._organizations_compromised through_Microsoft_flaw:_source [iophk: Windows TCO]⠀⇛ Because installing the patch does not get rid of the back doors, U.S. officials are racing to figure out how to notify all the victims and guide them in their hunt. All of those affected appear to run Web versions of email client Outlook and host them on their own machines, instead of relying on cloud providers. That may have spared many of the biggest companies and federal government agencies, the records suggest. The federal Cybersecurity and Infrastructure Security Agency did not respond to a request for comment. # § Privacy/Surveillance⠀➾ # ⚓ Humanoid_facial_recognition_arrives_at German_police⠀⇛ When pursuing suspected criminals, some state police forces use a special ability of individual officers. Deployments often take place in major events # ⚓ Email_spies_you⠀⇛ During a survey, two-thirds of the emails left after filtering spam out contained a “spy pixel”, even after excluding for spam. Spy pixels are a common marketing tactic used by “many of the largest brands used email pixels, with the exception of the “Big Tech” firms”. Which is obvious, because those firms, especially Google and Facebook, have too many better ways to spy their users to need spy pixel. # ⚓ The_End_Of_The_EU-US_Privacy_Shield:_A Great_Challenge_for_Businesses⠀⇛ Back in the late 80′s, Europeans started to concern themselves with how their personal data was being stored and processed. As a consequence, came the Safe Harbor decision in 2000, establishing privacy principles on EU-US personal data transfers for commercial purposes. Nevertheless, the Amendments Act of 2008 to the US Foreign Intelligence Surveillance Act (FISA), adding the controversial Section 702 empowering NSA’s PRISM program and exposed by Edward Snowden, resulted in an increasing distrust from the European side, resulting in its invalidation by the CJEU in 2015. Politicians and businesses tried to save the agreement with a slightly improved and patched version — the Privacy Shield –, in 2016. However, the CJEU didn’t swallow it and nullified the agreement. So, what to do now? Things don’t look very shiny for the American counterpart. As there was no period of grace in the court decision, at this time you or your contractor should already have implemented (or is implementing) the measures determined by the Court, with the risk of being fined by some European data protection agency. Some recent examples show that they are not taking it easy: on October 2020, H&M’s Service Center in Hamburg had a 35.3 million Euro fine for the unlawful monitoring of several hundred of its employees by its management, and Twitter was fined on more than US$ 500,000 on December 2020 by Ireland’s Data Protection Commission for having failed to notify a data breach on time and to adequately document the breach. Now you may be thinking, “I am in the US, so I am not under the jurisdiction of this European court, they have nothing to say about the way I run my business”. This is true, at least in part, because the European Union changed its approach toward the definition of personal data. With its growing importance as an asset to both companies and governments, the EU’s General Data Protection Regulation (GDPR), that entered into force in 2018, started to consider data as a highly valuable good, and as so, subject to certain export rules, as any other good. Therefore, when your company processes or stores personal data in the US, you are importing this good named “personal data” from the EU and executing the tasks your business partner asked you. # ⚓ Don’t_Breed_Crows:_How_Big_Techs_Started Out_As_US_Government_Projects,_And_Today They_Threaten_Democracy⠀⇛ There is an old Spanish saying that goes like this: “don’t breed Crows, they’ll sting your eyes,” and this saying fits perfectly with the class of American tech companies, the so-called Big Techs. Yes, with a few exceptions, most Big Techs were born as projects of the US government, US Army, CIA or NSA. Or, they are entwined with the American government, in one way or another. I stress that everything that has been written in this text is not secret. It is available on several websites on the internet, and, there is nothing new here. Just search, and anyone will find this information. [...] Microsoft The company that was born in 1975 in Albuquerque, New Mexico, as a creator of BASIC interpreters for microcomputers, and then, through a series of misadventures, became the largest software company in existence, also has very deep ties to intelligence agencies. Microsoft has been working closely with U.S. intelligence services to allow users’ communications to be intercepted, including helping the National Security Agency circumvent the company’s own encryption, according to top-secret documents obtained and leaked by Edward Snowden in 2013. These documents show the complicity of several technology companies, in the so- called Prism project. [...] Now, I invite you to think a little. I’ve known Microsoft for many years, and this company amasses more flops than hits. Indeed, Microsoft, were it any other company, would have been bankrupt and closed for many years now. But no. It looks like they have a cash printer in Redmond, or does the American government not let the company break, to not lose its source of backdoors ? Something to think about. Other than these companies, In-Q- Tel invests in other, little- known companies ranging from video games and virtual reality, to big data and data capture from social networks. o § Defence/Aggression⠀➾ # ⚓ Cancel_the_US_Military⠀⇛ “Cancel culture” is a common, almost viral, term in political and social discourse these days. Basically, somebody expresses views considered to be outrageous or vile or racist or otherwise insensitive and inappropriate. In response, that person is “canceled,” perhaps losing a job or being otherwise sidelined and silenced. In being deplatformed by Twitter, Facebook, and other social media sites, for instance, this country’s previous president has, it could be argued, been canceled—at least by polite society. More than a few might add, good riddance. # ⚓ F.B.I._Finds_Contact_Between_Proud_Boys_Member_and_Trump Associate_Before_Riot⠀⇛ Location, cellular and call record data revealed a call tying a Proud Boys member to the Trump White House, the official said. The F.B.I. has not determined what they discussed, and the official would not reveal the names of either party. The connection revealed by the communications data comes as the F.B.I. intensifies its investigation of contacts among far-right extremists, Trump White House associates and conservative members of Congress in the days before the attack. # ⚓ FBI_Uncovers_Contact_Between_Trump_White_House_and_Proud Boys_Before_Capitol_Attack⠀⇛ Klein, the first known Trump official to be arrested for crimes related to the insurrection, was charged with several felonies and was allegedly spotted in a video recording assaulting an officer with a riot shield. According to the Washington Post, the FBI said Klein “had a top-secret security clearance that was renewed in 2019” and “was still employed at the State Department as a staff assistant on Jan. 6.” # ⚓ Somalia_Fears_New_US_Airstrike_Guidance_Is_Benefiting_al- Shabab⠀⇛ Intelligence gathered by U.N. member states, and included in a report last month, raised further concerns about al-Shabab’s ability to attack in major towns and along key transportation corridors. The report also noted what it said was a “remarkable increase in al-Shabab propaganda and in the group’s online presence to enhance recruitment and radicalization.” # ⚓ Starvation_and_Ethnic_Cleansing_Stalk_Ethiopia⠀⇛ A recent article in the Spectator about Tigray drew comparisons with Rwanda. When I reported in 2018 on social media users stoking ethnic violence in Ethiopia, I suggested that social media was playing a similar role to the Radio Télévision Libre des Mille Collines broadcasts that spread much of the toxic hatred and disinformation that fuelled Rwanda’s 1994 genocide. At the time, I wavered about making the comparison to one of the international community’s most terrible and avoidable failures for fear of being alarmist. The worsening situation in Tigray is not yet on the scale of Rwanda. But just where and when should you draw the line? o § Environment⠀➾ # § Energy⠀➾ # ⚓ Electric_cars_would_save_the_world._If_only…⠀⇛ So where’s the power going to come from? In the US, and probably many other places too, Electric Vehicles (EVs) are already greener than cars running on gasoline even with our current electricity grid. But mass adoption only makes sense as part of a do-over of the entire energy system, so the question of what will power all these plug-ins is valid. [...] Electric cars are great. We should really talk electric, not driverless cars, because they can be extremely durable, and change forever how cars are designed. But no matter how we make cars, they cannot be anymore a mean of mass transportation, that is something doable in volumes big enough for masses. o § Finance⠀➾ # ⚓ Richard_Wolff:_Capitalism_and_the_Pandemic⠀⇛ # ⚓ Opinion_|_Global_Obsession_With_Economic_Growth_Will Increase_Risk_of_Deadly_Pandemics_in_Future⠀⇛ Human civilization is on a collision course with the laws of ecology. # ⚓ Jack_Dorsey_Is_Auctioning_His_First_Tweet_As_An_NFT_On_The Ethereum_Blockchain⠀⇛ Twitter CEO Jack Dorsey is auctioning away a non- fungible token (NFT) for his first Tweet. The current bid is $2.500.000, payable in Ethereums ETH currency, for a 1-of-1 “autographed” version minted on the Etherium blockchain. [...] Whatever you may think about the intrinsic value of non-fungible tokens, I believe we can all agree that it sure would be nice to get paid $2.500.000 for writing “just setting up my twttr” on the Internet. o § AstroTurf/Lobbying/Politics⠀➾ # ⚓ Opinion_|_A_Fragile_Democracy⠀⇛ In short, the former president’s behavior was criminal. # ⚓ Rupert_Murdoch_prepares_to_hand_over_his_media_empire⠀⇛ Fox News, where Fox made about 80% of its money last year, has problems of a different sort. Its close relationship with Donald Trump’s White House generated record ratings, but alienated advertisers and some investors. “Any company you hold, you want to see behave ethically,” says one large shareholder. Fox is “in that grey area right now. It’s defensible, but it’s far less defensible than it was.” Smartmatic, an election-software company, is suing the company for $2.7bn for airing ludicrous claims that it rigged the presidential election. (Fox says it will fight the “meritless” lawsuit.) That sum would exceed the phone- [cracking] payouts. # ⚓ Pope_Francis_visits_regions_of_Iraq_once_held_by_Islamic State⠀⇛ There are fears the ritual could become a coronavirus super-spreader event. Iraq has seen a sharp rise in Covid-19 infections over the past month, and along with security fears over the pontiff’s visit, it is one of his riskiest trips yet. # ⚓ Advocates_warn_restrictive_voting_bills_could_end_Georgia’s record_turnout⠀⇛ Georgia voting rights advocates are worried Republicans are clawing back hard-won progress made in the state after it saw record turnout among voters in November’s general election and the Senate runoffs earlier this year. A new batch of bills making their way through Georgia’s legislature are raising red flags among voting rights groups who say the state might not have seen the record turnout it did in the recent races if the bills were in place. # ⚓ NYT_David_Brooks’s_Project_Funded_By_Facebook_And_Bezos’s Dad⠀⇛ The New York Times columnist has been using his perch to promote the Weave Project — without disclosing his potential conflicts of interest to his readers. # ⚓ Venezuela_to_introduce_1-million-bolivar_bill⠀⇛ o § Civil Rights/Policing⠀➾ # ⚓ Biden’s_Plan_to_End_Long-Term_Migrant_Detention_Does_Not End_Family_Detention⠀⇛ # ⚓ Amazon_Is_Paying_Consultants_Nearly_$10,000_a_Day_to Obstruct_Union_Drive⠀⇛ # ⚓ Abolish_Guardianship,_Preserve_the_Rights_of_Disabled People,_and_Free_Britney⠀⇛ Guardianship only makes the news when something goes terribly wrong. Take Rebecca Fierle-Santoian: Acting as a professional guardian, she placed a do- not-resuscitate order on an elderly man who said that he wanted to live. He died. Fierle-Santoian served as the guardian for some 450 people, and it was later discovered that many of them were placed under DNRs or denied life-sustaining medical care without their input or permission or that of family members or the courts. The Argument is a column where writers and thinkers propose a provocative idea that may not be politically realizable in the short term but that pushes one to think broader about a pressing issue of public importance. # ⚓ Amazon_Union_Vote_Hit_By_Conspiracy_Theories,_False_Bezos Sighting⠀⇛ The post-truth age has landed with a thud in Bessemer, where Amazon employees are deciding if they want union representation amid a cascade of conflicting claims, conspiracy theories and fake news. The contest between the world’s largest e- commerce company and the Retail Wholesale and Department Store Union is one of the most consequential in a generation, and a union victory could upend Amazon’s U.S. operations. # ⚓ Facebook_facing_probe_into_‘systemic’_racial_bias_in hiring:_report⠀⇛ A federal agency charged with defending civil rights in the workplace is investigating allegations of racial bias in hiring at Facebook and has reportedly given the probe a rare designation of “systemic.” # ⚓ Exclusive:_U.S._agency_probes_Facebook_for_‘systemic’ racial_bias_in_hiring,_promotions⠀⇛ Facebook operations program manager Oscar Veneszee Jr. and two applicants denied jobs brought a charge last July to the EEOC, and a third rejected applicant joined the case in December. They have alleged Facebook discriminates against Black candidates and employees by relying on subjective evaluations and promoting problematic racial stereotypes. The designation of the EEOC’s probe has not been previously reported. # ⚓ Teen_raped,_asked_to_marry_the_accused_when_she_turns_18⠀⇛ Now you may see the above headlines and feel it is ridiculous, but the fact is that these orders were put or given by Madras High Court couple of months back. This was then reported by both Livelaw and BarandBench respectively. Now to be truthful, this news didn’t make much noise as it should have, probably as I had shared previously that the Govt. wants to lower the marriageable age to 15 or even less. And this is despite all the medical evidence on the contrary, because it assuages this Govt’s “masculinity.” Although, as shared this news was overtaken by other news and would have remained so, if not one of the leaders of the present Govt. , a Ramesh Jarkiholi, who hails from Belagavi region of north Karnataka was caught in a sex CD scandal basically asking sexual favors for a permanent Govt. job. He had made statements after the Madras High Court case applauding the judgement given by the judge. While, due to public pressure he had to resign, but not before stating that he had everybody ‘blue films’ including the Chief Minister of the State. And sad to report that six Karnataka Ministers rushed today or rather yesterday to put a petition in the civil court to restrain media from airing/ printing/publishing any defamatory content against them. The court has granted a media gag against 68 media houses for the same. Sadly, the recent happening only reinforce what has been happening in Karnataka since a decade. Seems different laws apply to politicians vis-a-vis others. A recent example of Rhea Chakravarthy, an actress and girlfriend of Sushant Singh who was hounded in his suicide case and many accusations made on TV but no evidence till date. From what we know as facts, Sushant committed suicide as he was not getting work due to cronyism in bollywood. In fact, those who were behind it have white-washed themselves, deleted their tweets etc. and while the public knows, no accountability on them. # ⚓ Even_the_blockchain_can_be_imperialist⠀⇛ The simplest possible definition of blockchain could be that it is a technology to create distributed public databases, not controlled by any single entity, and can record data of whatever kind in ways that make it impossible to alter it, once they have been inserted in the blockchain itself. The blockchain suffers the same problems of almost any other “new” digital technology from the Internet of Things to 5G networks or driverless cars: too many blockchain applications, or “disruption”, are overhyped solution in search of a problem, as exemplified by this popular internet meme… o § Monopolies⠀➾ # ⚓ [Guest_Post]_Appeals_to_the_Appointed_Person_in_the_UK_– the_unappealing_truth_(part_3)⠀⇛ A further 19 decisions have issued since the second article in this series and the success rate remains consistently low, with just two successful decisions in the period of September 2020 to December 2020 – this gives a total of eight successful appeals in 2020, out of 61 substantive decisions. The most recent set of decisions includes the first decision from the newest Appointed Person, Dr Brian Whitehead, but that decision related to an application for security for costs rather than a substantive decision. [...] SWIFT arrange money transfers between countries. In her decision O/524/20, Appointed Person Amanda Michaels initially dealt with a number of areas where SWIFT’s appeal amounted to no more than an attempt to reargue the Hearing Officer’s decision. However, SWIFT picked up on an inconsistency in the Hearing Officer’s assessment as to the impact of the substantial use which had been made of SWIFT’s mark. In relation to reputation for the purpose of s5(3) the Hearing Officer referred to a strong reputation but, in relation to the inherent distinctiveness of the marks, she indicated that distinctiveness was only enhanced to a medium or slightly higher than medium level. Also in relation to the assessment of the likelihood of confusion, the Hearing Officer made a detailed assessment of Swiffpay’s marks and the similarity to the earlier marks of SWIFT, but was extremely brief in her reasoning explain her global assessment of the likelihood of confusion. As the global assessment did not sit squarely with the detailed reasoning it was not possible for the Appointed Person to be certain that the Hearing Officer had properly accounted for all her findings. In combination with the discrepancy regarding reputation, the insufficient reasoning in relation to the global assessment was sufficient to overcome the high barrier relating to appeals on multifactorial issues such as the likelihood of confusion. The decision was remitted back for decision by another Hearing Officer. # § Patents⠀➾ # ⚓ Two_Patents_were_fulfilled_last_week_as_the_Mac_Pro Tower_and_Beats_Headphones_Packaging_Systems_came_to light⠀⇛ # § Software Patents⠀➾ # ⚓ H.264_vs_H.265:_The_Evolution_Of_Video_Codecs [Ed: A big pool of patent trap with corresponding patent pools and legal landmines]⠀⇛ Released in 2013, H.265 expands CTU capabilities from a 16×16 block of pixels, up to a CTU of 64×64, and an assortment of other enhancements that affect performance and file size. H.265 is also known as High Efficiency Video Coding. The open source version of the H.265 codec is also known as x265. Here’s the REAL upside to H.265: smaller file sizes. When a video is encoded with H.265 versus H.264, the H.265 video, when encoded at the same resolution as the H.264 video, will be 40 to 50 percent smaller in file size. So, users can expect clearer images compressed into a smaller space than ever before. In my own experiences, H.265 encoded video files were around 40 percent smaller than their H.264 encoded counterparts. Encoding was done on the same machine, under similar loads, at the same resolution. So, if there’s an upside, there’s always a downside. That downside is, due to the complexity of the video compression algorithm, encoding is much slower with H.265 than H.264. In my own tests, H.265 video took at least two to three times more time to encode than the same video encoded with H.264. Using Handbrake (available in the PCLinuxOS repository), converting a 93 minute *.webm encoded video to H.264 encoded *.mp4 video took roughly two hours to complete its encoding. Just changing the encoder to using H.265 (and leaving all the other settings the same as the H.264 encoding), that same 93 minute video took over five hours to encode in a H.265 encoded *.mp4 file. As far as the decoding part (which is what happens when you watch the playback of a compressed video), that appeared to be seamless and fully transparent to the end user … which is what you want. The non-technical consumer of video really doesn’t care about the encoding side of things. They are pleased to just be able to watch high quality video playback. H.265 appears to be the encoder d’jour, now represented by up to 40 percent of Blu Ray discs using the encoder to compress video. It offers disc makers and content creators a choice of either having smaller file sizes at the same resolution, enabling them to offer even more “extra” content on discs, or offering even higher resolution video than previously available in the same amount of space used by H.264 encoded video. The newer video compression standard supports up to 8K UHD video, and is the second most widely used video coding format, right after H.264/AVC. On a side note, this month’s Tip Top Tips column, featuring a tip from Archie, centers around converting video to H.265 using VLC. As with all tips, your mileage may vary, and mine did when attempting to do the conversion with VLC. My copy of VLC would crash whenever attempting to use it to convert any video to the H.265 encoder. Nearly all of my “experience” using the H.265 encoder has been with using Handbrake as the program that handles the re-encoding/transcoding. Using Handbrake, I’ve never experienced any problems, aside from my own impatience, brought on by the much slower encoding of H.265 video. In the end, I’m always pleased by the high quality video resolution of H.265 encoded videos and the significantly smaller file sizes. # § Copyrights⠀➾ # ⚓ Movie_Pirates_Don’t_Mind_Waiting_For_HD_Quality Releases⠀⇛ New data shared by piracy tracking company MUSO shows that most torrenting movie pirates prefer HD quality releases, even if they have to wait for months. The finding doesn’t come as a surprise. It means that piracy volumes tend to be relatively low when there are only CAM releases available, but not necessarily that longer release windows result in less piracy overall. # ⚓ Search_Engines_Won’t_Face_Monopoly_Investigation_Over Pirated_Content⠀⇛ Pirated eBooks and similar content will remain in search results after Russia’s Federal Antimonopoly Service declined to take action following a complaint from an anti- piracy group. According to FAS, Yandex and Mail.ru did not abuse their dominant positions by denying access to takedown tools because unfair competition can only take place when the parties operate in the same market. ䷩ 𝚕𝚒𝚗𝚎 3688 ╒═══════════════════ 𝐃𝐀𝐈𝐋𝐘 𝐋𝐈𝐍𝐊𝐒 ═════════════════════════════════════════════╕ ⠀⌧ █▇▆▅▄▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ 03.07.21⠀▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▃▄▅▆▇█ ⌧ ✐ Links_7/3/2021:_AviDemux_2.7.8,_Thunar_4.16.4⠀✐ Posted in News_Roundup at 12:08 pm by Dr. Roy Schestowitz 🄸🄼🄰🄶🄴 🄳🄴🅂🄲🅁🄸🄿🅃🄸🄾🄽 ⦇GNOME bluefish⦈ § Contents⠀➾ * GNU/Linux o Distributions o Devices/Embedded * Free_Software/Open_Source * Leftovers * § GNU/Linux⠀➾ o § Audiocasts/Shows⠀➾ # ⚓ KDE_Community_Edition_PinePhone_Unboxing_and_First_Try!_– YouTube⠀⇛ In this video I’m “unboxing” (or, rather, showing the box and its contents) of the pinephone, and trying it for my first time! # ⚓ This_Week_in_Linux_141:_GRUB_2_Security_Flaw,_Linux_Mint_to Force_Updates?,_Valve’s_Steam_Link⠀⇛ On this episode of This Week in Linux, we’re going to try something different with the show. Let me know what you think of the changes. This episode is completely stacked with exciting news, we’ve got a ton of Distro News from Ubuntu, openSUSE, Linux Mint, SystemRescue, IPFire, and even Linux From Scratch. A vulnerability was found in GRUB 2 that lets someone bypass Secure Boot so we’ll talk about that and just how bad is it? The EU announced some great news related to Right to Repair. Valve has announced that Steam Link is now available on Linux and it’s a real game changer. We’ve also got some media production news to check out this week from Blender, Ardour and a new synthesizer called Vital. All that and much more on Your Weekly Source for Linux GNews! o § Kernel Space⠀➾ # ⚓ Linux_5.11.4_Released_With_Some_Prominent_Fixes,_Hardware Additions⠀⇛ While Linux 5.12-rc2 released on Friday due to that prominent corruption bug, there still is some Sunday kernel fun with Greg Kroah-Hartman releasing a slew of stable kernel updates including Linux 5.11.4 and 5.10.21 LTS. # ⚓ Btrfs_Will_Finally_“Strongly_Discourage”_You_When_Creating RAID5_/_RAID6_Arrays⠀⇛ For a number of years it has been known that the Btrfs RAID5 and RAID6 code is potentially unsafe and not nearly as mature as the native RAID support found in this Linux file-system for other levels. Finally now we are seeing the Btrfs user-space programs warn the user when attempting to create such Btrfs native RAID 5/6 configurations. There have been improvements to the Btrfs RAID 5/ 6 code in recent years but still it’s not nearly as well off as the RAID 0/1/10 support. On the Btrfs Wiki there has been information on the RAID 5/ 6 status and the implementation’s current shortcomings. But if you don’t read the Wiki or past news articles about the iffy Btrfs RAID 5/ 6 code, you might not know about it… So finally in 2021, the Btrfs user-space programs are warning the user. # § Graphics Stack⠀➾ # ⚓ Mesa_21.1_Addresses_Issue_Of_Gallium_Nine_Often Hitting_Memory_Issues_With_32-bit_Games_–_Phoronix⠀⇛ For those using Gallium3D Nine as a Direct3D 9 state tracker when running Windows games on Linux rather than the likes of DXVK for going through Vulkan, next quarter’s Mesa 21.1 will better handle 32-bit games with the Nine state tracker. As written about a few days ago, Gallium Nine has been seeing a fresh round of improvements for this D3D9 state tracker that has long been part of Gallium3D. Gallium Nine is still used particularly by those with older hardware lacking Vulkan support where DXVK is then unsupported. Gallium Nine also generally performs better than using Wine’s Direct3D 9 to OpenGL code path albeit making use of “Nine” requires a patched version of Wine. o § Applications⠀➾ # ⚓ AviDemux_2.7.8_(64-bit)⠀⇛ Avidemux is a free video editor designed for simple cutting, filtering and encoding tasks. It supports many file types, including AVI, DVD compatible MPEG files, MP4 and ASF, using a variety of codecs. Tasks can be automated using projects, job queue and powerful scripting capabilities. Avidemux is available for Linux, BSD, Mac OS X and Microsoft Windows under the GNU GPL license. # ⚓ Avidemux_2.7.8_Is_Released⠀⇛ The latest version of the Avidemux video editor/ converter for Linux, Windows and macOS has tons of new video filters, basic HDR support when working with Matroska and WebM containers, 24-bit uncompressed audio support in several file formats and a lot more. [...] Avidemux is a simple non-linear video editor most suitable for converting between file formats and quick edits to a single video file. It is not a fully featured video editor like kdenlive and DaVinci Resolve, but it can be used to remove black borders, cut a section out of a longer video file, apply filters and those kinds of things. # ⚓ Avidemux_2.7.8_Released!_How_to_Install_it_in_Ubuntu 20.04⠀⇛ The free open-source Avidemux video editor 2.7.8 was released with many new features. Here’s how to install it in Ubuntu via PPA. The new release features many new video filters. A dedicated MOV muxer is available to replace MOV muxing mode within the MP4 muxer; A subset of color info relevant for HDR support is retained in copy mode when both input and output video are stored in Matroska / WebM containers. The indexer in the MPEG-TS demuxer now detects resolution changes in MPEG-2 and H.264 streams. YUV varieties of the lossless Ut Video codec are supported via bundled FFmpeg library. Multi- threaded video decoding is now available for the bundled FFmpeg. # ⚓ Thunar_4.16.4_Is_Released⠀⇛ The latest version of the Thunar file manager for the Xfce desktop environment has six bug-fixes and updated translations for four languages. # ⚓ Cross_Platform_Light_&_Dark_Themes_and_Icons⠀⇛ On the most Unices that use X11/Wayland and therefore are capable of running the full Plasma Desktop the state of light & dark themes and the accompanied icon themes is really good for KDE Frameworks based application. Just take a look at these two screenshots of a light and dark mode Kate running on GNU Linux/X11 & Plasma Desktop. # ⚓ Task-based_menus_for_a_file⠀⇛ Just throwing this out for wider talk perhaps. I have been silently watching a list called xdg@lists.freedesktop.org. Now the list talks about freedesktop standards which basically is trying to have some sort of standards that all desktop environments can follow. One of the discussions on the specific list shared above is and was about ‘New MimeType fields in .desktop’ . It is a fascinating thread with many people giving loads of interesting view points. If you are into desktops even casually, you would enjoy the discussions thoroughly. [...] There are also lot of banking stuff that we cannot do on free software, especially in India as lot of powerful proprietary interests are there which make sure that no public API’s are available, or even if there is, it would be something half-done or after back and forth, they say, this is just for show, as had shared last year. I would probably add another section later to talk about it. From what little I know, in Europe the law mandates that there are public API’s not only for banking but wherever public money (read taxpayer money) is involved. Again, not all countries, but some more than others. At least, that is what I had seen over the years. # ⚓ Small_Image_Tools_that_Pack_a_Real_Punch⠀⇛ The spotlight usually focuses on the heavyweight Linux graphics tools such as GIMP, Shotwell, digiKam, Inkscape, and Krita. However, there are many other open source graphics tools that merit attention. Linux offers a vast collection of open source small utilities that perform functions ranging from the obvious to the bizarre. It is the quality and selection of these tools that help Linux stand out as a productive environment. A good utility cooperates with other applications, integrating seamlessly. Although command-line tools are very useful for updating, configuring, and repairing a system, their benefits are not only confined to system administration. The majority of the applications featured in this article are command-line tools. They are very light on system resources, fast and efficient, don’t rely on a windowing system, and are great for integrating with other applications and scripting. The term lightweight is a label attached to computer software which is relatively simpler or faster than its counterparts. Feature bloat is endemic in software especially commercial software. Often, the easiest way to persuade users to upgrade to the latest version is to add new spangly features. This happens with open source software (to a lesser degree), and open source graphics software is not immune to feature bloat. Well, there is no feature bloat here! To provide an insight into the quality of software that is available, we have compiled a list of small image tools that are incredibly useful. o § Instructionals/Technical⠀➾ # ⚓ How_to_visualize_complex_data_on_Linux⠀⇛ You’ve probably heard of Elasticsearch – the search engine that enables you to index and then quickly search through your data. You may have created a few visualizations in Kibana, the GUI for Elasticsearch, pointing and clicking your way through the sleek interface. What you may not have used is a lesser-known visualization plugin called Timelion. Timelion is a fantastic visualization creation tool that makes it possible to write out your queries in its simple and powerful expression language to display graphs. It’s used for displaying time- series data such as population growth or hits to your website. # ⚓ How_to_configure_Static_Local_IP_Address_in_Ubuntu⠀⇛ In Linux, if you were working on networking, you may be came to a point when you need to assign static IP to your system over the local network. There may be any reason. If you want to communicate with a PC on the network, then whenever your system restarts, local IP changes based on the subnet mask. To avoid this, you need to fix your preferred local IP in the network configuration. o § Games⠀➾ # ⚓ Rocket_League_Still_Thriving_on_Steam_While_Delisted⠀⇛ As you can see from the above chart, the Rocket League community on Steam has never been as active as now, even though the game is officially delisted. The game is alive and well and continues to be receive frequent updates on Steam – and the increase of the player base through EGS has potentially made the game more enticing than ever to play online, regardless of the platform. Wile you cannot purchase Rocket League directly on Steam anymore, it can still be obtained through third party resellers. Such third party key are selling at crazy prices, sometimes above 100 USD. [...] Also, this is a reminder that Rocket League still works fine on Linux even after the termination of the native port and the big Epic client update in September 2020… o § Desktop Environments/WMs⠀➾ # ⚓ Xfdashboard_0.9.0_Is_Released⠀⇛ Xfdashboard is a little-known gem that provides a application management interface that is somewhat similar to the GNOME shell dashboard and the macOS Mission Control interface. It presents an overview of all the windows on a given virtual desktop with a separate xfdashboard instance on each screen on multi-monitor setups. GNU/Linux distributions do not tend to integrate Xfdashboard with the Xfce desktop environment they ship on their Xfce spins so most Xfce users are blissfully unaware of its existence. Xfdashboard can easily be “integrated” with Xfce, and other desktop environments and window-managers, by adding a panel shortcut and/or a keyboard shortcut that starts xfdashboard. It works fine with window-managers like Fluxbox and Openbox and desktop environments like LXQt and, obviously, Xfce. There are some minor issues with xfdashboard that are somewhat annoying when it is compared to a similar solution on a proprietary operating system made by an American fruit company. For example, the type-to-search function is case-sensitive. Typing g will not show the GNU Image Manipulation Program because that programs name starts with GNU in capital letters, you have to type G to find it. There is also an issue with minimized windows, their content is not shown. There is a “workaround” available in xfdashboard-settings, it can be configured to restore and re-minimize minimized windows to grab their content. This is kind of slow if you have lots of windows open. o § Distributions⠀➾ # ⚓ Hands-On_with_Raspup_on_Raspberry_Pi_4:_Puppy_Linux_for Tinkerers⠀⇛ If you never heard of Raspup before, let me tell you that it’s a Debian-based GNU/Linux distribution built from the Woof-CE build system that was originally developed by Barry Kauler, the creator of Puppy Linux, and binary compatible with Raspbian (the official Raspberry Pi OS). As such, Raspup is a Puppy Linux port for Raspberry Pi. Raspup was created by Michael Amadio and it’s designed to run on ARMv7l hardware, specifically on the Raspberry Pi Zero, Raspberry Pi 1, Raspberry Pi 2, Raspberry Pi 3, Raspberry Pi 3+, and Raspberry Pi 4 single-board computers (SBCs). # § Debian Family⠀➾ # ⚓ Thorsten_Alteholz:_My_Debian_Activities_in_February 2021⠀⇛ FTP master This month I accepted 162 and rejected 28 packages, which is again a small increase compared to last month. The overall number of packages that got accepted was 291. Debian LTS This was my eightieth month that I did some work for the Debian LTS initiative, started by Raphael Hertzog at Freexian. # ⚓ RCBW_21.9_–_jwiltshire.org.uk⠀⇛ A recent upload of electrum suffers from the serious bug #981374. On the face of it this is just a missing package dependency: can you help with testing and preparing an updated package to fix this? You don’t need to be a Debian Developer to get stuck into this one! o § Free, Libre, and Open Source Software⠀➾ # § FSF⠀➾ # § GNU Projects⠀➾ # ⚓ Glibc_2.34_Will_Provide_More_Helpful_Linker Diagnostics_–_Phoronix⠀⇛ With the exciting “HWCAPS” feature of Glibc 2.33+ allowing for optimized versions of libraries to be more easily deployed on Linux systems, diagnosing issues around it can be a bit more complicated but on the way for Glibc 2.34 is a welcome improvement to help in such issues. Merging this week for the dynamic link (ld.so) in Glibc 2.34 is a –list- diagnostics option. This new option will provide a system dump of information around the glibc-hwcaps sub-directory selection as well as IFUNC resolver operation and other CPU/ system details. This can be useful for ensuring the desired HWCAPS path is actually being used on a given system and other information for diagnosing bugs or other problems with this more complicated handling but performance beneficial HWCAPS feature. The IFUNC “indirect function” resolver behavior is similarly important at run-time. # ⚓ Moreutils_–_An_Extension_of_GNU_Core Utilities⠀⇛ As you may know, I am a huge proponent of the GNU Core Utilities. I believe the tools included are required learning for any new Linux admin. Although it offers important everyday commands such as touch, head, basename, tail and many more, it cannot provide a tool for everything. This is where moreutils comes in. It provides some additional utilities that every Linux Admin or DevOps Engineer could use. In this article we will show you how to install the moreutils package and give a brief description of it’s packages. [...] Below is a list of utilities included in the moreutils package. Some Linux distributions do not include all the utilities in their package. So you may or may not have all of the commands listed below. * § Leftovers⠀➾ o ⚓ Google’s_new_idea_is_a_self-checkout_store⠀⇛ A flock is a “group of animals (such as birds or sheep) assembled or herded together”. A FLoC, as its spelling hints, is a vaguely similar concept, just applied to people. FLoC is the acronym of “Federated Learning of Cohorts”, that is Google’s recent proposal to get rid of browser cookies, that is one of the most important tools for whoever wants to spy everything people do on the Web. A cookie is just a small text file with a unique identifier inside. When you first visit most websites (not this!) they give your browser one of these cookies. When you return to those websites, or visit any other website that’s associated with them, they ask you to show any cookie they had given before, so they can recognize you. Sometimes this happens just to spare you from typing passwords at every visit. But eventually, by giving and sharing cookies websites create, and exploit, complete profiles of every individual web user. Political polarization, invisible discrimination and uninterrupted surveillance are just the main categories of abuses created by this way to do behavioral, completely personalized advertising. [...] Initially those stores, by dumping prices and a myriad other factors, were just the one place in the neighborhood where you can buy affordable food, but most that food was junk. Initially, the cashiers in those stores bagged the groceries for you. Now, you must go there to buy the same food as before, no competition, but the cashiers were fired You can still shop at the same monopolistic FLOC looks like Google saying hey, we want to track you just like before, but please do it some of the analysis and data storage yourself o § Finance⠀➾ # ⚓ Silicon_Valley_ran_on_Saudi⠀⇛ In September 2019, several famous high-tech companies like Uber, WeWork, Slack, MapBox DoorDash… all were – or had been at one point all backed by Vision Fund, an enormous venture capital fund whose size is _“almost double the investments made by U.S. venture firms last year.” What was little known (again: in 2019) is that a key contributing partner to the Vision Fund, that is managed by a Japanese holding company called SoftBank, was the Kingdom of Saudi Arabia. So… what does it mean for members of the Saudi Public Wealth Fund to be on the boards of high-tech stars of the Silicon Valley? o § Monopolies⠀➾ # § Copyrights⠀➾ # ⚓ More_copyright_nonsense._From_COPS,_this_time⠀⇛ One month ago, a Los Angeles activist entered the Beverly Hills police department, to request body camera footage from an incident in which he received a ticket he felt was unfair. He streamed the whole visit, as he usually does on his Instagram channel whenever he interacts with police officials. Everything went smoothly, until the police sergeant realizes that the activist was “live-streaming the interaction, including showing work contact information for another officer”. # ⚓ Copyright_Idiocy_is_strong_with_these_ones⠀⇛ Lego and Twitch, the Dark Lords of the Mad Copyright Siths. Always Two There Are. In the last ten years, I have sadly reported many stories about the embarrassing madness of modern copyright, here and here. Follow those links, and you will find true horror stories that literally go from the Moon to comics stories, luxury chairs, Tolkien, Poirot and much more. This year, there already are (at least) two more horror stories to add to that sad list. [...] I just read on an italian newspaper that Thomas Panke is the owner of a toy shop in Frankfurt. On his popular Youtube channel, called “Held der Steine” (“Hero of the bricks”), he reviews everything you throw at him, as long as it’s built with those little plastic bricks that billions of people have been calling “lego” for decades now, whoever had made them. ╘══════════════════════════════════════════════════════════════════════════════╛ ¶ Lines in total: 4363 ➮ Generation completed at 02:40, i.e. 36 seconds to (re)generate ⟲