Posted on Leave a comment

Top 13 striking mehndi designs to adorn your hands

Mehndi, also known as henna, is a natural dye that is made from the plant ‘Lawsonia Inermis’, also known as the henna tree. In many cultures, mehndi is associated with a positive spirit and good luck. In most Indian weddings, before the wedding takes place, a Mehndi ceremony is organized wherein all the family members, and relatives of the bride gather together and enjoy dance and food. People hire a Mehndi artist who creates mehndi designs for the bride and her guests. 

Mehndi is applied to both the hands and the feet of the bride. Not just the bride, in many cultures, even the groom has to apply mehndi on his palm and feet as part of the tradition. 

However, gone are the days when mehndi was applied only during festivals and weddings. These days, people don’t mind applying henna on their hands and going to work or college. There is a plethora of henna designs. The most popular ones are Arabic, Indian, Moroccan, Pakistani and African. One can choose amongst these designs and reap all the benefits of applying henna. 

The significance of applying mehndi to hands is to reap all the benefits of henna. Henna has soothing as well as cooling properties that prevent the nerves from tensing up. 

The latest henna designs are created not just for weddings but also for various festivals like Karwa Chauth, Teej, Eid, and so on. It is believed that applying henna to hands brings good health, luck, and prosperity. 

There are many types of henna designs, and it can be difficult for you to choose the best one for yourself. 

Well, here we are to solve your problem- below is the list of the best mehndi designs that you can choose for any festival/ceremony.

Top 13 Mehndi Designs for all Festivities

1. Arabic Mehndi Design

It can’t be denied that Arabic mehndi design is loved by all. An Arabic mehndi design is different from an Indian mehndi design in the way that the Indian mehndi design covers the entire hand, while the Arabic mehndi design is more scattered and leaves spaces on your hands. It has a smooth flowing pattern like florals, and paisleys, and is less intricate. If you are looking for a clean and sober henna design, then go for the Arabic Mehndi design. 

It is suitable for casual functions, festivals, or regular wear too. Arabic pattern is a simple henna hand design that you can apply on your palms and the backside of your hands too. 

It is a great design for all festivals and will make your hands look gorgeous. 



2. Khafif Mehndi Design

In the list of ‘latest mehndi design, 2022’ khafif mehndi design’s name is also there. It has been trending in recent years and focuses on the decoration of each motif. Khafif mehndi’s design is known for its detailed art, feature swirls, floral elements, strip borders, blocks, shading, and checks. Khafif is one of those easy henna designs that use abstract and contemporary patterns. 

It is suited for all types of occasions and you can wear something ethnic to give your styling a perfect look. 


3. Moroccan Mehndi Design

Moroccan is one of the best designs of mehndi for those who want a contemporary and unique look. It is highly popular for its unisex patterns and gives a very trendy look. No one can resist the charm of Moroccan mehndi design, owing to its aesthetic curves, lines, and geometric shapes. You can apply this full-hand mehndi design to give a charming look to your hands.  


4. Floral Mehndi Design

This is one of the easiest henna designs for beginners and with flowers drawn beautifully on the hands, it looks highly appealing. Usually, drawing flowers is considered a simple mehndi design that looks great on the hands. Flowers are common designs and represent beauty and new beginnings. Usually, a lotus is designed on the hands, but one can draw any flower to make the design look pleasant. Common placement for flowers is on the hands as well as the back. 

Many times, flowers are added with a peacock design that beautifies the palm. The thick strokes of the flowers make this henna design look so beautiful and elegant that it immediately catches our attention. Floral henna designs are used on all occasions, including weddings. 


5. Mandala Mehndi Design

One can never go wrong with Mandala henna designs. Made using concentric circles, they are a treat for the eyes. One can experiment with Mandala mehndi design and can draw geometrical patterns, neat lines, or minimalistic designs for a great look. 

This simple mehndi design is suitable for festivals, functions, and family gatherings. It can be applied to the palms and back of your hands. 

For matching ornaments, you can choose to wear Indo-western outfits to look gorgeous.  You can apply Mandala design for festivals, family gatherings, or pre-bridal ceremonies. It works best on the back of your palms. 

You can wear a simple bracelet, statement cuffs, or floral jewelry to complete your look. 


6. Indo-Arabic Mehndi Design

This great combination of the Arabic and Indian styles of mehndi design makes it one of the best-looking designs for mehndi. It is designed with bold lines, and floral motifs, and when combined with geometrical elements like swirls, lines, dots, and crisscross, it makes the hands look so decorative that it would be hard not to look at this great mehndi design. 

Indo-Arabic mehndi design is suitable for festivals, family gatherings, or a close relative or friend’s wedding. You can apply it on the front and back of your hands and your feet too. Pair it with bangles or statement rings and look ravishing. 


7. Indian Mehndi Design

Indian Mehndi designs are always in trend because they can be worn not only during festivals but also during bridal ceremonies. It consists of floral patterns, meshwork, and paisleys, and sometimes it is even combined with Arabic designs to give a more pleasant look to the design. 

You can wear any outfit and jewelry with this mehndi design (based on the occasion) as it complements every attire. 


8. Indo-Western Mehndi Design

This is one of the great henna hand designs as it is a perfect fusion of Indian and Western henna designs. It offers quirky designs that can include short messages and long trails. All in all, you can get the best of both the worlds – Indian and Western by applying this mehndi design.

Indo-Western designs of mehndi are suited for all types of festivals, family gatherings, and occasions. You can wear an Indian outfit with a bracelet with this simple henna design. 


9. African Mehndi Design

African mehndi design has a lot of similarities with Indian mehndi design, except for a few differences. For instance, Indian mehndi design has many spaces and gaps, while Indian designs get fully covered by the hands. 

African henna designs are made with tiny fillings, and thick mehndi borders and are composed using patterns like dots, lines, geometrical shapes, squares, and so on. 

They are perfect to draw on the palms, back of the hands, arms, and feet. African mehndi design is highly popular in both India and Africa because the weather is hot in both countries and applying henna provides a cooling sensation to the body. 


10. Foot Mehndi Design

Mehndi is not just for your palms or the back of your hands, but your feet too. There are many types of easy mehndi designs for your feet – you can opt for floral designs, geometric lines, circular patterns, full-coverage designs with lotus motifs, peppy lines, and so on. 

Foot designs are generally used for festivals and wedding ceremonies. It is considered auspicious to apply henna on the feet too before the wedding. You can wear an anklet with this design.


11. Punjabi Mehndi Design

