A very good evening aspirants, welcome to Hindu News Analysis brought to you by Shankar I.S. Academy. Today is 16th of April 2022. Before starting, we are happy to announce Shankar I.S. Academy is conducting a free All India Problems Mark Test. These mark tests will be conducted across 13 centres both in online and offline mode. As you can see, the mark test starts on 15th of May 2022. I kindly request the viewers to register for the mark test and use this wonderful opportunity. The registration link for the mark test is given in the description. You can make use of it. These are the list of topics we are going to discuss today. As you can see, the first two topics is regarding economic crisis in Sri Lanka. The first topic which is editorial, we will discuss about the consequence of the measures taken by Sri Lanka to address the sovereign debt crisis. See here, these two articles are somewhat related. You will know that in our discussion. And the Sri Lankan crisis has been in use paper every day that you know. So in this year preliminary examination, we can expect a question from this area. And regarding the third topic, here we will discuss about the reserve norms in India, that is CRR and SLR. And this fourth topic, we will discuss about S 400 and CATSA. And in this fifth topic, we will learn about Cyclopean war. And then we will conclude our discussion by solving some of the preliminary practice questions. Now let's get into our discussion. Friends, look at this editorial. This editorial article is again about the ongoing economic crisis in Sri Lanka. Yesterday, we saw that Sri Lanka has announced to default on its sovereign debt. We also saw the reasons behind it. But in this editorial, author has talked about the consequences of the default or the measures taken to address the crisis. According to the author, these measures are further going to aggravate the crisis. So in this discussion, let us see what are these measures and we will also analyze the possible impacts of those measures. Before that, the syllabus relevant to this editorial is highlighted here for your reference. You can go through it. First, let us see the consequences of the sovereign default. Sovereign default means a nation has failed to repay its external debt. And the nation we are talking about is Sri Lanka. So the major consequence for Sri Lanka is this will damage Sri Lanka's impeccable record because it has never defaulted before. Now the second consequence is this will downgrade credit ratings of Sri Lanka government that international ratings agency gives. See, generally credit ratings refers to a quantified assessment of a borrower's credit worthiness. And it may also refer to a quantified assessment with respect to a particular debt or financial obligation. Note that the sovereign credit ratings applies to national government. The credit ratings help investors to understand the level of risk they face when buying a financial instrument in a country. Mainly, it gives investors insights into the level of risk associated with investing in the depth of a particular country. So, obtaining a good sovereign credit rating is essential for developing countries to assess funding in international bond markets. That means when the credit rating is low, like in the case of Sri Lanka, assessing international funding becomes very difficult. This is the third consequence. And such low credit rating makes international lenders reluctant to lend any more money to the Sri Lankan government. But the lenders may consider lending it if it is a part of a restructuring agreement. Here, we are talking about the sovereign debt restructuring. Sovereign debt restructuring is nothing but exchange of outstanding sovereign debt instruments such as loans or bonds for new debt instruments or cash. And all this is done through a formal process and it involves two elements. One is depth rescheduling and the other is debt reduction. See, depth rescheduling means lengthening the maturities of the old debt. That is, the maturity debt is further extended, that's it. Sometimes it also involves lowering the interest rates of the debt. So note here, the debt is not reduced, only the maturity date is extended or interest rates are reduced.  Here, there will be a reduction in the face value of the old instrument. So, both these types of debt operations involve a haircut, that is, a loss in the present value of credit or claims. Now, when the restructuring occurs after default, it is known as post-default restructurings. Now, even if lenders agree to lend after sovereign debt restructuring, the cost of these fresh borrowing is likely to be high for Sri Lanka government. We cannot ignore the fact that this will further increase Sri Lanka sovereign debt. And finally, if no one is ready to provide funding, it will push the government to bankruptcy. These are the common consequences of a sovereign default. You may think, how IMF gets involved? See, when a country is in economic distress, we saw it may go for debt restructuring. But before that, if it is a member country of IMF, they approach IMF for financing. Here, the aim is to avoid restructuring and the associated economic, social and political disruption. And when they approach, IMF is required to make a judgment whether the member's debt burden is sustainable or not. This judgment determines the availability and the appropriate scale of IMF financing. Now, after the assessment of the debt, if IMF finds it to be sustainable, then it may provide the finance without a debt restructuring plan. On the other hand, if the debt is unsustainable, then debt restructuring becomes inevitable along with the finance. See, in the upcoming article, that is the article in the next discussion, we will see some of the facts about IMF. So, coming back to this editorial, Sri Lanka has sought the help of IMF. And IMF and Sri Lanka are negotiating a support package. So, it is clear that through IMF package, Sri Lanka will get few billion dollars in the short term. But the issue is, along with this comes a structural reform package that is the appropriate economic policy framework which is developed as part of getting the aid. Because, agreeing to implement structural reforms is a precondition for such aid from IMF. That is why author notes that defaults create a desperate reliance on the IMF which gives IMF all the power to unilaterally determine loan conditions. Now, the author is of the opinion that the impact of such structural reforms will be much higher and it will affect the working class more. So, let us see what these reforms are and its impacts. It is very important. See, the first reform is that these reforms will be neoliberal. That is the policies will promote free market capitalism deregulation and will cause reduction in government spending. The main reform will be the revenue based fiscal consolidation through increasing tax rates and energy pricing reforms. We know increasing tax rate will aggravate the economic agony of the poor. Further, energy price hikes for example the increased rates of petrol and cooking gas will directly affect consumers. And the second impact is the near term monetary policy tightening towards inflation targeting. We know that tightening of monetary policy will usually involve increasing interest rates. Higher interest rates means increase in the cost of borrowing and therefore reduction in government spending and investment. All this ultimately leads to lower economic growth. But this is in contrast to what is needed in Sri Lanka because Sri Lanka needs a boost in economic growth. And the third impact is the market determined and flexible exchange rate. Here, the exchange rate is floated that is it is allowed to fluctuate freely in accordance with supply and demand in the financial markets. So, it is not restrained by trade limits or government control. That means when our investor sentiment swings back and forth, it will drive exchange rate up and down. Thereby, it will affect everyone. Particularly, an exchange rate depreciation immediately results in imported goods and services becoming relatively more expensive. And when imports are more expensive, it reduces consumers purchasing power. In this way, it will affect consumers also. But these issues are controlled in a fixed exchange rate. And unfortunately, it is not what I am of suggest. Now fourth impact is the targeted social safety nets. See, social safety nets is a non-contributory cash transfers targeted in some way to the poor and vulnerable. It is focused on poverty alleviation and institutional reform. The problem with targeted social safety nets is that it is not flexible enough to increase coverage or benefits as needed. Targeted social safety nets may also mean cut in social spending for public goods and services. So, again, the poor is getting affected. And they are affected at a time when Sri Lanka is already at the verge of a food crisis. Next is reforming state-owned enterprises, which is nothing but privatizing state-owned enterprises. This may make public services unaffordable. Also, we can witness resistance to privatization by Sri Lankan citizens, which may escalate the protests. This will further drive away the tourists, thereby affecting the tourism sector more. So, these are the reforms and associated issues. And many of these issues are the reason for current economic crisis of Sri Lanka. So, Arthur worries that IMF reforms will further aggravate the crisis. Therefore, as a conclusion, Arthur suggests an additional measure. It is nothing but the imposition of a wealth tax on the rich or allied sections of Sri Lanka. Through this, Sri Lanka government will generate revenue and it will make allied to take part in alleviating the crisis. So, that's all regarding this editorial. Now, we will do a quick recap. In this editorial discussion, we have seen about sovereign default, which means a nation has failed to repay its external debt. Then we have discussed about the consequences of sovereign default for Sri Lanka. The first consequence is that it will damage Sri Lanka's impeccable record, because it has never defaulted before. Second, this will downgrade credit ratings of Sri Lanka government. And the next consequence is that even if lenders agree to lend after sovereign debt restructuring, the cost of these fresh borrowing is likely to be high for the Sri Lanka government. And finally, if no one is ready to provide funding, it will push the government to bankruptcy. And we have also seen that when a country is in economic distress, it may go for debt restructuring. But before that, if it is a member country of IMF, they approach IMF for financing. And IMF will not aid just like that, because agreeing to implement structural reform is a precondition for such aid from IMF. And what are these reforms? These reforms will be neoliberal, that is the policies will promote free market capitalism, deregulation and will cause reduction in government spending. And second is near-term monetary policy tightening towards inflation targeting. Now, the third reform is market-based and flexible exchange rate. And the fourth reform is a targeted social safety net. And the final reform is reforming state-owned enterprises, which is nothing but privatization. So, the author suggests to impose wealth tax on the rich or allied sections of Sri Lanka. Through this, Sri Lankan government will generate more revenue and it will make allied to take part in alleviating the crisis. So, these are very important points. Please make note of it. Now, we will move on to next news article discussion. Now, look at this news article. See, yesterday, Raja Ma'am discussed in detail about the Sri Lankan sovereign debt crisis. So, what is the sovereign debt crisis? A sovereign debt crisis occurs when a country is unable to pay its bills. As Ma'am mentioned yesterday, this is exactly what is happening in Sri Lanka. Sri Lanka has decided to default on its foreign debt totaling about 50 billion dollars. That is, Sri Lanka has decided to not repay its foreign debt totaling about 50 billion dollars. Now, what is the way out for Sri Lanka in this situation? You might have seen various news articles about India and China extending the line of credit to Sri Lanka. But note that India and China can only provide support. It cannot entirely help Sri Lanka. To help countries experiencing sovereign debt crisis, the world countries have created an organization. The organization is nothing but the IMF, that is the International Monetary Fund. So, the Sri Lankan Finance Minister is going to Washington DC to get the help of the IMF to manage the sovereign debt crisis. This is the crux of the news article. So, in this context, as prelims is nearing, let us revise the basics of IMF. Now, let us start the discussion. See, the origin of IMF can be traced back to Bretton Wood Conference in 1944. It came into operation on 27th December 1945. What is the other institution that was established through the Bretton Wood Conference in 1944? It is the International Bank for Reconstruction and Development. Now, coming back, the IMF presently has 190 members. Its headquarters is located in Washington DC. See, these are some basic information about the IMF. Having seen this, now let us come to its objectives. See, the primary mission of the IMF is to ensure the stability of the international monetary system. And apart from this, it also aims to accomplish a number of different goals, like reducing global poverty, encouraging international trade, and also to promote financial stability and economic growth. Having seen its objectives, now let us see how the IMF functions to achieve its objectives. Note that the IMF functions in three main areas. The first function is to oversee the economies of member countries. As we saw earlier, its primary aim is to promote stability in the global monetary system. So, its first function is to monitor the economies of its 190 member countries. And this activity is known as economic surveillance. And it happens at both national and global levels. Now, second comes the lending to countries with balance of payment issues. Note that instead of lending to fund individual projects, the IMF lends money to member countries with balance of payment problems. And this assistance replenishes international reserves, stabilizes currencies, and strengthens conditions for economic growth. See, Sri Lanka's present sovereign debt crisis was preceded by its balance of payment crisis. But at that time, Sri Lanka did not avail the help of the IMF. They thought they could manage the crisis. Now, why was Sri Lanka reluctant to seek IMF help? It was reluctant because when seeking the help, the IMF will propose various reforms on austerity measures. Sri Lanka was not in a position to follow austerity measures as poverty in Sri Lanka has already risen due to pandemic. But now, as the balance of payment crisis has turned into a sovereign debt crisis, Sri Lanka has no other choice but to get help from the IMF. Now, coming back, let us see the final function of the IMF. The third and final function of the IMF is to help the member countries to modernize their economies. And this is achieved through the capacity development, which is done by providing assistance, policy advice, and training through its various programs. Usually, it provides the member countries with technical assistance in areas of physical policy, monetary policy, and exchange rate policies, banking and financial system supervision, regulation and statistics. See, these are the important functions of the IMF. I hope now you have a basic understanding of the role played by the IMF. With this, let us conclude this discussion. Now, let us do a quick recap. What have we seen so far? We have seen that the origin of IMF can be traced back to Bretton Wood Conference 1944. IMF presently has 190 members and its headquarters is located in Washington DC. Then we saw that the primary mission of the IMF is to ensure the stability of the international monetary system. And we have seen three important functions. The first function is to oversee the economies of member countries. And second function is the lending to member countries with balance of payments issues. And the third function of IMF is to help the member countries to modernize their economies. That's all regarding this news article. Now, we will move on to next news article discussion. Now, look at this news article. This article says that China is cutting down its RRR. So, what is RRR? Here, RRR is not Rodram-Ranam-Rudram. It is actually reserve requirement ratio. And reserve requirement ratio is nothing but the portion of liabilities that commercial banks must hold on to rather than lend out or invest. So, the reserve requirement ratio of China is similar to the cash reserve ratio of India. Now, why is China cutting down its reserve requirement? Actually, the Chinese economy is showing early signs of recession. So, to prevent the economy from facing a recession, money supply must be increased. One way of increasing money supply in the economy is by reducing the reserve requirement. If the reserve requirement is reduced, banks will lend more and the money supply will be increased. So, this is why China is cutting down its reserve requirement ratio. This is the crux of this article. In this context, let us revise about CRR and SLR. First, what is CRR? See, CRR or cash reserve ratio is a part of RBI quantitative monetary policy tools. As the name suggests, banks in India are required to hold a certain proportion of their total deposits with RBI in cash form. This is called the cash reserve ratio. The CRR must be maintained as a percentage of the net demand and time liabilities. Now, what is this net demand and time liabilities? See, demand liabilities include all liabilities which are payable on demand by the bank. That means it includes savings bank deposits, current account deposits, demand drafts and other unclaimed deposits. And time liabilities are those which are not payable on demand. It includes fixed deposits, cash certificates, cumulative and recurring deposits. The sum of the demand liabilities and time liabilities is called the net demand and time liabilities. Note that the present CRR is 4% that is banks must maintain 4% of the total NDTL as CRR. Now, who must maintain CRR? See, every scheduled bank, small finance bank and a payment bank shall maintain CRR with the RBI. And here are a few points you must note. CRR must be maintained in cash form, banks must maintain CRR with the RBI and RBI will not pay any interest for maintaining that CRR. One additional information here, while every scheduled banks must maintain CRR with the reserve bank, cooperative banks and local area banks must maintain CRR in cash form with itself instead of RBI. That is all about CRR. Now, let us move to SLR. See, SLR or statutory liquidity ratio refers to the percentage of the aggregate deposits that commercial banks have to invest in liquid assets. Here also, SLR is maintained as a percentage of net demand and time liabilities that is NDTL. Now, the difference between CRR and SLR is that while CRR must be maintained only in cash form, SLR can be maintained in cash form, gold and government approved securities. Here, the government approved securities in India include dated securities of government of India, which are nothing but GSX, Treasury Bill and State Developmental Loan. Now, the next difference is that while banks do not earn any interest for maintaining CRR, they earn returns for maintaining SLR. Now, the third difference is that while CRR must be maintained with the RBI, the SLR is maintained with themselves. Now, who should maintain SLR? Every scheduled commercial banks including RRBs, local area banks, small finance banks, payment bank, primary cooperative bank, state cooperative bank and district cooperative bank shall maintain SLR. Note that the present SLR rate in India is 18 percentage. So, that's all regarding CRR and SLR. We have seen that CRR must be maintained in cash form and it must be maintained with RBI and RBI will not pay any interest for maintaining CRR. Now, coming to SLR, SLR can be maintained in cash form, gold and government approved securities. And the banks can maintain SLR with themselves. And for maintaining SLR, banks earn some returns. The present CRR is 4 percentage and present SLR rate in India is 18 percentage. So, that's all regarding this news article. Now, we will move on to next news article discussion. Now, look at this news article. This news article is about S-400 and CATSA. First, we will see a little bit of background. In October 2018, India and Russia signed a $5.43 billion deal. According to this deal, India contracted Russia for the delivery of five S-400 systems. Last December, India took delivery of the first S-400. The delivery of the second unit is delayed due to Russia-Ukraine issue. This is the crux of the news article. In this context, let us revise about the S-400 system. See, S-400 is one of the world's most advanced air defense system. First, it is a surface-to-air missile system. Secondly, each S-400 system has four different types of missiles with a range of up to 40 kilometers, 120 kilometers, 250 kilometers and 400 kilometers. And it has an altitude range of up to 30 kilometers. Due to this capability, the S-400 system can tackle any aerial target within a range of 400 kilometers. In addition to this, it can simultaneously engage 36 targets. Thirdly, the S-400 system can simultaneously track and neutralize a range of incoming objects like aircraft, missiles and unmanned aerial vehicles over a range of 400 kilometers. Fourthly, it has fire and forget capability. What does this mean? This means that it does not require further guidance after the launch of the missile. Using this system, targets that are outside the line of sight can also be neutralized. Finally, the S-400 system is highly flexible and it can be easily integrated into the air force, army and navy. Having revised about the basics, let us now see the working of the system. Look at this image here. Here, the long-range surveillance radar tracks objects like incoming missiles or aircrafts and relays the information to the command vehicle. The command vehicle assesses the potential targets. After the command vehicle identifies the target, it orders the missile launch. The launch data is sent to the launch vehicle and it releases surface to air missiles. See, the engagement radar plays a main role in the fire and forget capability of the S-400 system. It is the engagement radar that help guide missiles towards the target. This is about the working of the system. Since India signed this deal with Russia, the United States threatened India of using CATSA. Now, what is this CATSA? It is the short form for countering American adversaries through sanctions act. Know that it is a specifically enacted legislation of the USA. According to some sources, its ultimate goal is to prevent revenue from flowing to the Russian government. To achieve this aim, sanctions are imposed on countries that make significant transactions with Russia. But this term, significant transactions has not been defined by the legislation. However, the US government classified the purchase of the S-400 system as a significant transaction. So, the Indian purchase of S-400 system from Russia can invite sanctions. To avoid the sanctions, India and Russia had worked out payment through rupee-ruble exchange for this deal. See, rupee-ruble trade agreement is an alternative payment mechanism to settle dues in rupees instead of dollars or euros. So, that is all regarding S-400 and CATSA. What have we seen so far? We have seen that S-400 is a surface-to-air missile system. And each S-400 system has four different types of missiles with a range of up to 40 kilometers, 120 kilometers, 250 kilometers and 400 kilometers. And the altitude range is up to 30 kilometers. We have also seen that it has fire and forget capability which does not require further guidance after the launch of the vehicle. Then we have seen about CATSA and its ultimate goal is to prevent revenue from flowing to the Russian government. To avoid the sanctions, India and Russia had worked out payments through rupee-ruble exchange for S-400 deal. So, that is all regarding this news article. Now we will move on to next news article discussion. Look at this news article. This news article mentions that Bihar government has sent a proposal to the Archaeological Survey of India to apply for UNESCO World Heritage Tag. This tag is demanded for the cyclopean wall in Bihar. So, let us see what is this cyclopean wall. As the name suggests, it is a wall. It is 40 kilometers long. It is situated in Rajgeer in Bihar. And it is one of the few important pre-Maurian stone structures to have been found. So, when and why it was built? It was built before 3rd century BC. And it was built to protect the ancient city of Rajgeer from invaders. The wall fortified the city. Know that the ancient city of Rajgeer was the capital city of King Bimbisara and his son Ajat Shatru. They were the two very powerful rulers of Magadha empire. And Rajagreha in Bihar was the capital of Magadha for several years. And we know that Rajagreha is now known as Rajgeer. And after Rajagreha, the capital was shifted to Pataliputra. We also know that the King Bimbisara and Ajat Shatru were contemporaries of the Buddha. And after hearing Buddha sermon, Bimbisara converted into the Buddhist order. Now, coming to the wall, it is built with massive undressed stones. These stones are fitted together. The wall is 14 inches wide and 40 kilometers long. But why the term cyclopean? See, this term refers to the masonry or stonework. It is a type of megalithic architecture. It denotes a type of ancient masonry made with massive irregular blocks. In this, the wall is constructed without mortar. Please note that mortar is nothing but a bonding agent, which is generally produced by mixing, cementing or binding materials with water. Okay, this technique was employed in fortifications and earlier times because it used large stones which reduce the number of joints and so it reduced the wall's potential weakness. These kinds of walls with cyclopean masonry could be found in Italy and Greece. And since the Rajgeer wall is similar to the ancient Greek walls, it is called cyclopean wall. Okay, now coming to its features. In the cyclopean wall in Rajgeer, bastions were built at intervals to strengthen the wall. Bastions are these projecting part of a fortification. And according to polytext, there were 32 large gates and 64 smaller ones to enter the fortified city. It is said that once the city gates were closed in the evening, no one, not even the king could gain entry into the city. Here note that the wall did not survive the ravages of time. But even today, a considerable part of the wall is still there. It exists along the Ratnagiri hill starting from the base of the hill towards the hillside. Now we will do a quick recap. Cyclopean wall was built before 3rd century BC and it was built to protect the ancient city of Rajgeer from invaders. It is built with massive undressed stones. These stones are fitted together and the wall is 14 inches wide and 40 kilometers long. The term cyclopean refers to the masonry or stonework. It is a type of megalithic architecture. It denotes a type of ancient masonry made with massive irregular blocks. And this, the wall is constructed without mortar. This technique was employed in fortifications in earlier times because it used large stones. This reduced the number of joints and thus reduced the wall's potential weakness. So that's all regarding this news article. Now we will move on to the next part of our news article discussion which is nothing but preliminary practice questions discussion. Now look at the first question. Consider the following statements about the ancient city of Rajagraha. First statement, it was the capital of Magadha empire. And statement 2, a cyclopean wall fortified the city. And statement 3, it is equally revered by the Buddhist and the Jains. And you have to find the correct statements. See, regarding statement 1 and 2, we have seen this in our discussion right. So both are correct. Rajagraha was the capital of Magadha empire and cyclopean wall fortified the city. And statement 3, it is also correct. Because Rajagir was also considered one of the places favored by spiritual leaders like Lord Mahavira and Gautama Buddha. Therefore, Rajagir is a major hub for pilgrims of both the Jain and Buddhist faiths. So our answer here is option D, 1, 2 and 3. Now look at the second question. Consider the following statements about LAF, that is liquidity adjustment facility. Statement 1, it is a tool used by RBI to control short-term money supply. And statement 2, 1998 Narasimha committee recommended the creation of LAF. And statement 3, components of liquidity adjustment facility are repo and reverse repo. You have to find the correct statements. See here also, all the statements are correct. Yes, LAF is a tool used by RBI to control short-term money supply. And there are two components of LAF, they are repo and reverse repo. Here, repo is the rate RBI charges on its clients for short-term loans. And reverse repo is the interest rate paid by RBI to its clients for short-term loans. And also note that 1998 Narasimha committee recommended the creation of LAF. So here, all the statements are correct. So our final answer here is option D, all the above. Now look at this third question. Which of the following given pairs are correctly matched? Here the range is given and on the other side, different system is given. See here, only the first pair is correctly matched. Because the Indian Ballistic Missile Defense Program is of long-range interception. And we have seen that S 400 is of intermediate interception. And Akash Air Defense and similar systems is of short-range interception. And know that man-portable air defense systems which is called man-pads and anti-aircraft guns are very short-range interception. So here, only the pair one is correctly matched. So our answer here is option A, one only. Now look at our last question. This is a quiz question for you. See, questions related to the reports are often asked in the preliminary examination. So take it as a homework and find the answer, post it in the comment section. It will be highly helpful for you. If you find time, please revise all the reports published by IMF. Okay. See the main question is displayed here. Write your answer and post it in the comment section. If you like the video, hit the like button, post your comments and share the video with your friends. And don't forget to subscribe Shankar IAS Academy YouTube channel. Thanks for watching.


When I first started my company, I fired my two top employees when I first started. You know why? One day I came in and it was all about money. And somehow, no matter what I did, it could not turn them back. What do you do? Part ways. It's okay. Guys, listen to me. I know you guys want to be with your people forever, but the second you realize that they don't want to be with you forever, you know what you do? Part ways.


Hi and how are you all today? My name is Priyanka and I should be helping you with the following question. It says evaluate integral 0 to pi by 2 cos x upon 1 plus sin x into 2 plus sin x dx. So here let us proceed with the solution. Let us rewrite the given definite integral again. Now here we can use our substitution method to simplify this integral. Now here first of all let i be equal to integral cos x upon 1 plus sin x into 2 plus sin x dx. Now if we put sin x equal to t this implies cos x dx is equal to dt right. So we have i equal to dt upon 1 plus t into 2 plus t. Now we can solve it by using partial fraction and on doing so we can write integral dt upon 1 plus t into 2 plus t as integral 1 dt upon 1 plus t as the value of a we got as 1 minus 1 dt upon 2 plus t as the value of b after using partial fraction we got as minus 1. So we can write this as log mod 1 plus t minus log mod 2 plus t plus c which on substituting back the value we get as log 1 plus t the value of t is sin x minus log 2 plus sin x plus c which is log mod 1 plus sin x upon 2 plus sin x plus c. So we have integral 0 to pi by 2 cos x upon 1 plus sin x into 2 plus sin x dx equal to log mod 1 plus sin x upon 2 plus sin x 0 to pi by 2. Now we can find our answer that will be log mod 1 plus sin pi by 2 that is 1 upon 2 plus 1 minus log mod 1 plus 0 upon 2 plus 0. So we have log mod 2 upon 3 minus log 1 upon 2 which is equal to log 2 minus log 3 minus log 1 plus log 2. These two by combining can be written as log 4 minus log 3 as the value of log 1 we know is 0. So final answer is log mod 4 upon 3. So the answer to the question is log mod 4 upon 3 is the value of the given definite integral right. Hope you understood the procedure well and to take care of all your steps. Have a nice day ahead.