Punjabi designs of mehndi are unique and an epitome of beauty. Most of the latest Punjabi designs include loops, spirals, and even colors and glitters. They glorify the heritage and culture of Punjab and give an attractive look to the hands. Punjabi mehndi design can be worn at festivals (Baisakhi, Lohri, etc.) and pre-bridal ceremonies. 


12. Tattoo Mehndi Design

Tattoo mehndi design also comes on the list of the latest mehndi design 2022. Generally, even if people love tattoos, they are scared to get them because of the needle, the pain, and the probability of getting an infection after getting a tattoo. However, with a henna tattoo, you don’t have to worry about any of these things. 

Tattoo mehndi design is one of the best mehndi designs that is a form of body art. It is temporary and can be created on any part of your body like hands, back, neck, stomach, etc. 

With permanent tattoos, there is a drawback – you cannot change them; however, a mehndi tattoo will fade away with time and you won’t even have any scar on your body. This is the reason why tattoo mehndi designs are so much in demand now. 

You can wear these mehndi tattoo designs during festivals, or at a family gathering and match them with any outfit that you like. 


13. Pakistani Mehndi Design

Pakistani mehndi design represents the traditions, culture, and values of Pakistan. The outlines of Pakistani mehndi designs are bolder as compared to other henna designs and they include leaves, domes, mosques, mandala designs, and florals. These designs are highly detail-oriented and cannot be done by anyone. They look extremely stunning when applied to the hands and palms. 

These designs are suited for festivals, events, and weddings. 

Now that we have taken a look at the top 13 designs of mehndi, let us now understand the benefits of applying henna on hands, and feet. 


Advantages of Applying Mehndi on Skin:

1. It Acts as a Natural Coolant

A wedding is one of the most important days for any bride and groom, but along with the fun, comes mental and physical exhaustion. Festival celebrations and wedding preparations can be hectic for anyone and increase body heat. 

This, in turn, can harm your digestion, leading to stomach-related issues. It is important to have fun as well as keep yourself healthy during important events. Henna acts as a natural coolant and soothes your body and tensed nerves. It also helps in releasing excess heat from the body. In addition, it can be used to treat headaches and stomach aches too. 

2. It has Healing and Antiseptic Properties

Henna designs are also hugely popular all over India as well as other countries because henna has natural antiseptic properties that stop the growth of microbes on the skin, thereby giving you healthier skin. Its healing properties help in keeping the skin nourished and soft. 

In addition, henna also helps in regulating the blood circulation of the body. All our body organs need ample blood and oxygen, and with proper regulation of blood circulation in the body, it is ensured that blood and oxygen are being supplied properly to all the organs, allowing them to function properly. 

3. It Helps in Relieving Joint Pain

The anti-inflammatory properties of henna help in relieving joint pain. Henna possesses great anti-inflammatory properties that help fight inflammation and reduce swelling, both of which are the causes of joint pain. This is the reason why earlier people used to apply henna paste on their joints to get relief from pain. 

A study was conducted in which a topical mixture of Lawsonia inermis (henna) and Ricinus communis L. leaves extract was used on mice for the treatment of osteoarthritis. 

The study concluded that the formulation helped mitigate pain and inflammation in the paws. 


4. It Provides Relief from Stress

Stress has become an inevitable part of our lives now. Especially during a wedding ceremony or an event, people take a lot of stress which takes a toll on their health. Many times, taking too much stress can increase heat in our bodies which can cause various health ailments such as hormonal problems, digestion problems, fever, and so on. 

The cooling and soothing properties of henna help in pacifying pitta (an Ayurvedic term used to define energy that regulates our body’s normal function) and promote mental peace. Henna also has a great aroma that relaxes our minds and helps relieve stress and anxiety

5. It Fights Skin Ailments

Many people love applying mehndi on their hands because applying it helps them fight many skin problems such as itching, redness of the skin, eczema, and so on. 

Henna has antibacterial and antimicrobial properties that kill the bacteria causing skin ailments. 

Moreover, the cooling properties of henna help in calming the burning sensation of blisters and burns. Henna is a coagulant in nature which means that it boosts the process of wound healing. 

A study revealed that the medicinal use of Lawsonia inermis (henna) extracts acts as a great antimicrobial agent in therapeutics.  


6. It Maintains Blood Pressure

The hypotensive properties of henna help in regulating blood pressure levels. This supports the heart and also gets rid of stress that is being laid on the heart. You can soak four to five fresh henna leaves in water and keep them overnight. In the morning, remove the soaked leaves and drink water. It can help you maintain blood pressure. 

7. It Reverses the Signs of Aging

Henna has astringent properties that help in removing fine lines and wrinkles. Also, the antiviral, anti-inflammatory and antibacterial properties of henna help protect the skin against damage and infections. So, use henna on the skin and say goodbye to wrinkles, fine lines, saggy skin, and all other signs of aging. 

8. It has Aphrodisiac Properties

Do you know why mehndi is applied on the bride’s hands and feet before the wedding, or why there are various mehndi designs for the groom’s hand too? The reason is – henna has natural aphrodisiac properties that enhance the love and romance between the couple. Plus, many other ingredients are added to henna such as clove oil, eucalyptus, etc. that give a nice aroma. 

9. It helps fight Insomnia

One can use mehndi in various ways – one can apply it to hands, or use it as hair oil. Using henna is known to treat sleeping disorders such as restlessness and insomnia. It has a great aroma that induces sleep and relaxes the body. You can simply massage a small amount of henna paste on your forehead and remove it after half an hour. Do this before you go to bed to get a good night’s sleep. 

10. It Reduces Hair Fall

There are many shampoos and hair conditioners that have henna as an ingredient. Do you know why is that? Well, it is because henna makes hair voluminous and is also effective in reducing hair fall. Not just that, henna also boosts keratin content in the scalp and cures damaged hair. 

Henna is a great remedy for dry scalp, itchy scalp, and dandruff problems.

11. It Helps in Treating Ulcers

Mehndi is not only great for skin and hair but also for stomach health. It can be used for treating ulcers in the intestines and stomach. 

12. It is Effective in Treating Diarrhoea

Henna can also be used for treating acute diarrhea that’s caused by parasites. It can also fight infections of the intestines caused by amoeba. 

In a nutshell, henna designs are hugely popular worldwide not just because they look great on our hands, but also because henna has various medicinal properties that help achieve holistic health. 

Note: This is not a piece of professional medical advice. It is intended for informational purposes only. Contact your doctor before using any natural remedy for your health. 

One of the questions that many people (mostly the bride and the groom) have regarding henna is ‘how to darken the color of henna naturally?’ 