Alright, hello everyone. This is the CircuitPython Weekly Meeting for March 14th. This is the time of the week where we get together to talk about all things CircuitPython. My name is Tim. I am sponsored by Adafruit to work on CircuitPython part-time. If you don't know what CircuitPython is, this is a version of Python that is designed to run on tiny computers called microcontrollers. CircuitPython development is primarily sponsored by Adafruit, so if you want to support them and CircuitPython, consider purchasing hardware from Adafruit.com. This meeting is hosted on the Adafruit Discord channel. You can join anytime by going to ADAFRU.IT. We hold the meeting in the CircuitPython Dev text channel, as well as the CircuitPython voice channel. This meeting typically happens on Mondays at 2pm Eastern, 11am Pacific, except when that coincides with a US holiday. In the note stock, there is a link to a calendar that you can add to your favorite calendar application to get notifications about when these meetings are coming up, and especially the ones that do occur on the Tuesdays, which is what will happen if there happens to be a US holiday on Monday. I did not look at the calendar for next week, but I believe we're on Monday, and I'll take a peek at that by the time we get to the end, so in the wrap-up I will let folks know for sure if next week is the normal time or not. There's a notes document that accompanies the meeting and the recording. The notes document contains time stamps to go along with the video, so you can use the notes to view only the parts that interest you most. This meeting does tend to run 60-90 minutes, so this gives you the option to skip around. After each meeting, we will post a link to the next week's meeting notes in the CircuitPythonDev channel. Again, that's on Discord, so check the pinned messages there to find the latest note stock. You can also add your notes for next week's meeting, and I will just add you can, this note stock gets created generally shortly after the weekly meetings on Mondays, so you can actually add your stuff ahead of time. If you want to add notes in throughout the week, you can definitely do that. If you wish to participate but cannot attend, then you can leave your hub reports and your status updates in that document, and we will read them during the meeting. So, this meeting will go in five main parts. The first part is going to be community news. This is a look at all things CircuitPython and PythonOn hardware in the community. This is a preview of the PythonOn microcontrollers newsletter, which generally comes out on Tuesdays. The second part of the meeting is going to be the state of CircuitPython, the libraries in Blinka. This is a statistical overview of the entire project. It's a chance to look at things by the numbers and separate it out from the specific stuff that we're all into in our status updates and stuff like that. So the third part then is hub reports. This is an opportunity to highlight the good things that folks are doing. Take some time to recognize the awesome folks in our community. This one, hub reports, is the first of our two round robins, the next of which is the fourth part, which is status updates. This is an opportunity to sync up on what we've been doing. You can take a couple of minutes, talk about what you've done in the past week since the previous meeting and what you will be up to in the next week until the next meeting. And the fifth and final part is called in the weeds. And this is an opportunity for those long form discussions. These can come out of status updates or be something that is identified ahead of time as likely to be too long for status updates. So that covers how the meeting will go. The next up is going to be community news. Let me get a timestamp and then we will get going on that. There we go. So this week in community news, we had Circuit Python 7.2.1 released. I believe maybe that was released earlier today or possibly yesterday. So there's links here to the GitHub release and there's a short list of the notable fixes since 7.2.0. So I'll read a couple of those. We have expressive I2C pull-up detection fix. We have fixed for the SAMD 21 to improve the auto reload reliability when you save your code file or any other files for that matter. We updated the trusted certificates within Circuit Python for making HTTP requests. We fixed count IO problems when it is used outside of code.py. And then lastly it was added to the core so that we can use the from future import annotations, which is something that is typically used in CPython. So this gives us the ability to make our code compatible between Circuit Python and CPython with regards to all of the typing work that we're doing lately. So thank you to everyone who worked on any contributions to Circuit Python that got us to 7.2.1. Next up, this is the new Arduino Nikola version. The new Arduino Nikola, excuse me, vision, not version, Arduino Nikola vision. This is a new type of device. So the Arduino Nikola vision is a ready to use 2 megapixel standalone camera that lets you analyze and process images on the edge for advanced machine learning and edge computing applications. It's listed as Python and Arduino compatible. It integrates OpenMV support, excuse me, it integrates OpenMV and supports MicroPython and features Wi-Fi and Bluetooth Low Energy connectivity. Next up is, oops, let me get a time stamp here. Next up is going to be the implementation of the language 4th on the Raspberry Pi Pico. 4th is certainly not one of the most modern programming languages, but it does take into account for limited resources, and there is now an implementation of the 4th language for the Raspberry Pi Pico, and there are links there in the notes to Twitter and Hackaday, it looks like, as well. Next up is the Tom's Hardware Pi Cast is coming up with special guest Paul Cutler, which is the host of the Circuit Python show, which there will also be a new Circuit Python show coming up this week. So check out that discussion with Paul on the Tom's Hardware Pi Cast. There are links here in the notes for YouTube and Twitter. Next up, Adafruit's own Ann Borrella will be joining the Python Bytes Stream podcast this episode. Actually, yeah, I was about to say the date. I don't know the exact date, actually, but I encourage you to hit the link in the notes to find out when that will be. So let's see here. Python Bytes episode, this is going to be number 274, and includes discussion 12 questions you should be asking of your dependencies. And of course, we'll feature, as I mentioned, our own Ann Borrella, the editor of the Circuit Python weekly newsletter, which is where all of the rest of these items and many more will appear this week. A couple more we have. So let's go timestamp here. Jeff and Melissa, two of the Circuit Python developers spoke, I believe, last week or the week prior at the Dublin Linux Developers Meetup, and the video is now available. So there is a link in YouTube to catch that talk if you are interested. And then the last one, I believe this is here, is the Apoka Pi Now. The Apoka Pi Now is a logable rugged EMP proof Raspberry Pi portable. It's basically like a little cyberdeck, which I am definitely a sucker for cyberdeck. So I thought this was a really cool looking device. And so I included this one in here. And I encourage you to take a look. There are some links here to Haxter IO, Reddit, and Twitter. All right, so that is the community news. And this is all again, going to be part of the weekly newsletter. The Circuit Python weekly newsletter is a Circuit Python community run newsletter that's emailed every Tuesday. The complete archives are available at AdafruitDaily.com. There is a link in the notes if you want to hit that. It highlights the latest Python on hardware related news from around the web, including Circuit Python, C Python, and MicroPython developments. You can contribute your own news by making a pull request on GitHub under the Circuit Python weekly newsletter repository. Or you can send news to cpnews at adafruit.com. Or you could also try tagging Ann here on Discord or Twitter. But the pull request and the email I think are the sort of primary ways to get your news in the newsletter. So next up is the state of Circuit Python, the libraries and Blinka. So overall this week we had 44 pull requests merged. We had 21 authors working on all of those. I failed to go through here and pick out names ahead of time, but just skimming through right now a couple of the ones that I don't recognize are Five Tide, Bab Loak Bee, Ezio Maloti, CD Wilson, let's see Rick Sorensen, DG Rizwo, Circuit Art, WHO G Ben, Texas. Yeah, those are the names of folks that I don't recognize. So thank you to all of them. And of course, everyone else who contributed this week anywhere in the Circuit Python ecosystem. We had 11 reviewers. So thank you to all of our reviewers. Those look mostly like the usual suspects, I think. So thank you to everyone who's doing reviews for us. We had 39 closed issues by 15 people and 13 were opened by 10 people. So next up, I will pass it off to Scott, I believe to tell us about the core. Hello, so I'll read the numbers for the core. 21 pull requests merged, which is awesome from nine different authors to thank you to all of those. The new folks here in this list are Fab Rick Sorensen, Circuit Art. So thank you to those new folks in the nine authors. We had four reviewers. So thank you to all of our reviewers. We have 10 open pull requests currently. The oldest is 179 days old. And then it's kind of a smooth gradation there and not a whole lot of new stuff. So thank you to everybody for working through those. Issues wise, we had 13 closed issues by five people and six open by five people. So we're net down seven which is good for a total of 505 open issues. We're slowly growing and the number of issues but a lot of those we think are like good long term things but not super urgent. So that's okay. We're okay growing the issue count but not necessarily the pull request count. We have seven active milestones. We use milestones for triaging issues as they come in. And we have one open for 72 X and then four open for 730. So pretty good overall on the milestone front. And we'll just double check. This says we have one issue not assigned to milestone. Those are the ones that we want to make sure and get categorized and looked at. But that number might be a little bit different between me checking my email this morning and these numbers being snagged. So that's it for the core. All right. Thanks Scott. I will pass it over to Katnenex to tell us about the libraries. Thanks Tim. So this section applies to all of the Adafruit circuit Python libraries which is everything that starts with Adafruit underscore circuit Python underscore as well as a few extras. Across all of those repos we had 17 pull requests merged by 11 authors and nine reviewers. The oldest closed PR was 28 days old which is good. We're still getting through the older ones and that leaves us with 19 open pull requests. We had 20 issues closed by 11 people and six opened by five people leaving us with 614 open issues. 207 of those are good first issues. If you're looking to contribute to circuit Python on the Python side of things check out circuitpython.org slash contributing. You'll find all of this information and more including open pull requests and open issues. If you are interested in contributing by reviewing check out the open PRs. Leave us a comment. Let us know you took a look at it. Test it if you have the hardware etc. If you're looking to contribute code or documentation check out the issues. If you're new to everything good first issue is a great place to start. We have a guide on contributing to circuit Python using git and github and we're always available on discord to answer questions. In terms of library updates in the last seven days we had two new libraries tt211 and vl53l4 cd and then a number of updated libraries which I will not read off and that's where we are with the libraries. All right thanks catney. I will add to that briefly. I will be making my way through some more of those open PRs so if anybody listening does have open PRs on libraries and you think you need help or you just need somebody to take another look again please feel free to ping me a foamy guy on in the discord or on the the PR. And with that I will pass it over to Melissa to tell us about Blinka. Hello Blinka is our circuit Python compatibility layer for Michael Python Raspberry Pi and other single board computers and this week we had six pull requests merged by five authors and three reviewers. There are currently five open pull requests amongst other repositories and there were six closed issues by four people and one open by one person leaving a net of 69 open issues. There were 13,645 Pi wheels downloads in last month and we are currently supporting 87 boards and that's it. All righty thanks Melissa. We are marching our way up towards 100. So next up is the hug reports section. So I will start and then we will go down the list alphabetically in as the names appear in the note stock. So I'll take a timestamp for hug reports and my hug reports this week. Thank you to Liz Blitt City DIY who is joining us in the meeting here for authoring a fantastic learn guide about MIDI for makers. MIDI was something I've been sort of peripherally aware of for a little while but never knew the specifics and never really got in and played around with. Liz has a really really great learn guide in the Adafruit learn system that explains all the details of MIDI and gives tons of good examples which got me up to speed when I started playing with it last week so thank you to Liz. Everybody who tuned in or participated in the chat during my first deep dive this past Friday especially for sticking with me through a bumpy start while I figured out how to get the YouTube up and running and then lastly my hug report this week goes out to Jose David who published a little while back actually but I had not found it before a initial working version of a display ios slider widget so a little handle that you can slide back and forth sort of like a virtual version of a linear potentiometer which I found to be super useful and fun and I've got some more plans for that in the future so thanks to to Jose. So next up is BlitzCity DIY. So my hug report this week is for Katny she's been helping me out a lot today because my today is my first day full-time with Adafruit she's been helping me get to speed with all things slack learn etc so thank you Katny. Excellent thanks Liz and congratulations and welcome that's very exciting. Next up is Dan H who it looks like is not joining us today so I'll read Dan's oops let me put a timestamp so this week Dan has hug reports for Scott for the USB hostwork as well as to Shippu for supporting 9-bit SPI displays and next up is Jepler. All right I've got a few things here I want to thank Katny for getting the ball rolling on PyCon attendance to Julia Evans who I guess goes by Bork on Twitter for a recent blog post entitled celebrate tiny learning milestones. Julia constantly reminds readers that learning is a journey you should remember to celebrate your advances even in small increments rather than see failure if you didn't reach an arbitrary and distant goal and I think you should check out the rest of her blog for a very refreshing and beginner-friendly view of Linux and programming topics although Python feature is relatively rarely. Anyway getting back from the paragraph form to the sentence form thanks Dan for not only making the 7-2-1 release but also squashing that irritating and subtle bug with reload along the way and Liz I'm so happy to be seeing more of you I hope we can find the chance to do a collab project someday that's what I got. Alrighty thanks Jeff next up is Jerry who is also missing the meeting today and so I will read Jerry's let me do the timestamp and Jerry just has a group hug for everyone and so the next up is Katney. All right so first up hug report to Liz for joining Aida for full time. I'm looking forward to working with you more and excitingly I have been given the task of teaching you to do some stuff so I'm really excited about that. To Carter for help with yet another Arduino issue. To FOMI guy for the starter code for a circuit python time stamper. I built the two key version I haven't ported the code yet and to Dan for the 7.2.1 release. Right thanks Katney next up is Kmatch. Sorry Tim I was slow on the draw on the mute button so my hugs this week go to first to Kevin J. Walters also goes by KJW on discord for some improvements for display labels particularly with way of reusing memory so you don't fragment it as much probably particularly useful for the fixed fonts such as the built-in fonts for with terminal IO so thanks for that. Second FOMI guy thanks to you for the display IO and widget livestream especially looking at all the different slidey switches and things that you had in in there. My last hug goes to Wirehead Seagrover for some tips on i2c pull-ups particularly with the Stemma QT spec and especially for Carter and their awesome i2c guide on on the learn system so thanks everybody. All righty thanks Kmatch and yeah I'm glad you mentioned Kevin J. Walters I actually forgot to put a hug report in there so I will add one for next week but I definitely echo the sentiments of Kmatch. Kevin J. and Walters gave us some nice improvements in the Adafruit label library which I'm always excited to see and then next up we'll pass it over to Melissa. Hello I wanted to give a hug report to Liz for our first full-time day with Adafruit and joining the team make your project everyone else. All right thanks Melissa next up is Mark Gambler who is lurking today so I will read the hug reports for them. First one to Katny for let's see. Notice that I had hug reports in the status updates last week in the in the meeting note for last week. Hug report to me, Foamy Guy for the first deep dive and continuing the weekend streams and a group hug to everyone. Next up is Tammy Mix Things. Thanks so I have a hug report to Foamy Guy for the deep dive on Friday it was great. Late breaking hug report to Liz for joining Adafruit full-time and then a group hug for the community. All right thanks Tammy and next up and the last one in the hug report section will be to Scott. Thanks Foamy Guy. First hug report to you for the first deep dive of yours and also thank you to everybody who joined to watch I really appreciated that. Oh and second hug report to K-Match for working on the RGB LCD displays that look really neat and if you look in the show and tell channel you'll see the difference in speed ups that K-Match managed to get going over the weekend which is very impressive. Exciting stuff in the display world. All right so the next section is going to be status updates this is our time to sync up on what we're doing. This section is also held as a round robin where I will start and then we'll go through the list alphabetically giving everyone a chance to participate. When I call on you you can take a couple of minutes tell us about what you've been doing since the last meeting and what you are going to be doing in the next week until the next meeting. This is also an opportunity to provide tips and tricks relevant to what people are working on and if a discussion becomes too much then we will move it down into the weeds section if we need to. So I will get started first. Let me take a time stamp here so my status updates this week. So last week I didn't do too much in circuit python land. I was enjoying a small but much enjoyed and very pleasant vacation. But this week I've got a couple of things that I'm about to jump into which are a typing page in the learn guide. This will be the creating and sharing a library learn guide. We talked a little bit about that in the meeting last week. I will be updating the display io slider widget that I mentioned a little bit before. It needs a couple of updates for the latest versions of circuit python. I also have some ideas to extend the functionality and a couple things I want to refactor in order to get different names on stuff. And then once I've done all of that I think we will publish that over in the circuit python org bundle. After that I am going to be looking to use that new slider widget in a pr for another new example in the async io library. This is another example that is showing folks how to use async io with display io interfaces. This example has pulls together a slider widget, a couple of round switches, a label, and also importantly this one connects up to some external and built-in sensors, i2c sensors to read data. So bring in all of those things together and making them all play nicely with async code. And then the last thing I have for this week is like I mentioned just a little bit before I'll be diving back into prs for reviews. So if you have any of the older prs open or if you'd have any pr on a library and you don't know what the next steps are or you need help or you just need someone to take a look again please feel free to ping me on discord or in the in a comment on github on the pr and I will be taking a look at that stuff this week. So next up Dan H who is missing the meeting so I will read. So today released circuit python 721 and fixed and auto reload issues which took two prs and perhaps made it a little less likely that there's file system damage. Now a write to the file system causes the program to stop immediately and then wait for three quarters of a second before restarting. Previously we used to be waiting only for half of a second so we've got an additional quarter second in there now. And so there were some cases previously where that half second was not quite enough and it was causing a little bit of trouble. And then Dan's other note here in status updates we'll be working on making a wi-fi HTTP operations more robust by catching errors in our example scripts. And so next up I will pass it over to Jeff. Oh hello again. So last week I found what I hope was the last problem with reading and writing apple to floppies with it a fruit floppy flux engine and a pc five and a quarter inch disk drive. It was a command line usage error and the flux engine author intends to make a change to make it better. There were two settings that had to match and they didn't and it caused problems. I also got a fruit floppy and flux engine working together with an apple disk to drive mechanism reading flux and this is great because it offers the possibility of doing a full archive of copy protected apple disks including quarter tracks. This is down the line to get all the things lined up to make that happen so that brings us to this week. I want to get writing to the apple to the apple disk to with my custom pcb working or else figure out why it's not there's a possibility that an ic on the drive is damaged or that it's a wiring problem or that it's a coding problem and when I got to this point late last week my brain was kind of fried and I'm hoping that coming out at fresh today will let me sort it out. So anyway subsequent to that there is a related pull request in a fruit floppy and in flux engine those have to be finished and also I need to coordinate with the maker of the grease weasel devices and grease weasel host computer software. Basically we need to allocate some small integer numbers to identify these apple style floppy drives as distinct from a pc style floppy drive. So all those things have to happen before this chapter is fully closed but hopefully that's requiring less of my active time and attention and it's just getting some prs done. Then after that I'll work on implementing a format called dot was which is named after of course Steve Wozniak. It is a raw for a raw flux format that's used by apple emulators and I would add it to the flux engine host software so we can at least read it out of floppy's into dot was format. Then I will get some photos and text for the disc two revolution sensor modification to go in the upcoming floppy guide and last on my list this is a lot for one week investigate whether the recently added flex engine GUI can replace some of the command line usage that we are showing again in the same upcoming floppy guide. A flux engine added a GUI looks like you can choose a lot of things but whether you can do quite all of the command line stuff isn't clear and that is what I'm up to. Alrighty thanks Jeff. Next up is Jerry who is missing the meeting so I will read Jerry's let me put a timestamp here. So Jerry implemented a machine learning core capability for the LSM 6DSOX IMU and added that to the library for that device. LSM 6DS is the name of the library and also added an example of that usage. And next up is Katny. Hello. All right so last week I finally finished the TFT feather guide after so many bugs. I added the new templates that were created for the TFT feather guide to the Feather ESP32S2 guide. I started and finished the Feather ESP32V2 guide which was held up by some issues but not nearly as bad as the Feather TFT guide. And I submitted my first PR to MicroPython to expose pin 20 on the ESP32. I am unclear as to why it was not exposed but it's used on the Feather ESP32V2 and Damian agreed that it was fine to expose it for all ESP32 so I put in that PR. This week we began working with Liz on creating new breakout guides and updating guides for STEM acute breakout revisions and this morning already went over a new breakout guide and provided my documentation on creating a new guide. The new guides that we will be working with are the this this is actually a wrong part number the VL53 I think it's L4CD. I have written down wrong. The MCP 23017 and the 1.47 and 1.9 inch PFT breakouts and then the STEM and QT update that we have to work on is the ADXL 343. I will be meeting with along with Tim with Eva this afternoon to learn how to do adibot patches as Eva is currently the only one of us who knows how to do them. There's some various miscellaneous on my list. I need to do the essentials template for async.io which I may be doing in between working with Liz so that may get done sooner rather than later and then I want to eventually look into getting pre-commit going on the learning guides repo. The only thing it will be doing is pylint but I think it could be useful so that's not really a high priority but it's on my list and that's what I've got going on. Nice thank you Catney. Next up I will pass it over to Kmatch. Thanks one again. So the past few weeks I've been looking at using the new port of the circuit python that now somewhat supports the ESP32S3 chip and development board. I'm particularly interested in the capability it has for driving displays particularly fairly simple displays without controllers that sometimes called RGB displays and to support that I have a display that I scavenged from something else but I had a giant mess of wires that came loose a bunch so I took a diversion into QCAD and actually ordered my first PCB to hopefully make that connect without a bunch of janky wiring so I hope that'll make it more reliable for the development and see how that comes out. So my next thing I've been working on related with my janky wiring intact is learning how to use the existing ESP IDF code for bitmap drawing. I learned quite a bit over the weekend of what's necessary and what's not how to make that work so I'm pleased with the progress and particularly figuring out how I can translate from the example code and actually take those pieces and make it work inside a circuit python so that'll be my next task for the coming weeks. I'll keep exploring that and see how that fits in and how to fit it in with circuit python and something else I've started on but haven't finalized is some updates to Cartesian widgets so you can draw a bunch of lines rather than just signifying. So I need to package that and get that into a PR. So that's what I've got for this week. Nice, great stuff. Thank you K-Match. Next up I will send it over to Maker Melissa. Hello, last week I updated the web serial ESP tool to work with the ESP32 C3 and I've only tested it with the dev kit because I don't have the QTPI C3 yet and tested out trying to get python working with lib camera on bullseye but it's still quite a process at this point and doesn't work too well. I just did a bunch of other miscellaneous code requests and created a new example for the Mactake library. This week I'm working on a new potential workaround for requests not working on the matrix protocol in certain situations and it may start a new grade because it's been a while. That's it. Nice, thank you Melissa. Next up is Tammy makes things. All right, so last week I worked on some technology issues with my streaming setup and I was able to do two streams on Wednesday evening and Sunday morning Arizona time. I also figured out the cause of the issue I was having with the PICU tool complaining about the board being too big when you try and use it to install code on Raspberry Pi Pico. So this week I've got two more streams planned. I'm trying to figure out a regular streaming schedule although my work schedule might change in a few weeks when I start my new job so I don't know that may change again. I want to figure out a way to actually fix the issue with the PICU tool now that I've figured out what the problem is and if I have time this week I'd like to tackle a few more of the outstanding issues around type annotations in the libraries. That's what I got. Excellent, thank you Tammy. Definitely appreciate all of your work on those. Next up and the last one for status reports will be Scott. Hello. First the start of the USB host API is merged in. This matches a subset of Pi USB. We aren't actually able to talk to devices yet but we can at least see what's been enumerated and get their USB, VID, PID, manufacturer, product name and serial number. I'm waiting on TAC to do more of the low-level tiny USB work for me to be able to do actually the endpoint reading and writing but every every day I get up and check out tiny USB and he's making progress so that's really cool. I added support for the TT20 211 100, I don't know 21100 touchscreen driver which is used on the ESP32 S3 box which is a kind of dev device from Espressif. It has a nice screen so I got that working. I made a PR to update the IDF but I need to double check that it doesn't reintroduce the Wi-Fi slash USB concurrency issues. So I'll do that before I update it but the IDF update does fix the pin alarm bug with pin alarm working in light sleep and fake deep sleep. So I'm going to take a look at that and I've got some tabs open to do PR reviews and stuff as well. If you don't know, I'm expecting my wife and I are expecting a baby in 11 days so that's a week from Friday so I'm not trying to get into anything super large because at any point the baby could arrive at this point. So that's me. All right thank you. And sorry, I should say if you need anything from me now's a great time to reach out and tell me because at some point I'm going to disappear for six weeks. Yep, all righty, thanks Scott. Thank you. So that rounds out the status updates. The next section that we have is called in the weeds. In the weeds is an opportunity for more long form discussions. These can be things that come out of status updates or be identified ahead of time. If you've got any in the weeds topics, please go ahead and add them now. If you haven't already done so, you can just stick them at the bottom there and we'll go through them in the order they appear. So the first one was one that I had added. I will paste a link to this PR. I saw this PR go by I think a week or two ago and there was some question as to whether we wanted to revert some of the changes in it or not. And then I also thought it would be good if we wanted to, if anybody knows of some already published guidelines or if we want to maybe put together some guidelines around editing the device info that ends up being shown on the downloads page on circuitpython.org. So I know, I think, let's see who was it. I don't remember exactly. I think it was Dan mentioned, putting it up here as well, mentioned suggesting to revert this, some of the changes from this PR, some of them were all right, but some of them were a little bit more in depth. And I think the gist of it is essentially, you know, do we want people copy editing the information that's on the .org downloads pages or are we okay keeping whatever the original author put there, even if it is, you know, contains a little bit of extra information or maybe is not worded in the most clean way and stuff like that. So I figured I would drop this one here and just get the opinions from the community. Yeah, I think the high level is that we need to have kind of a like policy about this. Like I think we need to, I appreciate that this person is coming along and doing lots of the typos and stuff. Like I approve some of those PRs, but the marketing stuff, and I think it might have been this Shippu or somebody else pointed out that like, they might, like, you're changing the way someone else's board is worded and is that your right to do that. And then we also got a request for somebody to like clarify what board info there is. Like this board doesn't have this and doesn't have that. And so I think having some guidelines and some standards for this would be good. I think Dan is being involved in this discussion, so it's probably not worth having a detailed discussion about it now. I think it's worth it. I think we need to avoid becoming the wiki for all things as well, which is kind of the latter person of wanting to add notes and example scripts and stuff. It's like, that's not what it's for either. I think we need to draw the line of like that stuff that the manufacturers should provide and the downloads page is not the place to have a collection of random stuff. Like we could, if somebody put like, oh, I put this all on GitHub and I want to link to that from here, I think that's okay, but having the content there directly is kind of inappropriate. So I looked at what we do with Adafruit products and my impression is that we do basically take the marketing copy from the storefront and put it on circuitpython.org. So I think clearly we've established that some amount of what is more marketing speak than technical speak is appropriate, but it also looked like this particular board was maybe the most flowery and lengthy or at least it was right up there among stuff I had read. So yeah, I think establishing guidelines, maybe there's a length suggestion or something, but ultimately the board makers should have the room to say the things about their product that they want and we're working with them and they're working with us. So I would probably be in favor of going ahead and reverting kind of the more style and wholesale removal of copy, but leave the stuff like that pull request also cleaned up like spacing and spelling and things like that. And it's good to keep that and good to recognize that there were good parts of this pull request. So that's kind of my... And I've seen ones from this person that are like standardizing headers and things like that. Like that is helpful in my mind. They do seem to have done a lot of cleanup work as well, but a little bit in that PR like Jeff was mentioning, but I think there's also been other PRs and they've been doing lots of good, lots of cleanup stuff as well. It's probably worth reaching out to them to bring them on the Discord as well to be a participant in this conversation. Yeah, I agree. Which I could do. That's good, yeah. Okay, all right. Thank you to everyone. And next up, our other in the weeds topic today is for Mark. Mark, perfect. Uh, just a quick couple of questions on the vein of Ask Scott, while he's still here. For the zip pull request, they did some more digging. The GZIP-C Python is actually written in Python, just taking advantage of the ZLIB module itself for the... To do the actual compression. On top of that, I did find a good explanation. I could include on what the W bits are. It's basically, are you compressing using deflate, ZLIB, or GZIP methods? So there's a sort of a standard we can tell people, use this for this type of compression. So based on sort of those two things, I think the best path forward might be to have ZLIB have the decompress method and then that's compatible with C-Python and we can expand on that as time and want permits. And then to have the GZIP one, I can take some of the code from the C-Python one, but the way they take advantage of ZLIB is some of the areas that we won't have implemented right away. But parts of it can be and it can be from a API point. Identical and then use that for the streaming file part of it. So keep both modules in there, but keep them identical to how C-Python does, because I think that gives us that future expandability to the best. Yeah, I have no issue with that. If you want to do ZLIB.decompress and then I think what we'll want is the GZIP file or whatever it's called. Yeah, whatever the IO thing is right now. It's just, yeah, it was lazy on their part. Yeah, that makes sense. I think it should be stored as such. Okay. Now that I just dug through all the C-Python code, I figured it gives a little bit more clarity. Yeah, yeah. The only thing that GZIP does is compresses the file. It does not, you know, ZIP actually will take a group of files, combine them together and then with compression. Right. That's under Linux and Unix. It's normally done by using tar with a switch that says also GZIP the tar file. So there are two different things there. Right. We're only talking about ZLIB and GZIP here. Okay, that's why I wanted to make sure I understood. Thank you. Yeah, we're not talking about ZIP files. Okay, that was just a quick check. I figured it was easier to talk for two minutes and go back and forth and I'll write a summary into the PR2. Jeff is giving them more credit than I'm giving them credit. Jeff says I suspect MicroPython deliberately made trade-offs that are different and I wouldn't call it lazy. In particular, I looked at what they did and it looked like they were taking care to, you know, avoid the access memory allocations and all those things that they prioritize a great deal and that we prioritize a lot less than compatibility. So it's the usual and both are valid and we're right to do what we're going to do. Yes, my, yeah. Sorry, I just, you know. No, no, it's good. It's good. We need to not say things like lazy. We need to write different trade-offs. That's all. Yeah, well, they could at least name it something else. And being lazy is a great trade-off too. They technically did name it something else. It's just deceiving. But yeah, thank you for calling me out on that. All right, so I think Mark has the path forward there. And that was our last item for In the Weeds. I will take a timestamp here and do a wrap up. So this has been the Circuit Python weekly meeting for March the 14th, 2022. Thank you to everyone who participated. If you want to support Adafruit and Circuit Python and those of us that work on Circuit Python, please consider purchasing hardware from the Adafruit shop at adafruit.com. The video of this meeting will be released on YouTube at youtube.com slash Adafruit. The podcast will be made available on major podcast services. This will also be featured in the Python for Microcontroller newsletter, which is coming out tomorrow. You can visit adafruitdaily.com to subscribe for that. The next meeting I did look up is going to be Monday at the standard time. So that's Monday the 21st. It would be at 2 p.m. Eastern time, 11 a.m. Pacific. So that will be our next meeting. We encourage all of you to join us again. Let's see here at this meeting, it's going to be held on the Adafruit Discord server just like we are today, which you can join at adafru.it slash discord. And if you do get added to the Circuit Pythonistas rule, that also comes with the benefit of you will get notification in Discord the morning of the meeting. We usually send it out about an hour before. So I encourage folks to do that. And yeah, we hope to see you all next week. Thank you to everyone.