Well, once mehndi is applied to your hands, it appears light. People leave it on for a longer time to get the darker color of mehndi. There is a pigment present in henna known as lawsone that bonds with the skin cells, keratin, and collagen, giving a dark brown color. 

There are three types of henna available in the market:

– Neutral henna – It doesn’t have any color

– Black Henna – It used as a dye to get the black color

– Red Henna – It gives a reddish-brown tint to the skin. 

There are many types of mehndi designs but it all comes down to getting a good color after henna application. 

Here are some tips to darken your mehndi naturally:

1. Wash your Hands before Applying Mehndi

You must wash your hands, palms, or body parts where you have to apply mehndi thoroughly with soap. Also, do not apply any cream, lotion, or moisturizer after washing your hands. When you do so, mehndi will be absorbed properly and will give you a darker shade. 

2. Use Essential Oils

You can add essential oils like clove oil, eucalyptus oil, lemon oil, or Mahalabiya oil to your henna to darken it. That is because essential oils are packed with monoterpenes that are used to darken henna. 


3. Let it Dry out Naturally

When it comes to darkening your mehndi designs, patience is the key. Let henna dry out completely in a natural way and don’t shake your hands too much. Also, do not use a blow dryer to dry mehndi. Too much movement can smudge the mehndi design and make it look awful. 

4. Use Heated Cloves

It is believed that applying heat to mehndi designs can darken the henna. You can use smoke from heated cloves to make your mehndi darker. Simply, take an iron pan and place some cloves in it, turn on the heat and allow the smoke to come in contact with mehndi. Do not burn your hands and hold your hands over the smoke as long as you can bear the heat. 

5. Use Lemon and Sugar

Wait until your mehndi gets completely dried off, and then mix lemon and sugar and apply this mixture on your hands gently using a fresh cotton ball. It will make your hands a bit sticky but the results will be amazing. 

Make sure not to use too much lemon and sugar as it may lighten the color of mehndi designs rather than making it dark. 

6. Do not use water for some time

Ideally, you should stay away from water for at least 8 to 12 hours after applying and removing mehndi. This is because water doesn’t allow the color of mehndi designs to penetrate deep into your skin. It is a tough thing to do, so it is advised to not use water after henna application for as long as you can. 

7. Do not go for any Beauty Treatments

If you have any pedicure, manicure, or waxing appointments, then make sure you get it all done before applying mehndi. If you don’t have time to go for beauty treatments before the mehndi application, then wait for at least two to three days after applying mehndi to get a darker color. 

8. Mix Coffee in Henna

Coffee gives a natural brown color, so adding coffee to mehndi can make your mehndi designs get a dark color.  

9. Use Beetroot Juice

Beetroot juice acts as a natural dye in skin care products as it gives a deep purple-pinkish tint. You can mix henna with beetroot powder or beetroot juice to enhance the color.  

10. Use Black Tea

Tannins present in black tea can darken henna. So, take a handful of black tea leaves, and put them in water. Bring it to a boil, and add the decoction to mehndi. Stir well and mix to get a darker shade of mehndi. 

11. Turpentine Oil to the Rescue

Using turpentine oil can make your mehndi darker and make it last longer. 

Below are some Dos and Don’ts to give your Mehndi Designs a Darker Shade:


1. Leave the henna on for about 3 to 6 hours. 

2. After washing off the mehndi, take cold water and dip your hands into it for a minute. This is because the cold water helps in closing the skin pores, thereby penetrating the color deeper into your skin. 

3. Take some oil and massage the dried henna with it. 

4. Cover the body part where henna is applied with something when you step out in the sun. 


1. Wherever you have applied henna, make sure that you keep that body part dry for as long as you can. 

2. Always use cold water to wash off the henna, and never wash it with soap. 

3. Never use a blow dryer or a hairdryer to dry your mehndi. 

4. Do not use any skin brightening products after the application of henna. 


Mehndi designs look great on everyone. Mehndi doesn’t only adorn your hands but also makes you healthier from the inside. So, reap all the benefits of mehndi and apply henna on your hands to get happiness, beautiful hands, and holistic health. 

Recommended Articles:

6 Tips to calm your nerves before your wedding day and stay relaxed and happy

7 Expert approved skincare tips for all millennial brides to be

6 Beautiful half up hairstyles perfect for bridesmaids

Handbags for women: 7 Types of handbags every woman must have in her wardrobe


Posted on Leave a comment

How It Works

Place tattoo on smooth, flat, recently shaved areas of the body that will have little movement during one-hour application.

Avoid sweating, swimming or showering during the application time, as well as the following 6 hours.

Wear clothing over your tattoo for the first night after application to prevent any smudging or transfer.

For longer lasting results, hydrate your skin by moisturizing and drinking lots of water after your tattoo has fully developed.


Posted on Leave a comment


Brit A Z | PDF | Nature-1&&e.indexOf(“safari/”)>-1&&-1===e.indexOf(“chrome/”)}();class o{constructor(){}name(){return this._name}register(e,t){if(this.registered)throw Error(“This ViewManager is already registered”);this.registered=!0,this.documentManager=e,this.viewportManager=t,this._currentPageWidth=window.defaultViewWidth,this._currentZoomMultiplier=1,this._updatePageWidths();const i=this.documentManager.firstVisiblePage;this._register(e,t),i&&this.documentManager.gotoPage(i.pageNum,{}),e.executeCallbacks()}_zoomedPageWidth(){return this._currentPageWidth*this._currentZoomMultiplier}_updatePageWidths(){this.documentManager.setPageWidths(this._zoomedPageWidth())}isTopPageInView(){return!0}_register(e,t){}unregister(){if(!this.registered)throw Error(“This ViewManager is already unregistered”);this.isFullscreen&&this.exitFullscreen(),this._setBodyWidth(),this._unregister(),this.registered=!1,delete this.documentManager,delete this.viewportManager}_unregister(){}_pagingStep(){return 1}gotoPage(e,t){if(!this.registered)throw Error(“ViewManager must be registerd to call gotoPage”);this._gotoPage(e,t)}_gotoPage(e,t){}_fireHideExtras(){this.documentManager._fireHideExtras(),this._extrasHidden=!0}_fireShowExtras(){this.documentManager._fireShowExtras(),this._extrasHidden=!1}enterFullscreen(){if(this.isFullscreen)throw Error(“Fullscreen is already set”);this._setBodyWidth(),this.viewportManager.addEvent(“resize”,this._fullscreenResizedCallback),this._fireHideExtras(),this.resetZoom(),this._enterFullscreen(),this._fullscreenResized(this.viewportManager.viewRect),this._currentPageWidth=this.viewportManager.viewRect.width,this.isFullscreen=!0;const e=this.documentManager.firstVisiblePage;e&&this.documentManager.gotoPage(e.pageNum,{}),this.documentManager._fireEnteredFullscreen()}exitFullscreen(){if(!this.isFullscreen)throw Error(“Fullscreen is not set”);this.viewportManager.removeEvent(“resize”,this._fullscreenResizedCallback),this._fireShowExtras(),this.resetZoom(),this._exitFullscreen(),this.isFullscreen=!1;const e=this.documentManager.firstVisiblePage;e&&this.documentManager.gotoPage(e.pageNum,{}),this.documentManager._fireExitedFullscreen()}_viewBarWidth(){return this._extrasHidden?0:this.documentManager.options.extrasWidth}_enterFullscreen(){}_exitFullscreen(){}_fullscreenResized(e){}_scrollWithZoom(e,t){window.scrollTo(0,*t)}zoom(e){const t=this.viewportManager.viewRect;t&&(this._currentZoomMultiplier*=e,this._setBodyWidth(),this._updatePageWidths(),this.documentManager.setIsScrolling(!0),this._scrollWithZoom(t,e),this._zoomed(),this.documentManager.setIsScrolling(!1),this.documentManager._fireZoomed(e))}_zoomed(){}resetZoom(){this._currentZoomMultiplier=1,this._setBodyWidth(),this._updatePageWidths(),this._zoomed()}_setBodyWidth(){if(window.DocumentManager.scrollParent)return;if(!1===window.DocumentManager.updateBodyWidth)return;const e=document.documentElement.clientWidth,t=this._zoomedPageWidth()+this._viewBarWidth()+10,i=document.getElementById(“global_header”);t>e?(`${t}px`,i&&(`${e}px`)):(”100%”,i&&(”100%”))}}class l extends o{constructor(){super(),this._name=”scroll”,this._verticalPositionChangeCallback=()=>{this.checkAndUpdateVisiblePages()},this._fullscreenResizedCallback=()=>{this._fullscreenResized()},this.shouldRestorePosition=!0}_updateInViewport(e){const t=this.viewportManager.viewRect,i=e.boundingRect,s=e.isVisible;return e.isVisible=!(!t||!i)&&(i.leftt.left&&,this.adjacentVisiblePages=1,s!==e.isVisible}checkAndUpdateVisiblePages(){let e=!1;for(const t in this.pages)if(,t)){const i=this.pages[t],s=this._updateInViewport(i);e=e||s}e?this.documentManager.visiblePagesChanged():this.documentManager.scheduleLogPageView(),this._updateDisplayOnPages()}_updateDisplayOnPages(){if(this.documentManager.firstVisiblePage&&this.documentManager.lastVisiblePage){const e=this.documentManager.firstVisiblePage.pageNum-this.adjacentVisiblePages,t=this.documentManager.lastVisiblePage.pageNum+this.adjacentVisiblePages;for(const i in this.pages)if(,i)){const s=this.pages[i];s&&(s.pageNum>=e&&s.pageNume.pageNum||>}_unregister(){this.viewportManager.removeEvent(“vertical”,this._verticalPositionChangeCallback),delete this.pages}_gotoPage(e,t){if(t=t||{},!,e))return;const i=this.documentManager.pages[e];this.documentManager.setIsScrolling(!0);const s=this.documentManager.viewportManager.container;return i._updateBoundingRect(),s===window?scrollTo(i.boundingRect.left,||0))||0),this.documentManager.setIsScrolling(!1),this.documentManager.isScrolling||this.documentManager.visiblePagesChanged(),i.pageNum}_gotoNextPage(){this.documentManager.firstVisiblePage&&this.documentManager.gotoPage(this.documentManager.firstVisiblePage.pageNum+1,{direction:1})}_gotoPreviousPage(){this.documentManager.firstVisiblePage&&this.documentManager.gotoPage(this.documentManager.firstVisiblePage.pageNum-1,{direction:-1})}_setWidth(e){const t=this.pagePosition();this._currentPageWidth=e,this._updatePageWidths(),this._setBodyWidth(),this.restorePosition(t)}_fullscreenResized(){this._setWidth((window.innerWidth||document.documentElement.clientWidth)-30)}_enterFullscreen(){this._previousPageWidth=this._currentWidth||window.defaultViewWidth}_exitFullscreen(){this._setWidth(this._previousPageWidth)}pagePosition(){const e=this.viewportManager.container,t=this.documentManager.pages[this.documentManager.currentPageNum()||1],i=e.scrollTop,s=e.scrollLeft,n=(,a=(s-t.boundingRect.left)/t.boundingRect.width;return[t.pageNum,n,a]}restorePosition(e){if(this._disableRestorePosition)return;const t=this.pages[e[0]].containerElem;if(this._gotoPage(e[0],{offset:-Math.floor(e[1]*t.clientHeight)}),null!==e[2]){const i=this.viewportManager.container;let s=e[2];s=Math.floor(s*t.clientWidth);const n=t.clientWidth-i.clientWidth;i.scrollLeft=Math.min(n,s)}}zoom(e){if(!this.viewportManager.viewRect)return;const t=this.pagePosition();this._currentZoomMultiplier*=e,this._setBodyWidth(),this._updatePageWidths(),this.shouldRestorePosition&&this.restorePosition(t),this._zoomed(),this.documentManager._fireZoomed(e)}}class h extends o{constructor(){super(),this._name=”slideshow”,this.currentPageId=null,this._fullscreenResizedCallback=e=>{this._fullscreenResized(e)}}_register(){this._prepareDisplay();const e=document.getElementById(“scroll_preventer”);e&&(”hidden”,”100%”)}_unregister(){const e=document.getElementById(“scroll_preventer”);e&&(”visible”,”auto”)}_prepareDisplay(){for(const e in this.documentManager.pages)if(,e)){const t=this.documentManager.pages[e];”none”,t.hide()}this.documentManager.setPageMissingModulesVisible(!1),this.documentManager.gotoPage(this.documentManager.currentPageNum()||1)}_setPageBounds(e){const t=this.documentManager.pages[this.currentPageId];t&&t.setBounds(e.width,e.height)}_gotoPage(e){if(!,e))return;let t;this.currentPageId&&(t=this.documentManager.pages[this.currentPageId],t&&(t.isVisible=!1,”none”,t.hide())),this.currentPageId=e,t=this.documentManager.pages[e],this.isFullscreen&&this._setPageBounds(this.viewportManager.viewRect),t.isVisible=!0,t.display(!0),””,t._updateBoundingRect(),this.documentManager.visiblePagesChanged()}_setWidth(e){this._currentPageWidth=e,this.documentManager.setPageWidths(e)}_fullscreenResized(e){this._setPageBounds(e)}_enterFullscreen(){this._previousPageWidth=this._currentPageWidth||window.defaultViewWidth}_exitFullscreen(){this._setWidth(window.defaultViewWidth),this._setBodyWidth()}}class g{constructor(e={}){const{url:t,id:i,shortstyle:s,family:n,fallback:a,weight:r,style:o}=e;this.url=t,,this.shortstyle=s,,this.fallback=a,this.weight=r,}setupFont(){const{url:e,family:t,weight:i,style:s}=this,n=new FontFace(t,`url(${e})`,{weight:i,style:s});return n.display=”swap”,n}getFontFamily(){return`font-family: ${};`}getFontWeight(){return`font-weight: ${this.weight};`}getFontStyle(){return`font-style: ${};`}createPreloadElem(){return`scribd.`}}class d{constructor(e){this.fonts=[],this.docManager=e,this._cssRuleQueue=[],this._fontLoadQueue=[]}addCSSRuleToQueue(e,t=!1){this._cssRuleQueue.push(e),t&&this._flushCSSRuleQueue()}addFont(e,t,i,s,n,a){const r=this._fontUrl(i,e),o=new g({url:r,id:e,shortstyle:t,family:i,fallback:s,weight:n,style:a});return this.fonts[e]=o,o}addFontToQueue(e){const t=this.fonts[e];t._loadQueued||(t._loadQueued=!0,this._fontLoadQueue.push(t))}flushFontQueue(){if(0===this._fontLoadQueue.length)return;if(this.docManager.displayType===t)return;const e=this._fontLoadQueue;return this._fontLoadQueue=[],new Promise(requestAnimationFrame).then((()=>this._loadFonts(e)))}initStyles(){this.docManager.displayType!==t&&(this._initFamilyCSS(),this._initHidersCSS(),this._flushCSSRuleQueue(“preload_styler”))}setupTestElements(){}maxFontsLoading(){return 10}_appendNewStyleBlock(){const e=document.createElement(“style”);return document.getElementsByTagName(“head”)[0].appendChild(e),e}_flushCSSRuleQueue(e){if(this._cssRuleQueue.length>0){const t=e&&document.getElementById(e)||this._appendNewStyleBlock(),i=this._cssRuleQueue.join(“n”);t.appendChild(document.createTextNode(i)),this._cssRuleQueue=[]}}_loadFonts(e,t=0,i=10){const s=[],n=[],a=Math.min(t+i,e.length);for(let i=t;i{t.load().then((t=>{e(t)})).catch((t=>{e(t)}))}));s.push(a),n.push(`.${}`)}return Promise.all(s).then((s=>{if(s.forEach((e=>{e instanceof FontFace&&document.fonts.add(e)})),this.addCSSRuleToQueue(`${n.join(“, “)} { display: unset; }`,!0),athis._loadFonts(e,t+i,i)))}))}_fontUrl(e,t){const i=[this.docManager.fontAggregatorHosts[this.docManager._currentFontAggregatorHostIdx],this.docManager.assetPrefix,”fonts”];return i.push(`${t.toString().padStart(4,0)}.woff2`),i.join(“/”)}_initHidersCSS(){const e=[];for(let t=0;t=11||e>=20&&i>=100?10:100}}class u extends s{constructor(){super(u.EVENT_NAMES),this.viewRect=null,this.enabled=!1,this._scrollCallback=()=>{this._eventHandler(“scroll”)},this._resizeCallback=()=>{this._eventHandler(“resize”)}}_makeViewRect(){const e=this.container,t=document.documentElement,i=e.scrollTop||e.scrollY||e.pageYOffset||t.scrollTop,s=e.scrollLeft||e.scrollX||e.pageXOffset||t.scrollLeft,n=e.clientWidth||e.innerWidth||t.clientWidth,a=e.clientHeight||e.innerHeight||t.clientHeight,r={top:i,left:s,right:s+n,bottom:i+a,width:n,height:a};if(this.container!==window){const e=this.container.getBoundingClientRect&&this.container.getBoundingClientRect();e&&(r.offsetX=e.left,}return r}_updateViewRect(){const e=this.viewRect;this.viewRect=this._makeViewRect();return{xChanged:!e||e.left!==this.viewRect.left||e.width!==this.viewRect.width,yChanged:!e||!||e.height!==this.viewRect.height}}_eventHandler(e){const t=this._updateViewRect();[“resize”,”both”].includes(e)&&(t.xChanged||t.yChanged)&&this.fireEvent(“resize”,this.viewRect),(t.xChanged||t.yChanged)&&this.fireEvent(“either”,this.viewRect),t.xChanged&&this.fireEvent(“horizontal”,this.viewRect),t.yChanged&&this.fireEvent(“vertical”,this.viewRect)}enable(){if(this.enabled)throw Error(“ViewportManager has already been enabled”);this.enabled=!0,this.container=window.DocumentManager.scrollParent||window,this._eventHandler(“both”),this.container.addEventListener(“resize”,this._resizeCallback,!1);(window.DocumentManager.scrollParent?this.container:window.document).addEventListener(“scroll”,this._scrollCallback,!1)}disable(){if(!this.enabled)throw Error(“ViewportManager has already been disabled”);this.enabled=!1,window.removeEventListener(“resize”,this._resizeCallback,!1),this.container.removeEventListener(“scroll”,this._scrollCallback,!1)}}i(u,”EVENT_NAMES”,[“vertical”,”horizontal”,”either”,”resize”]);class m{constructor(e,t){this.pages=[],this.loaded=!1,this.fonts={},this.numFonts=0,this.fontLoader=t,this.groupNum=e||0}addPage(e){for(let t=0;tthis.fontLoader.maxFontsLoading(i,t,e)}load(e){if(this.hasLoaded)return;this.hasLoaded=!0;const t=()=>{for(const e in this.fonts),e)&&this.fontLoader.addFontToQueue(e);this.fontLoader.flushFontQueue()};e?window.setTimeout(t.bind(this),e)}newNextGroup(){return new m(this.groupNum+1,this.fontLoader)}}class p{constructor(e){for(const t in p._defaultParams),t)&&(this[t]=e[t]||p._defaultParams[t]);const t=this._getMissingRequiredParams();if(t.length)throw Error(“Missing required Page param(s): “+t.join(“, “));if(!this.contentUrl&&!this.innerPageElem)throw Error(“Must initialize a page with either a contentUrl or innerPageElem element”);if(!0===this.containerElem.boundToPageObj)throw Error(“Container Elem is already bound to a page. We shouldn’t get here”);this.containerElem.boundToPageObj=!0,this._targetHeight=null,this._targetMultiplier=null,this._targetWidth=null,this._innerPageVisible=!!this.innerPageElem,this._imagesTurnedOn=!1,this.boundingRect=null,this.isVisible=!1,this.displayDirty=!0,this.displayOn=null,this.loadHasStarted=!!this.innerPageElem}_getMissingRequiredParams(){const e=[];let t;for(let i=0;i/g,””),i=document.createElement(“div”);i.innerHTML=t.trim();const s=i.firstChild;this.containerElem.appendChild(s),this.innerPageElem=s,this.turnOnLinks(),this.fixSVGFonts(),this._fitContentsToWidth(),this.displayDirty=!0,this.displayOn?this.display():this.hide()}fixSVGFonts(){if(!this._svgFontsFixed&&this.innerPageElem){if(r){const e=function(t){if(t.nodeType===document.TEXT_NODE){const[ n][^ n ]/);i>=0&&e(t.splitText(i+1))}else{const i=t.childNodes;for(let t=0;t`}load(){if(this.currentlyLoading=!0,this.loadHasStarted=!0,this.innerPageElem)throw Error(“We already have loaded this page, but it looks like you called loadPage again”);this.loadFonts();const e=`page${this.pageNum}_callback`;if(window[e])try{delete window[e]}catch(t){window[e]=void 0}if(this.docManager.displayType===t)return delete this.currentlyLoading,void this._setContainerContents(this.imagePageContent(this.contentUrl));const i=document.createElement(“script”);window[e]=t=>{i&&i.parentNode===document.body&&document.body.removeChild(i);const s=t[0];delete this.currentlyLoading,this._setContainerContents(s);const n=document.getElementById(;if(n&&n.classList.contains(“blurred_page”)&&this.docManager.doDynamicBlurring(,this.docManager.fireEvent(“pageLoaded”,this.containerElem),n&&this.docManager.lazyImageObserver){const e=n.querySelectorAll(“.absimg”);for(let t=0;te/t?t=Math.ceil(e/this.origWidth*this.origHeight):e=Math.ceil(t/this.origHeight*this.origWidth),this._targetWidth!==e&&(”px”,this._targetWidth=e),this._targetHeight!==t&&(”px”,this._targetHeight=t),this._fitContentsToWidth()}turnOnImages(){if(!this.innerPageElem)throw Error(“Can’t turn on images for a page that’s not loaded”);if(this._imagesTurnedOn)throw Error(“Images have already been turned on for this document”);this._imagesTurnedOn=!0;const e=this.innerPageElem.getElementsByTagName(“img”);for(let t=0;t-1&&!s.href){const e=s.getAttribute(“orig”);if(e){let i=n.decode(e).replace(/^j[W]*a[W]*v[W]*a[W]*s[W]*c[W]*r[W]*i[W]*p[W]*t[W]*:|^f[W]*i[W]*l[W]*e[W]*:/gi,””);^page/)>-1?s.onclick=t(i):(^(http|ftp)/)<0&&(i="http://"+i),"_blank",a(s,i),s.rel="nofollow ugc")}}}}}i(p,"_defaultParams",{containerElem:null,innerPageElem:null,contentUrl:null,origWidth:null,origHeight:null,fonts:null,docManager:null,pageNum:null}),i(p,"_requiredParams",["origWidth","origHeight","fonts","docManager","containerElem","pageNum"]);class f extends s{constructor(e,t,i){super(f.EVENT_NAMES),this.options=i||{},this.options.extrasWidth=this.options.extrasWidth||window.extrasWidth,this.defaultViewMode=e||"scroll",||!1,this.callbacks_ready=!1,this.callbacks=[],this.pages={},this._pageWidths=null,this.options.hasWoffFonts?(this._fontLoader=new d(this),this.adjacentFontLoadPages=1):(this._fontLoader=new c(this),this.adjacentFontLoadPages=8),this.viewManagers={scroll:new l,slideshow:new h},this.viewportManager=new u,this._currentFontAggregatorHostIdx=0,this.visiblePages=[],this.firstVisiblePage=null,this.lastVisiblePage=null,this.firstHiddenPageNum=null,this.truncateDocument=window.__truncate_document||!1,this.currentFontGroup=new m(0,this._fontLoader),this.isScrolling=!1,this._scrollingCount=0,"IntersectionObserver"in window&&"IntersectionObserverEntry"in window&&"intersectionRatio"in window.IntersectionObserverEntry.prototype&&"isIntersecting"in window.IntersectionObserverEntry.prototype&&this.setupLazyImageObserver()}setupLazyImageObserver(){this.lazyImageObserver=new IntersectionObserver((e=>{e.forEach((e=>{e.isIntersecting&&this.lazyLoad(}))}))}lazyLoad(e){e.className.toLowerCase().search(“absimg”)>-1&&!e.src&&(e.src=this.subImageSrc(e.getAttribute(“orig”)),e.removeAttribute(“orig”),”block”,this.lazyImageObserver&&this.lazyImageObserver.unobserve(e))}observeImages(e){if(!this.lazyImageObserver||!this.lazyImageObserver.observe)return;const t=e.getElementsByTagName(“img”);for(let e=0;e-1&&this.lazyImageObserver.observe(t[e])}loadImages(e){const t=e.getElementsByTagName(“img”);for(let e=0;e{}))}disableRestorePosition(){this.viewManagers.scroll._disableRestorePosition=!0}_fireZoomed(e){this.fireEvent(“zoomed”,e)}nextFontAggregatorHost(){return this._currentFontAggregatorHostIdx=(this._currentFontAggregatorHostIdx+1)%this.fontAggregatorHosts.length,this.fontAggregatorHosts[this._currentFontAggregatorHostIdx]}_fireHideExtras(){this.fireEvent(“hideExtras”)}_fireShowExtras(){this.fireEvent(“showExtras”)}currentPageNum(){return this._expectedFirstPageNum}setupTestElements(){this._fontLoader.setupTestElements()}pageCount(){if(,”_pageCount”))return this._pageCount;let e=0;for(const t in this.pages),t)&&e++;return this._pageCount=e,this._pageCount}truncatedPagesString(){return`${this.firstHiddenPageNum}-${this.originalPageCount}`}setupPaidDocument(e,t){this.allowedPages=e,this.originalPageCount=t,this._allowedPagesHash=[],this._maximumAllowedPage=Math.max.apply(null,this.allowedPages),this._minimumAllowedPage=Math.min.apply(null,this.allowedPages),this._isPaidDocument=!0,this._pageMissingElements=[];for(let t=0;t0&&e[t]>e[t-1]+1||0===t&&1!==e[t])&&this._pageMissingElements.push(“page_missing_explanation_”+e[t].toString());this._maximumAllowedPage!==this.originalPageCount&&this._pageMissingElements.push(“page_missing_explanation_”+(this.originalPageCount+1).toString())}minimumPageNumber(){return”book”===this.viewMode()?0:1}maximumPageNumber(){return this.allowedPages?this.originalPageCount:this.pageCount()}getClosestPageNumber(e,t){if(!this.allowedPages)return e;if(this._allowedPagesHash[e])return e;if(e>=this._maximumAllowedPage)return this._maximumAllowedPage;if(e<=this._minimumAllowedPage)return this._minimumAllowedPage;for(let i=1;i<=this.originalPageCount;i++){if(t=0&&e+i0?e[e.length-1]:null,this.isScrolling||(this._loadAdjacentFonts(),this._loadAdjacentPages()),(this.firstVisiblePage===t||this.firstVisiblePage&&t)&&this.firstVisiblePage.pageNum===t.pageNum||!this.isScrolling&&this.firstVisiblePage&&this._updateExpectedFirstPage(this.firstVisiblePage.pageNum),this.scheduleLogPageView()}constrain(e,t,i){return Math.min(i,Math.max(t,e))}boundingRatioForPage(e){const t=this.viewportManager.viewRect,i=e.boundingRect,,n=i.right-i.left;return{left:(t.left-i.left)/n,right:(t.right-i.right)/n+1,top:this.constrain((,e.pageNum,e.pageNum+1),bottom:this.constrain((t.bottom-i.bottom)/s+e.pageNum+1,e.pageNum,e.pageNum+1)}}scheduleLogPageView(){this.logPageViewTimout&&window.clearTimeout(this.logPageViewTimout),this.logPageViewTimout=window.setTimeout((()=>{this.logPageView(),this.logPageViewTimout=null}),1e3)}_floor2(e){return Math.floor(100*e)/100}getVisibleBBox(){const e={};if(this.firstVisiblePage){const t=this.boundingRatioForPage(this.firstVisiblePage);e.left=t.left,e.right=t.right,}if(this.lastVisiblePage){const t=this.boundingRatioForPage(this.lastVisiblePage);e.bottom=t.bottom}return e}logPageView(){const e=this.getVisibleBBox();for(const t in e),t)&&(e[t]=this._floor2(e[t]));const t=[[e.left,],[e.right,e.bottom]];return this.fireEvent(“pageView”,t),e}_updateExpectedFirstPage(e){this._expectedFirstPageNum=e,this.fireEvent(“expectedFirstPageChanged”,this._expectedFirstPageNum)}_loadAdjacentFonts(){if(this.firstVisiblePage&&this.lastVisiblePage){const e=this.firstVisiblePage.pageNum-this.adjacentFontLoadPages,t=this.lastVisiblePage.pageNum+this.adjacentFontLoadPages;for(let i=e;i<=t;i++){const e=this.pages[i];e&&e.loadFonts()}}}_loadAdjacentPages(){if(this.firstVisiblePage&&this.lastVisiblePage){const e=this.firstVisiblePage.pageNum-3,t=this.lastVisiblePage.pageNum+3;for(let i=e;i<=t;i++){const e=this.pages[i];e&&!e.loadHasStarted&&(e.load(),}}}_removeUnusedPages(){const e=this.firstVisiblePage.pageNum-3,t=this.lastVisiblePage.pageNum+3,i=this.pages;let s=4;for(;i[s];)(st)&&i[s].remove(),s++}_updatePageBoundingRects(){for(const e in this.pages),e)&&this.pages[e]._updateBoundingRect()}removeInsteadOfBlurring(e){return!!(this.truncateDocument&&this.firstHiddenPageNum&&e.pageNum>=this.firstHiddenPageNum)||(!!f.disablePageBlur||”undefined”==typeof Scribd)}addPage(e){if(!this.firstHiddenPageNum&&e.blur&&(this.firstHiddenPageNum=e.pageNum),!this.removeInsteadOfBlurring(e)){if(void 0===e.pageNum)throw Error(“must have pageNum param”);if(e.docManager=this,e.innerPageElem){const t=e.innerPageElem.querySelectorAll(“.absimg”);for(let i=0;i{this.setViewManager(e,t)}))}_setViewManager(e,t){t||this._currentViewManager.unregister();const i=this._currentViewManager;this._currentViewManager=this.viewManagers[e],this._currentViewManager.register(this,this.viewportManager),this.fireEvent(“viewmodeChanged”,this.viewMode(),i?}setInitialViewManager(e){if(this._currentViewManager)throw Error(“This should be called before any view manager exists”);this._setViewManager(e,!0),this.fireEvent(“viewmodeInitialized”,this.viewMode(),null)}setDefaultWidth(e){this._currentViewManager._currentPageWidth=e,this._currentViewManager._currentZoomMultiplier=1,this._currentViewManager._updatePageWidths()}subImageSrc(e){if(!this._imageDomainSubstitutionList||0===this._imageDomainSubstitutionList.length)return;const t=this._imageDomainSubstitutionList[0];return e.replace(this._imageDomainSubstitutionFrom,t)}allPagesAdded(){if(this._allPagesAddedCalled)throw Error(“can only call allPagesAdded once”);this.viewportManager.enable(),this._updatePageBoundingRects(),this.setInitialViewManager(this.defaultViewMode),this.fireEvent(“allPagesAdded”)}setEmbeddedDoc(e){this._isEmbed=”True”===e}setPageWidths(e){this._pageWidths=e;for(const e in this.pages),e)&&this.pages[e].setWidth(this._pageWidths);this._updatePageBoundingRects()}addFont(e,t,i,s,n,a){this._fontLoader.addFont(e,t,i,s,n,a)}initStyles(){this._fontLoader.initStyles()}gotoPage(e,t){const i=!(e%1==0);let s=null;if(i&&(s=+(e%1).toFixed(2),e=Math.floor(e)),ethis.maximumPageNumber())return;t||(t={}),i&&void 0===t.frac&&(t.frac=s);const n=t.direction||0;let a=this.pages[e];void 0===a&&this._isPaidDocument&&(e=this.getClosestPageNumber(e,n),a=this.pages[e]),[e]&&this.pages[e].setWidth(this._pageWidths),this._updateExpectedFirstPage(e),this._currentViewManager.gotoPage(this._expectedFirstPageNum,t)}gotoPreviousPage(){const e=this._currentViewManager._pagingStep();this._currentViewManager.isTopPageInView()?this.gotoPage(this._expectedFirstPageNum-e,{direction:-1}):this.gotoPage(this._expectedFirstPageNum,{direction:-1})}gotoNextPage(){const e=this._currentViewManager._pagingStep();this.gotoPage(this._expectedFirstPageNum+e,{direction:1})}enterFullscreen(){this._currentViewManager.enterFullscreen()}exitFullscreen(){this._currentViewManager.exitFullscreen()}isFullscreen(){return this._currentViewManager.isFullscreen}_fireEnteredFullscreen(){this.fireEvent(“enteredFullscreen”)}_fireExitedFullscreen(){this.fireEvent(“exitedFullscreen”)}viewMode(){return this._currentViewManager?}zoom(e){this._currentViewManager.zoom(e)}resetZoom(){this._currentViewManager.resetZoom()}setImageDomainSubstitution(e,t){this._imageDomainSubstitutionFrom=e,this._imageDomainSubstitutionList=t}disableViewManagerResizeWidth(){o.prototype._setBodyWidth=function(){}}disable(){this.disabled||(this.disabled=!0,this.viewportManager.disable())}disableCopyPasteOnPage(e){[“dragstart, selectstart, contextmenu”].forEach((function(t){e.addEventListener(t,(function(e){e.preventDefault()}))})),e.setAttribute(“unselectable”,”on”),e.querySelectorAll(“*”).forEach((function(e){e.setAttribute(“unselectable”,”on”)}))}doDynamicBlurring(e){let t;if(!this.removeInsteadOfBlurring()){t=document.getElementById(e),this.disableCopyPasteOnPage(t);const i=function(){const e=document.createElement(“div”);t.appendChild(e);const i=0===t.querySelectorAll(“.text_layer, .image_layer”).length;window.render_blur_promo(e,i)};window.__app_loaded?i():window.__pages_to_blur.push(i),t.querySelectorAll(“.text_layer”).forEach((function(e){[“text-shadow”]=”0px 0px 70px black”,”transparent”})),t.querySelectorAll(“.text_layer [style]”).forEach((function(e){”transparent”})),t.querySelectorAll(“.image_layer img”).forEach((function(e){}))}}setJQuery(){“DocumentManager.setJQuery is deprecated. jQuery is no longer a dependency.”)}}return i(f,”EVENT_NAMES”,[“expectedFirstPageChanged”,”viewmodeChanged”,”enteredFullscreen”,”exitedFullscreen”,”hideExtras”,”showExtras”,”zoomed”,”pageHide”,”pageLoaded”,”allPagesAdded”,”pageView”,”visiblePagesChanged”,”viewmodeInitialized”]),f}(); ]]>

Posted on Leave a comment

“Coal’s last gasp” could keep world from achieving climate goals

coal plant smoke stacks coal plant smoke stacks Coal-fired power plant near Joseph City, Arizona (Photo by John Fowler, CC BY 2.0)

Editor’s note: This story was originally published by The Guardian. It appears here as part of the Climate Desk collaboration.

The number of coal-fired power plants under development around the world fell last year, but far too much coal is still being burned and too many new coal-fired power plants are planned for the world to stay within safe temperature limits.

Coal use appeared to be in long-term decline before the COVID-19 pandemic, but lockdowns around the world and economic upheaval drove an increase in new coal projects in 2020, particularly in China.

Last year, the total coal power capacity in development fell sharply again, by about 13 percent, from 525GW to 457GW, a record low for new plants under development, according to a report from Global Energy Monitor published on Tuesday. The number of countries planning new plants also fell, from 41 at the beginning of 2021 to 34 countries.

But these encouraging signs were outweighed by a slowdown in older coal-fired power stations being taken out of service. About 25GW of capacity was taken out—roughly equal to the amount of new capacity commissioned in China—and the amount of electricity generated from coal rose by 9 percent in 2021 to a record high, more than rebounding from a 4 percent fall in 2020 when COVID first struck.

The authors of the report concluded that “coal’s last gasp is not yet in sight”, despite countries agreeing at the COP26 UN climate summit last November to a “phase down” of coal. Last year, the International Energy Agency warned that no new exploration of fossil fuels of any kind could take place if the world was to limit global heating to 1.5 degrees Celsius above pre-industrial levels.

The continuing use of coal comes despite ever starker warnings from scientists in the latest assessment by the Intergovernmental Panel on Climate Change (IPCC), which concluded that the world would far exceed the 1.5 degrees Celsius limit without rapid reductions in greenhouse gas emissions.

Flora Champenois of Global Energy Monitor, one of the report’s authors, said: “The coal plant pipeline is shrinking, but there is simply no carbon budget left to be building new coal plants. We need to stop now. The latest IPCC report’s directive for a fighting chance at a livable climate is clear – stop building new coal plants and retire existing ones in the developed world by 2030, and the rest of the world soon after.”

The war in Ukraine has also taken a toll, pushing up gas prices and making coal cheaper by comparison, tempting companies and countries to burn more of the dirtiest fuel. But Lauri Myllyvirta, lead analyst for the Centre for Research on Energy and Clean Air, and another co-author of the report, said there could also be an upside in that many countries—particularly in Europe—were looking to reform their energy systems to accelerate clean energy and emphasise energy efficiency.

“It’s really important to note how much movement there has been towards clean energy and efficiency in response to the invasion,” he said.

Weakening demand in China was also dampening the prospects of a further coal revival, he added. The country’s response to the current resurgence of COVID-19, and to the uncertain global economy, would be crucial. “The question is whether China does go for the high-quality economic growth that the leadership has been talking about.”

China has commissioned more new coal-fired power than the rest of the world combined since the COVID-19 pandemic started, but the Chinese government’s plans for increasing clean electricity production by 2025 should mean that less coal is used, even if new coal-fired power plants are built there. But the building of such plants must be controlled much more strictly, according to the report, or growing over-capacity could hurt the country’s transition.

Globally, there are still more than 2,400 coal-fired power plants operating in 79 countries, making a total of nearly 2,100 GW of capacity. Only 170 plants are not covered by an eventual phase-out date or carbon-neutrality target, but too few are scheduled to retire in time to stay within 1.5 degrees Celsius.