m4 macro processor (2020)

the one correct templating language

2020-06-17

Contents

  1. Background
  2. Exposure
  3. First Steps
  4. Catalyst
  5. Adoption
  6. Conclusion

Background

m4 is a macro processor, in the sense that it copies its input to the output, rising macros as it goes

https://www.gnu.org/savannah-checkouts/gnu/m4/handbook/m4-1.4.18/m4.html#Preliminaries

m4 is a core gnu utility, and is installed by default on most *nix systems. Every particular individual that I’ve encountered, in point of fact. Including macOS.

I procure in tips myself a barely serious relate line nerd and am accustomed to sed, awk, grep, carve, variety, tr, and so forth. But I had by no methodology heard of this macro processor. It looked very mysterious and imprecise when I first encountered it.

Exposure

I’m now not 100% when and the put I first encountered m4. It totally may well well beget been in the colophon of technomancy.us the put the creator boasts that the entire dwelling is “printed through GNU M4, rsync, and a 12-line Makefile,” which used to be vast magnificent to the minimalist in me.

I then be unsleeping reading Notes on the M4 Macro Language on my phone in the airport lounge on my ability off to vacation somewhere, attempting to learn more about this mysterious little program that has been below my nostril this entire time.

Later I found apostl on github, a miniature wrapper for m4 with the purpose of with out utter at the side of partials in your HTML. This used to be an application that resonated with me: a 0 overhead, framework-free strategy of modularizing HTML for of us like me who steady beget to jot down static stammer material with no additional instruments or bloat.

Lastly I will abstract out my header, footer, and nav parts, and consist of them the put ever I want.

First Steps

What I wished from m4 used to be as a intention to tumble an consist of(nav.md) and an consist of(footer.md) in my markdown and introduce somewhat of bit of modularity into my workflow.

I did this for a hot minute, and it used to be vast. I had expandable macros embedded in my markdown. I’ll well well pipe each markdown file thru m4 to boost it, after which pipe the assembled markdown thru pandoc to assemble an HTML page.

It used to be glorious.

Besides for, I couldn’t abet the feeling that it ought to be better. I was silent doing lots of things by hand like updating the “all posts” page of my blog. And I had the sneaking suspicion that things may well well rating intention more programmatic if I’ll well well greatest fully remove the aptitude of these macros.

Tranquil, it used to be steady adequate.

Catalyst

Unless it wasn’t.

The catalyst for corpulent adoption, for a deep dive into the aptitude of m4, came from something I by no methodology idea I’d ever glimpse.

I started attempting to blog on my new pinebook. This arm64 machine now not greatest didn’t beget pandoc installed, but pandoc wasn’t even in the application repository. I idea of as compiling it myself, but the language it’s written in, Haskel, doesn’t even collect on arm64.

The component I idea I’d by no methodology glimpse is a computer with no pandoc.

So I started down the path of looking out down all markdown from my blog, resigning myself to writing HTML. And I at remaining reversed that option due to I abominate writing HTML that a lot, and went motivate to writing markdown all once more and merely the utilization of a markdown to HTML converter that isn’t pandoc.

Pandoc is definitely overkill for steady converting markdown to HTML. I don’t need a swiss military knife. I need a butter knife.

But between looking out down markdown and inserting it motivate, I spent an afternoon with Technomancy’s makefile and m4 scientific doctors, and surely started to fancy.

Adoption

The essential component I surely overlooked about losing pandoc used to be atmosphere metadata in the YAML frontmatter.

Easy fix, even when. That every particular person modified into macro definitions on the live of the doc:

clarify(__timestamp, 2020-06-17)dnl
clarify(__title, `m4')dnl
clarify(__subtitle, `the one correct templating language')dnl
clarify(__id, 9)dnl

Then the stammer material will get sandwiched between the includes that I first fell in like with:

consist of(src/header.html)
markdown markdown markdown
consist of(src/footer.html)

And the motive that works so well is–and I by no methodology idea I’d ever hear myself mumble this–thanks to the not most likely thing about global inform!

Any macro you clarify in Relate A is supplied to Relate B if you happen to consist of Relate B from Relate A.

So the title, subtitle, and so forth is supplied to header.html on this case. The put I will region </code> in the head and tumble an <code></p> <h1></code> in the body, very like pandoc did.</p> <p>Lastly, I learned to swap the default quote strings. Because when writing markdown corpulent of <code>code blocks</code>, it merely does now not attain to beget m4 attempting to escape a string each time it encounters a backtick.</p> <p>So now a blog put up looks as if this: </p> <pre><code>clarify(__timestamp, 2020-06-17)dnl clarify(__title, `m4')dnl clarify(__subtitle, `the one correct templating language')dnl clarify(__id, 9)dnl consist of(src/header.html) changequote(<!,!>)dnl Or else `code blocks` confuse m4 markdown markdown markdown markdown changequote`'dnl swap quotes `motivate to default' consist of(src/footer.html)</code></pre> <p>Now right here are two things I lifted straight from Technomancy: populating the “All posts” list, and auto-populating the rss feed.</p> <p>Here’s implement a “countdown” for loop in m4, straight from <em>Notes on the M4 Macro Language</em> with minor adjustments: </p> <pre><code>clarify(`for',`ifelse($#,0,``$0'',`ifelse(eval($2>=$3),1, `pushdef(`$1',$2)$4`'popdef(`$1')$0(`$1',decr($2),$3,`$4')')')')</code></pre> <p>Mistaken, comely? m4 is vast for macros and includes. Now not vast relaxing for frequent programming. But, like immigrants, it will get the job accomplished.</p> <p>So now “all posts” and rss.xml can each, with the introduction of one “LATEST” variable outlined in the Makefile (which tells the macros what number of recordsdata there are in entire), iterate over the entire recordsdata and cargo them, diverting their output to a throwaway register but maintaining their macro definitions. So it’s that it’s most likely you’ll well perhaps also deem of to yank the title and timestamp from each put up, as an example, and spit them out into the list of all posts. <a href="https://github.com/chrisman/chrisman.github.io/blob/a2a949f3f43613ea1a87677162e34f9138f6804c/src/list.m4">Like so</a>.</p> <p>The final bit of cleverness that I borrowed from Technomancy used to be to beget header.html and footer.html both, reckoning on the precense of a “__feed” macro passed in by the Makefile, wrap the put up up in an HTML doc for the blog or an XML doc for the feed. <a href="https://github.com/chrisman/chrisman.github.io/blob/a2a949f3f43613ea1a87677162e34f9138f6804c/src/header.html#L1">Like so</a>.</p> <h2 id="conclusion">Conclusion</h2> <p>m4 isn’t very most likely for rapid macro growth and for at the side of recordsdata.</p> <p>But it surely speedily becomes vast unwieldly if you happen to want, mumble, to implement a for loop or attain a lot of the rest programmatic in any appreciate.</p> <p>It is subtle to debug. I speedily found my default habits when encountering something surprising is to steady enlarge the escape quotes round something. That in general fixed it.</p> <p>That acknowledged, it’s an gripping language, and I found it rewarding to learn and work with, and I’ll potentially attain for all of it once more if I surely beget the chance to.</p> <p>I’m perfectly relaxed with the present inform of writing for this blog. I surely feel like I’m 90% of the ability there to my normal imaginative and prescient of “gross markdown with includes,” and the additional m4 doesn’t surely distress me in the slightest. It’s silent surely trim, with nearly the entire complexity and grotesque stuff moved faraway from the put I write into auxiliary recordsdata.</p> </div> <p><a href="https://chrisman.github.io/9.html" class="button purchase" rel="nofollow noopener noreferrer" target="_blank">Read More</a></p> </div> <div class="ct-share-box ct-constrained-width ct-hidden-sm" data-location="bottom" data-type="type-1" > <span class="ct-module-title">Share your love</span> <div data-icons-type="simple"> <a href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fjirnal.com%2Fm4-macro-processor-2020%2F" data-network="facebook" aria-label="Facebook" rel="noopener noreferrer nofollow"> <span class="ct-icon-container"> <svg width="20px" height="20px" viewBox="0 0 20 20" aria-hidden="true"> <path d="M20,10.1c0-5.5-4.5-10-10-10S0,4.5,0,10.1c0,5,3.7,9.1,8.4,9.9v-7H5.9v-2.9h2.5V7.9C8.4,5.4,9.9,4,12.2,4c1.1,0,2.2,0.2,2.2,0.2v2.5h-1.3c-1.2,0-1.6,0.8-1.6,1.6v1.9h2.8L13.9,13h-2.3v7C16.3,19.2,20,15.1,20,10.1z"/> </svg> </span> </a> <a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fjirnal.com%2Fm4-macro-processor-2020%2F&text=m4%20macro%20processor%20(2020)" data-network="twitter" aria-label="X (Twitter)" rel="noopener noreferrer nofollow"> <span class="ct-icon-container"> <svg width="20px" height="20px" viewBox="0 0 20 20" aria-hidden="true"> <path d="M2.9 0C1.3 0 0 1.3 0 2.9v14.3C0 18.7 1.3 20 2.9 20h14.3c1.6 0 2.9-1.3 2.9-2.9V2.9C20 1.3 18.7 0 17.1 0H2.9zm13.2 3.8L11.5 9l5.5 7.2h-4.3l-3.3-4.4-3.8 4.4H3.4l5-5.7-5.3-6.7h4.4l3 4 3.5-4h2.1zM14.4 15 6.8 5H5.6l7.7 10h1.1z"/> </svg> </span> </a> <a href="#" data-network="pinterest" aria-label="Pinterest" rel="noopener noreferrer nofollow"> <span class="ct-icon-container"> <svg width="20px" height="20px" viewBox="0 0 20 20" aria-hidden="true"> <path d="M10,0C4.5,0,0,4.5,0,10c0,4.1,2.5,7.6,6,9.2c0-0.7,0-1.5,0.2-2.3c0.2-0.8,1.3-5.4,1.3-5.4s-0.3-0.6-0.3-1.6c0-1.5,0.9-2.6,1.9-2.6c0.9,0,1.3,0.7,1.3,1.5c0,0.9-0.6,2.3-0.9,3.5c-0.3,1.1,0.5,1.9,1.6,1.9c1.9,0,3.2-2.4,3.2-5.3c0-2.2-1.5-3.8-4.2-3.8c-3,0-4.9,2.3-4.9,4.8c0,0.9,0.3,1.5,0.7,2C6,12,6.1,12.1,6,12.4c0,0.2-0.2,0.6-0.2,0.8c-0.1,0.3-0.3,0.3-0.5,0.3c-1.4-0.6-2-2.1-2-3.8c0-2.8,2.4-6.2,7.1-6.2c3.8,0,6.3,2.8,6.3,5.7c0,3.9-2.2,6.9-5.4,6.9c-1.1,0-2.1-0.6-2.4-1.2c0,0-0.6,2.3-0.7,2.7c-0.2,0.8-0.6,1.5-1,2.1C8.1,19.9,9,20,10,20c5.5,0,10-4.5,10-10C20,4.5,15.5,0,10,0z"/> </svg> </span> </a> <a href="https://www.linkedin.com/shareArticle?url=https%3A%2F%2Fjirnal.com%2Fm4-macro-processor-2020%2F&title=m4%20macro%20processor%20(2020)" data-network="linkedin" aria-label="LinkedIn" rel="noopener noreferrer nofollow"> <span class="ct-icon-container"> <svg width="20px" height="20px" viewBox="0 0 20 20" aria-hidden="true"> <path d="M18.6,0H1.4C0.6,0,0,0.6,0,1.4v17.1C0,19.4,0.6,20,1.4,20h17.1c0.8,0,1.4-0.6,1.4-1.4V1.4C20,0.6,19.4,0,18.6,0z M6,17.1h-3V7.6h3L6,17.1L6,17.1zM4.6,6.3c-1,0-1.7-0.8-1.7-1.7s0.8-1.7,1.7-1.7c0.9,0,1.7,0.8,1.7,1.7C6.3,5.5,5.5,6.3,4.6,6.3z M17.2,17.1h-3v-4.6c0-1.1,0-2.5-1.5-2.5c-1.5,0-1.8,1.2-1.8,2.5v4.7h-3V7.6h2.8v1.3h0c0.4-0.8,1.4-1.5,2.8-1.5c3,0,3.6,2,3.6,4.5V17.1z"/> </svg> </span> </a> <a href="whatsapp://send?text=https%3A%2F%2Fjirnal.com%2Fm4-macro-processor-2020%2F" data-network="whatsapp" aria-label="WhatsApp" rel="noopener noreferrer nofollow"> <span class="ct-icon-container"> <svg width="20px" height="20px" viewBox="0 0 20 20" aria-hidden="true"> <path d="M10,0C4.5,0,0,4.5,0,10c0,1.9,0.5,3.6,1.4,5.1L0.1,20l5-1.3C6.5,19.5,8.2,20,10,20c5.5,0,10-4.5,10-10S15.5,0,10,0zM6.6,5.3c0.2,0,0.3,0,0.5,0c0.2,0,0.4,0,0.6,0.4c0.2,0.5,0.7,1.7,0.8,1.8c0.1,0.1,0.1,0.3,0,0.4C8.3,8.2,8.3,8.3,8.1,8.5C8,8.6,7.9,8.8,7.8,8.9C7.7,9,7.5,9.1,7.7,9.4c0.1,0.2,0.6,1.1,1.4,1.7c0.9,0.8,1.7,1.1,2,1.2c0.2,0.1,0.4,0.1,0.5-0.1c0.1-0.2,0.6-0.7,0.8-1c0.2-0.2,0.3-0.2,0.6-0.1c0.2,0.1,1.4,0.7,1.7,0.8s0.4,0.2,0.5,0.3c0.1,0.1,0.1,0.6-0.1,1.2c-0.2,0.6-1.2,1.1-1.7,1.2c-0.5,0-0.9,0.2-3-0.6c-2.5-1-4.1-3.6-4.2-3.7c-0.1-0.2-1-1.3-1-2.6c0-1.2,0.6-1.8,0.9-2.1C6.1,5.4,6.4,5.3,6.6,5.3z"/> </svg> </span> </a> <a href="mailto:?subject=m4%20macro%20processor%20(2020)&body=https%3A%2F%2Fjirnal.com%2Fm4-macro-processor-2020%2F" data-network="email" aria-label="Email" rel="noopener noreferrer nofollow"> <span class="ct-icon-container"> <svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true"> <path d="M10,10.1L0,4.7C0.1,3.2,1.4,2,3,2h14c1.6,0,2.9,1.2,3,2.8L10,10.1z M10,11.8c-0.1,0-0.2,0-0.4-0.1L0,6.4V15c0,1.7,1.3,3,3,3h4.9h4.3H17c1.7,0,3-1.3,3-3V6.4l-9.6,5.2C10.2,11.7,10.1,11.7,10,11.8z"/> </svg> </span> </a> </div> </div> <div class="author-box ct-constrained-width ct-hidden-sm" data-type="type-2" > <a href="https://jirnal.com/author/jirnal/" class="ct-media-container"><img decoding="async" src="https://secure.gravatar.com/avatar/e0a32852bef3ec1b38b33335b526587f?s=120&d=mm&r=g" width="60" height="60" alt="Jirnal" style="aspect-ratio: 1/1;"> <svg width="18px" height="13px" viewBox="0 0 20 15"> <polygon points="14.5,2 13.6,2.9 17.6,6.9 0,6.9 0,8.1 17.6,8.1 13.6,12.1 14.5,13 20,7.5 "/> </svg> </a> <section> <h5 class="author-box-name"> Jirnal </h5> <div class="author-box-bio"> </div> <a href="https://jirnal.com/author/jirnal/" class="ct-author-box-more">Articles: 47422</a> </section> </div> <nav class="post-navigation ct-constrained-width " > <a href="https://jirnal.com/hktdc-twin-jewellery-shows-develop-lately/" class="nav-item-prev"> <figure class="ct-media-container "><img width="140" height="101" src="https://jirnal.com/wp-content/uploads/2021/07/73187/hktdc-twin-jewellery-shows-develop-lately.jpg" class="attachment-medium size-medium wp-post-image" alt="HKTDC twin jewellery shows develop lately" loading="lazy" decoding="async" itemprop="image" style="aspect-ratio: 1/1;" /><svg width="20px" height="15px" viewBox="0 0 20 15" fill="#ffffff"><polygon points="0,7.5 5.5,13 6.4,12.1 2.4,8.1 20,8.1 20,6.9 2.4,6.9 6.4,2.9 5.5,2 "/></svg></figure> <div class="item-content"> <span class="item-label"> Previous <span>Post</span> </span> <span class="item-title ct-hidden-sm"> HKTDC twin jewellery shows develop lately </span> </div> </a> <a href="https://jirnal.com/diginex-boosts-sustainability-metric-monitoring-instruments-with-6m-elevate/" class="nav-item-next"> <div class="item-content"> <span class="item-label"> Next <span>Post</span> </span> <span class="item-title ct-hidden-sm"> Diginex boosts sustainability metric monitoring instruments with $6M elevate </span> </div> <figure class="ct-media-container "><img width="300" height="213" src="https://jirnal.com/wp-content/uploads/2021/07/73051/diginex-boosts-sustainability-metric-monitoring-instruments-with-6m-elevate-300x213.jpg" class="attachment-medium size-medium wp-post-image" alt="Diginex boosts sustainability metric monitoring instruments with $6M elevate" loading="lazy" decoding="async" srcset="https://jirnal.com/wp-content/uploads/2021/07/73051/diginex-boosts-sustainability-metric-monitoring-instruments-with-6m-elevate-300x213.jpg 300w, https://jirnal.com/wp-content/uploads/2021/07/73051/diginex-boosts-sustainability-metric-monitoring-instruments-with-6m-elevate-1024x725.jpg 1024w, https://jirnal.com/wp-content/uploads/2021/07/73051/diginex-boosts-sustainability-metric-monitoring-instruments-with-6m-elevate-768x544.jpg 768w, https://jirnal.com/wp-content/uploads/2021/07/73051/diginex-boosts-sustainability-metric-monitoring-instruments-with-6m-elevate.jpg 1200w" sizes="(max-width: 300px) 100vw, 300px" itemprop="image" style="aspect-ratio: 1/1;" /><svg width="20px" height="15px" viewBox="0 0 20 15" fill="#ffffff"><polygon points="14.5,2 13.6,2.9 17.6,6.9 0,6.9 0,8.1 17.6,8.1 13.6,12.1 14.5,13 20,7.5 "/></svg></figure> </a> </nav> <div class="ct-related-posts ct-constrained-width" > <h4 class="ct-module-title"> Related Posts </h4> <div class="ct-related-posts-items" data-layout="grid"> <article itemscope="itemscope" itemtype="https://schema.org/CreativeWork"> <a class="ct-media-container" href="https://jirnal.com/what-to-peek-in-a-crt-observe-the-final-info-for-retro-gamers/" aria-label="What to peek in a CRT observe: The final info for retro gamers" tabindex="-1"><img width="300" height="182" src="https://jirnal.com/wp-content/uploads/2021/10/92342/what-to-peek-in-a-crt-observe-the-final-info-for-retro-gamers-300x182.jpg" class="attachment-medium size-medium wp-post-image" alt="What to peek in a CRT observe: The final info for retro gamers" loading="lazy" decoding="async" srcset="https://jirnal.com/wp-content/uploads/2021/10/92342/what-to-peek-in-a-crt-observe-the-final-info-for-retro-gamers-300x182.jpg 300w, https://jirnal.com/wp-content/uploads/2021/10/92342/what-to-peek-in-a-crt-observe-the-final-info-for-retro-gamers-768x466.jpg 768w, https://jirnal.com/wp-content/uploads/2021/10/92342/what-to-peek-in-a-crt-observe-the-final-info-for-retro-gamers.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" itemprop="image" style="aspect-ratio: 16/9;" /></a> <h4 class="related-entry-title" itemprop="name"><a href="https://jirnal.com/what-to-peek-in-a-crt-observe-the-final-info-for-retro-gamers/" rel="bookmark" itemprop="url">What to peek in a CRT observe: The final info for retro gamers</a></h4> <ul class="entry-meta" data-type="simple:slash" ><li class="meta-date" itemprop="datePublished"><time class="ct-meta-element-date" datetime="2021-10-29T10:45:00+00:00">October 29, 2021</time></li></ul> </article> <article itemscope="itemscope" itemtype="https://schema.org/CreativeWork"> <a class="ct-media-container" href="https://jirnal.com/geforce-rtx-3060-vs-radeon-rx-6600-which-gpu-ought-to-you-pick/" aria-label="GeForce RTX 3060 vs. Radeon RX 6600: Which GPU ought to you pick?" tabindex="-1"><img width="300" height="200" src="https://jirnal.com/wp-content/uploads/2021/10/92344/geforce-rtx-3060-vs-radeon-rx-6600-which-gpu-ought-to-you-pick-300x200.jpg" class="attachment-medium size-medium wp-post-image" alt="GeForce RTX 3060 vs. Radeon RX 6600: Which GPU ought to you pick?" loading="lazy" decoding="async" srcset="https://jirnal.com/wp-content/uploads/2021/10/92344/geforce-rtx-3060-vs-radeon-rx-6600-which-gpu-ought-to-you-pick-300x200.jpg 300w, https://jirnal.com/wp-content/uploads/2021/10/92344/geforce-rtx-3060-vs-radeon-rx-6600-which-gpu-ought-to-you-pick-768x512.jpg 768w, https://jirnal.com/wp-content/uploads/2021/10/92344/geforce-rtx-3060-vs-radeon-rx-6600-which-gpu-ought-to-you-pick.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" itemprop="image" style="aspect-ratio: 16/9;" /></a> <h4 class="related-entry-title" itemprop="name"><a href="https://jirnal.com/geforce-rtx-3060-vs-radeon-rx-6600-which-gpu-ought-to-you-pick/" rel="bookmark" itemprop="url">GeForce RTX 3060 vs. Radeon RX 6600: Which GPU ought to you pick?</a></h4> <ul class="entry-meta" data-type="simple:slash" ><li class="meta-date" itemprop="datePublished"><time class="ct-meta-element-date" datetime="2021-10-29T10:30:00+00:00">October 29, 2021</time></li></ul> </article> <article itemscope="itemscope" itemtype="https://schema.org/CreativeWork"> <a class="ct-media-container" href="https://jirnal.com/were-willing-to-are-attempting-all-the-pieces-how-a-startup-snack-value-is-leveraging-meme-culture-to-reach-possibilities/" aria-label="‘We’re willing to are attempting all the pieces’: How a startup snack value is leveraging meme culture to reach possibilities" tabindex="-1"><img width="300" height="125" src="https://jirnal.com/wp-content/uploads/2021/10/92366/were-willing-to-are-attempting-all-the-pieces-how-a-startup-snack-value-is-leveraging-meme-culture-to-reach-possibilities-300x125.jpg" class="attachment-medium size-medium wp-post-image" alt="‘We’re willing to are attempting all the pieces’: How a startup snack value is leveraging meme culture to reach possibilities" loading="lazy" decoding="async" srcset="https://jirnal.com/wp-content/uploads/2021/10/92366/were-willing-to-are-attempting-all-the-pieces-how-a-startup-snack-value-is-leveraging-meme-culture-to-reach-possibilities-300x125.jpg 300w, https://jirnal.com/wp-content/uploads/2021/10/92366/were-willing-to-are-attempting-all-the-pieces-how-a-startup-snack-value-is-leveraging-meme-culture-to-reach-possibilities-1024x427.jpg 1024w, https://jirnal.com/wp-content/uploads/2021/10/92366/were-willing-to-are-attempting-all-the-pieces-how-a-startup-snack-value-is-leveraging-meme-culture-to-reach-possibilities-768x320.jpg 768w, https://jirnal.com/wp-content/uploads/2021/10/92366/were-willing-to-are-attempting-all-the-pieces-how-a-startup-snack-value-is-leveraging-meme-culture-to-reach-possibilities.jpg 1440w" sizes="(max-width: 300px) 100vw, 300px" itemprop="image" style="aspect-ratio: 16/9;" /></a> <h4 class="related-entry-title" itemprop="name"><a href="https://jirnal.com/were-willing-to-are-attempting-all-the-pieces-how-a-startup-snack-value-is-leveraging-meme-culture-to-reach-possibilities/" rel="bookmark" itemprop="url">‘We’re willing to are attempting all the pieces’: How a startup snack value is leveraging meme culture to reach possibilities</a></h4> <ul class="entry-meta" data-type="simple:slash" ><li class="meta-date" itemprop="datePublished"><time class="ct-meta-element-date" datetime="2021-10-29T04:01:00+00:00">October 29, 2021</time></li></ul> </article> </div> </div> </article> <aside class="ct-hidden-sm ct-hidden-md" data-type="type-1" id="sidebar" itemtype="https://schema.org/WPSideBar" itemscope="itemscope"><div class="ct-sidebar" data-sticky="sidebar"><div class="ct-widget widget_search" id="search-2"> <form role="search" method="get" class="ct-search-form" data-form-controls="inside" data-taxonomy-filter="false" data-submit-button="icon" action="https://jirnal.com/" aria-haspopup="listbox" data-live-results="thumbs"> <input type="search" placeholder="Search" value="" name="s" autocomplete="off" title="Search for..." aria-label="Search for..."> <div class="ct-search-form-controls"> <button type="submit" class="wp-element-button" data-button="inside:icon" aria-label="Search button"> <svg class="ct-icon ct-search-button-content" aria-hidden="true" width="15" height="15" viewBox="0 0 15 15"><path d="M14.8,13.7L12,11c0.9-1.2,1.5-2.6,1.5-4.2c0-3.7-3-6.8-6.8-6.8S0,3,0,6.8s3,6.8,6.8,6.8c1.6,0,3.1-0.6,4.2-1.5l2.8,2.8c0.1,0.1,0.3,0.2,0.5,0.2s0.4-0.1,0.5-0.2C15.1,14.5,15.1,14,14.8,13.7z M1.5,6.8c0-2.9,2.4-5.2,5.2-5.2S12,3.9,12,6.8S9.6,12,6.8,12S1.5,9.6,1.5,6.8z"/></svg> <span class="ct-ajax-loader"> <svg viewBox="0 0 24 24"> <circle cx="12" cy="12" r="10" opacity="0.2" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="2"/> <path d="m12,2c5.52,0,10,4.48,10,10" fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2"> <animateTransform attributeName="transform" attributeType="XML" type="rotate" dur="0.6s" from="0 12 12" to="360 12 12" repeatCount="indefinite" /> </path> </svg> </span> </button> <input type="hidden" value="0798131b28" class="ct-live-results-nonce"> </div> <div class="screen-reader-text" aria-live="polite" role="status"> No results </div> </form> </div> <div class="ct-widget widget_recent_entries" id="recent-posts-2"> <h3 class="widget-title">Recent Posts</h3> <ul> <li> <a href="https://jirnal.com/is-maxar-applied-sciences-headed-for-a-breakdown-by-stocknews/">Is Maxar Applied sciences Headed for a Breakdown? By StockNews</a> </li> <li> <a href="https://jirnal.com/dorit-kemsleys-robbery-erika-jaynes-reunion-antics-and-more-bravo-files-of-the-week/">Dorit Kemsley’s robbery, Erika Jayne’s reunion antics and more Bravo files of the week</a> </li> <li> <a href="https://jirnal.com/3-monetary-stocks-to-take-up-as-rates-continues-to-upward-push-by-stocknews/">3 Monetary Stocks to Take Up as Rates Continues to Upward push By StockNews</a> </li> <li> <a href="https://jirnal.com/the-varied-procedures-armandos-dad-isnt-attending-wedding-hollywood-life/">The Varied Procedure’s Armando’s Dad Isn’t Attending Wedding – Hollywood Life</a> </li> <li> <a href="https://jirnal.com/3-shares-poised-for-jaw-shedding-growth-by-stocknews/">3 Shares Poised for Jaw-Shedding Growth By StockNews</a> </li> </ul> </div><div class="ct-widget widget_archive" id="archives-2"><h3 class="widget-title">Archives</h3> <ul> <li><a href='https://jirnal.com/2021/10/'>October 2021</a></li> <li><a href='https://jirnal.com/2021/09/'>September 2021</a></li> <li><a href='https://jirnal.com/2021/08/'>August 2021</a></li> <li><a href='https://jirnal.com/2021/07/'>July 2021</a></li> <li><a href='https://jirnal.com/2021/06/'>June 2021</a></li> <li><a href='https://jirnal.com/2021/05/'>May 2021</a></li> <li><a href='https://jirnal.com/2021/04/'>April 2021</a></li> <li><a href='https://jirnal.com/2021/03/'>March 2021</a></li> <li><a href='https://jirnal.com/2021/02/'>February 2021</a></li> <li><a href='https://jirnal.com/2021/01/'>January 2021</a></li> <li><a href='https://jirnal.com/2020/12/'>December 2020</a></li> <li><a href='https://jirnal.com/2020/11/'>November 2020</a></li> <li><a href='https://jirnal.com/2020/10/'>October 2020</a></li> <li><a href='https://jirnal.com/2020/09/'>September 2020</a></li> <li><a href='https://jirnal.com/2020/08/'>August 2020</a></li> <li><a href='https://jirnal.com/2020/07/'>July 2020</a></li> <li><a href='https://jirnal.com/2020/06/'>June 2020</a></li> <li><a href='https://jirnal.com/2020/05/'>May 2020</a></li> <li><a href='https://jirnal.com/2020/04/'>April 2020</a></li> <li><a href='https://jirnal.com/2020/03/'>March 2020</a></li> <li><a href='https://jirnal.com/2020/02/'>February 2020</a></li> <li><a href='https://jirnal.com/2020/01/'>January 2020</a></li> <li><a href='https://jirnal.com/2019/12/'>December 2019</a></li> <li><a href='https://jirnal.com/2019/11/'>November 2019</a></li> <li><a href='https://jirnal.com/2019/10/'>October 2019</a></li> <li><a href='https://jirnal.com/2019/09/'>September 2019</a></li> <li><a href='https://jirnal.com/2019/08/'>August 2019</a></li> <li><a href='https://jirnal.com/2019/07/'>July 2019</a></li> <li><a href='https://jirnal.com/2019/06/'>June 2019</a></li> <li><a href='https://jirnal.com/2019/02/'>February 2019</a></li> <li><a href='https://jirnal.com/2019/01/'>January 2019</a></li> <li><a href='https://jirnal.com/2018/12/'>December 2018</a></li> <li><a href='https://jirnal.com/2018/11/'>November 2018</a></li> <li><a href='https://jirnal.com/2018/09/'>September 2018</a></li> <li><a href='https://jirnal.com/2018/07/'>July 2018</a></li> <li><a href='https://jirnal.com/2018/05/'>May 2018</a></li> <li><a href='https://jirnal.com/2018/01/'>January 2018</a></li> <li><a href='https://jirnal.com/2017/12/'>December 2017</a></li> <li><a href='https://jirnal.com/2017/10/'>October 2017</a></li> <li><a href='https://jirnal.com/2017/09/'>September 2017</a></li> <li><a href='https://jirnal.com/2017/06/'>June 2017</a></li> <li><a href='https://jirnal.com/2017/04/'>April 2017</a></li> <li><a href='https://jirnal.com/2017/03/'>March 2017</a></li> <li><a href='https://jirnal.com/2017/02/'>February 2017</a></li> <li><a href='https://jirnal.com/2017/01/'>January 2017</a></li> <li><a href='https://jirnal.com/2016/11/'>November 2016</a></li> <li><a href='https://jirnal.com/2016/09/'>September 2016</a></li> <li><a href='https://jirnal.com/2016/08/'>August 2016</a></li> <li><a href='https://jirnal.com/2016/07/'>July 2016</a></li> <li><a href='https://jirnal.com/2016/06/'>June 2016</a></li> <li><a href='https://jirnal.com/2016/05/'>May 2016</a></li> <li><a href='https://jirnal.com/2016/02/'>February 2016</a></li> <li><a href='https://jirnal.com/2015/10/'>October 2015</a></li> <li><a href='https://jirnal.com/2015/07/'>July 2015</a></li> <li><a href='https://jirnal.com/2015/04/'>April 2015</a></li> <li><a href='https://jirnal.com/2015/03/'>March 2015</a></li> <li><a href='https://jirnal.com/2014/09/'>September 2014</a></li> <li><a href='https://jirnal.com/2014/08/'>August 2014</a></li> <li><a href='https://jirnal.com/2014/06/'>June 2014</a></li> <li><a href='https://jirnal.com/2014/04/'>April 2014</a></li> <li><a href='https://jirnal.com/2014/02/'>February 2014</a></li> <li><a href='https://jirnal.com/2013/11/'>November 2013</a></li> <li><a href='https://jirnal.com/2013/10/'>October 2013</a></li> <li><a href='https://jirnal.com/2013/06/'>June 2013</a></li> <li><a href='https://jirnal.com/2013/05/'>May 2013</a></li> <li><a href='https://jirnal.com/2013/04/'>April 2013</a></li> <li><a href='https://jirnal.com/2007/03/'>March 2007</a></li> <li><a href='https://jirnal.com/1970/01/'>January 1970</a></li> </ul> </div><div class="ct-widget widget_categories" id="categories-2"><h3 class="widget-title">Categories</h3> <ul> <li class="cat-item cat-item-2"><a href="https://jirnal.com/category/business/">Business</a> </li> <li class="cat-item cat-item-3"><a href="https://jirnal.com/category/entertainment/">Entertainment</a> </li> <li class="cat-item cat-item-4"><a href="https://jirnal.com/category/health-and-medical/">Health and Medical</a> </li> <li class="cat-item cat-item-8"><a href="https://jirnal.com/category/news/">News</a> </li> <li class="cat-item cat-item-5"><a href="https://jirnal.com/category/science-and-nature/">Science and Nature</a> </li> <li class="cat-item cat-item-6"><a href="https://jirnal.com/category/sport/">Sport</a> </li> <li class="cat-item cat-item-7"><a href="https://jirnal.com/category/technology/">Technology</a> </li> <li class="cat-item cat-item-1"><a href="https://jirnal.com/category/uncategorized/">Uncategorized</a> </li> </ul> </div><div class="ct-widget widget_block" id="block-1"> <div data-id="522" class="wp-block-blocksy-query" style="margin-top:var(--wp--preset--spacing--20)"><div class="ct-query-template-list wp-block-blocksy-post-template is-layout-flow"><article class="wp-block-post post-22079 post type-post status-publish format-standard has-post-thumbnail hentry category-technology tag-breaking tag-long-term"> <style scoped>.gspb_container-id-gsbp-6cd709fc-f489{flex-direction:column;box-sizing:border-box;}#gspb_container-id-gsbp-6cd709fc-f489.gspb_container >p:last-of-type{margin-bottom:0}.gspb_container{position:relative;}#gspb_container-id-gsbp-6cd709fc-f489.gspb_container{padding-top:30px;padding-right:30px;padding-bottom:30px;padding-left:30px;overflow:hidden;}#gspb_container-id-gsbp-6cd709fc-f489.gspb_container{background-color:var(--wp--preset--color--palette-color-9,var(--theme-palette-color-9,#000000));}</style> <div class="wp-block-greenshift-blocks-container gspb_container gspb_container-gsbp-6cd709fc-f489 gspb-hoverparent-62" id="gspb_container-id-gsbp-6cd709fc-f489"><style scoped>.gspb_container-id-gsbp-8f62902c-20a3{flex-direction:column;box-sizing:border-box;}#gspb_container-id-gsbp-8f62902c-20a3.gspb_container >p:last-of-type{margin-bottom:0}.gspb_container{position:relative;}body.gspb-bodyfront #gspb_container-id-gsbp-8f62902c-20a3.gspb_container{position:absolute;top:0px;right:0px;bottom:0px;left:0px;}#gspb_container-id-gsbp-8f62902c-20a3.gspb_container{transition:all 0.5s cubic-bezier(0.165,0.84,0.44,1);opacity:0.8;}.gspb-hoverparent-62:hover #gspb_container-id-gsbp-8f62902c-20a3.gspb_container{transform:scale(1.1);}#gspb_container-id-gsbp-8f62902c-20a3.gspb_container{overflow:hidden;}body.gspb-bodyfront #gspb_container-id-gsbp-8f62902c-20a3.gspb_container{width:100%;}body.gspb-bodyfront #gspb_container-id-gsbp-8f62902c-20a3.gspb_container{height:100%;}#gspb_container-id-gsbp-8f62902c-20a3.gspb_container{border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px;}#gspb_container-id-gsbp-8f62902c-20a3.gspb_container >.gspb_backgroundOverlay{border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px;}</style> <div class="wp-block-greenshift-blocks-container gspb_container gspb_container-gsbp-8f62902c-20a3" id="gspb_container-id-gsbp-8f62902c-20a3"><figure style="width: 100%; height: 100%; aspect-ratio: auto; margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;" class="ct-dynamic-media wp-block-image"><img fetchpriority="high" decoding="async" width="1024" height="341" src="https://jirnal.com/wp-content/uploads/2020/09/22079/tricks-on-breaking-free-from-prolonged-time-duration-it-contracts-1024x341.jpg" class="attachment-large size-large wp-post-image" alt="Tricks on breaking free from prolonged-time duration IT contracts" style="width:100%;height:100%;object-fit: cover;" srcset="https://jirnal.com/wp-content/uploads/2020/09/22079/tricks-on-breaking-free-from-prolonged-time-duration-it-contracts-1024x341.jpg 1024w, https://jirnal.com/wp-content/uploads/2020/09/22079/tricks-on-breaking-free-from-prolonged-time-duration-it-contracts-300x100.jpg 300w, https://jirnal.com/wp-content/uploads/2020/09/22079/tricks-on-breaking-free-from-prolonged-time-duration-it-contracts-768x256.jpg 768w, https://jirnal.com/wp-content/uploads/2020/09/22079/tricks-on-breaking-free-from-prolonged-time-duration-it-contracts.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure></div> <style scoped>.gspb_container-id-gsbp-6f7047f5-b4e0{flex-direction:column;box-sizing:border-box;}#gspb_container-id-gsbp-6f7047f5-b4e0.gspb_container >p:last-of-type{margin-bottom:0}.gspb_container{position:relative;}#gspb_container-id-gsbp-6f7047f5-b4e0.gspb_container{display:flex;flex-direction:column;justify-content:flex-end;}#gspb_container-id-gsbp-6f7047f5-b4e0.gspb_container{margin-bottom:0px;}body.gspb-bodyfront #gspb_container-id-gsbp-6f7047f5-b4e0.gspb_container{min-height:450px;}</style> <div class="wp-block-greenshift-blocks-container gspb_container gspb_container-gsbp-6f7047f5-b4e0 gspb-hoverparent-121" id="gspb_container-id-gsbp-6f7047f5-b4e0"><style scoped>.gspb_container-id-gsbp-56668b69-0625{flex-direction:column;box-sizing:border-box;}#gspb_container-id-gsbp-56668b69-0625.gspb_container >p:last-of-type{margin-bottom:0}.gspb_container{position:relative;}body.gspb-bodyfront #gspb_container-id-gsbp-56668b69-0625.gspb_container [class*="ct-term"]{display:inline-flex;padding:5px 10px;border-radius:2px;color:var(--theme-link-initial-color);background-color:var(--theme-button-background-initial-color);}body.gspb-bodyfront #gspb_container-id-gsbp-56668b69-0625.gspb_container [class*="ct-term"]:hover{color:var(--theme-link-hover-color);background-color:var(--theme-button-background-hover-color);}body.gspb-bodyfront #gspb_container-id-gsbp-56668b69-0625.gspb_container{position:absolute;top:0px;left:0px;}</style> <div class="wp-block-greenshift-blocks-container gspb_container gspb_container-gsbp-56668b69-0625" id="gspb_container-id-gsbp-56668b69-0625"><div style="font-size:13px;font-style:normal;font-weight:600;text-transform:uppercase;" class="ct-dynamic-data"><a class="ct-term-8616" href="https://jirnal.com/tag/breaking/">breaking</a>  <a class="ct-term-9404" href="https://jirnal.com/tag/long-term/">Long-term</a></div></div> <style scoped>.gspb_container-id-gsbp-27995f30-9d83{flex-direction:column;box-sizing:border-box;}#gspb_container-id-gsbp-27995f30-9d83.gspb_container >p:last-of-type{margin-bottom:0}.gspb_container{position:relative;}body.gspb-bodyfront #gspb_container-id-gsbp-27995f30-9d83.gspb_container [class*="ct-term"]{display:inline-flex;padding:5px 10px;border-radius:2px;color:#fff;background-color:#000;}</style> <div class="wp-block-greenshift-blocks-container gspb_container gspb_container-gsbp-27995f30-9d83" id="gspb_container-id-gsbp-27995f30-9d83"><div style="font-size:13px;font-style:normal;font-weight:600;text-transform:uppercase;" class="ct-dynamic-data"><a class="ct-term-7" href="https://jirnal.com/category/technology/">Technology</a></div></div> <h2 style="margin-top:var(--wp--preset--spacing--40);margin-bottom:var(--wp--preset--spacing--40);" class="ct-dynamic-data wp-elements-526dce2165a1b34d2d841503e93dd124 has-medium-font-size"><a href="https://jirnal.com/tricks-on-breaking-free-from-prolonged-time-duration-it-contracts/">Tricks on breaking free from prolonged-time duration IT contracts</a></h2> <div style="color:#ffffffb5; font-size:13px;text-transform:uppercase;" class="ct-dynamic-data has-text-color">September 25, 2020</div></div> </div> </article></div></div> </div><div class="ct-widget widget_block" id="block-2"> <div class="wp-block-group is-layout-constrained wp-block-group-is-layout-constrained"> <h6 class="wp-block-heading widget-title" id="popular-posts" style="margin-top:0;margin-bottom:15px">Popular Posts</h6> <div data-id="e2d" class="wp-block-blocksy-query"><div class="ct-query-template-list wp-block-blocksy-post-template is-layout-flow"><article class="wp-block-post post-5046 post type-post status-publish format-standard has-post-thumbnail hentry category-science-and-nature tag-hot tag-start"> <div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-2 wp-block-columns-is-layout-flex"> <div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><a style="aspect-ratio: 1; border-radius:2px;" class="ct-dynamic-media wp-block-image" data-hover="zoom-in" href="https://jirnal.com/hot-initiate-concept-says-pluto-as-soon-as-had-a-surface-ocean/"><img loading="lazy" decoding="async" width="300" height="207" src="https://jirnal.com/wp-content/uploads/2020/06/5046/hot-initiate-concept-says-pluto-as-soon-as-had-a-surface-ocean-300x207.jpg" class="attachment-medium size-medium wp-post-image" alt="‘Hot initiate’ concept says Pluto as soon as had a surface ocean" style="width:100%;height:100%;object-fit: cover;" srcset="https://jirnal.com/wp-content/uploads/2020/06/5046/hot-initiate-concept-says-pluto-as-soon-as-had-a-surface-ocean-300x207.jpg 300w, https://jirnal.com/wp-content/uploads/2020/06/5046/hot-initiate-concept-says-pluto-as-soon-as-had-a-surface-ocean-1024x708.jpg 1024w, https://jirnal.com/wp-content/uploads/2020/06/5046/hot-initiate-concept-says-pluto-as-soon-as-had-a-surface-ocean-768x531.jpg 768w, https://jirnal.com/wp-content/uploads/2020/06/5046/hot-initiate-concept-says-pluto-as-soon-as-had-a-surface-ocean.jpg 1041w" sizes="(max-width: 300px) 100vw, 300px" /></a></div> <div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 style="font-size:clamp(14px, 0.875rem + ((1vw - 3.2px) * 0.078), 15px); margin-bottom:var(--wp--preset--spacing--30);" class="ct-dynamic-data"><a href="https://jirnal.com/hot-initiate-concept-says-pluto-as-soon-as-had-a-surface-ocean/">‘Hot initiate’ concept says Pluto as soon as had a surface ocean</a></h2> <div style="font-size:13px;text-transform:uppercase;" class="ct-dynamic-data">June 25, 2020</div></div> </div> </article></div></div> </div> </div><div class="ct-widget widget_block" id="block-3"> <div class="wp-block-group is-layout-flow wp-block-group-is-layout-flow"> <h6 class="wp-block-heading widget-title" id="categories" style="margin-top:0;margin-bottom:15px">Categories</h6> <ul class="wp-block-categories-list wp-block-categories"> <li class="cat-item cat-item-2"><a href="https://jirnal.com/category/business/">Business</a> </li> <li class="cat-item cat-item-3"><a href="https://jirnal.com/category/entertainment/">Entertainment</a> </li> <li class="cat-item cat-item-4"><a href="https://jirnal.com/category/health-and-medical/">Health and Medical</a> </li> <li class="cat-item cat-item-8"><a href="https://jirnal.com/category/news/">News</a> </li> <li class="cat-item cat-item-5"><a href="https://jirnal.com/category/science-and-nature/">Science and Nature</a> </li> <li class="cat-item cat-item-6"><a href="https://jirnal.com/category/sport/">Sport</a> </li> <li class="cat-item cat-item-7"><a href="https://jirnal.com/category/technology/">Technology</a> </li> <li class="cat-item cat-item-1"><a href="https://jirnal.com/category/uncategorized/">Uncategorized</a> </li> </ul></div> </div><div class="ct-widget widget_block" id="block-4"> <div class="wp-block-group is-layout-constrained wp-block-group-is-layout-constrained"> <h6 class="wp-block-heading widget-title" id="business-hours" style="margin-top:0;margin-bottom:15px">Business Hours</h6> <p><strong>Monday - Friday:</strong> 08:00 - 20:00<br><strong>Saturday - Sunday:</strong> 09- 14:00</p> <div class="ct-block-wrapper"> <div class="ct-socials-block" style="--theme-icon-color:var(--wp--preset--color--white);--theme-icon-hover-color:var(--wp--preset--color--palette-color-1);--background-color:#ffffff2e;--background-hover-color:#ffffff2e;"> <div class="ct-social-box" data-color="default" data-icons-type="square:outline" > <a href="#" data-network="facebook" aria-label="Facebook"> <span class="ct-icon-container"> <svg width="20px" height="20px" viewBox="0 0 20 20" aria-hidden="true"> <path d="M20,10.1c0-5.5-4.5-10-10-10S0,4.5,0,10.1c0,5,3.7,9.1,8.4,9.9v-7H5.9v-2.9h2.5V7.9C8.4,5.4,9.9,4,12.2,4c1.1,0,2.2,0.2,2.2,0.2v2.5h-1.3c-1.2,0-1.6,0.8-1.6,1.6v1.9h2.8L13.9,13h-2.3v7C16.3,19.2,20,15.1,20,10.1z"/> </svg> </span> </a> <a href="#" data-network="twitter" aria-label="X (Twitter)"> <span class="ct-icon-container"> <svg width="20px" height="20px" viewBox="0 0 20 20" aria-hidden="true"> <path d="M2.9 0C1.3 0 0 1.3 0 2.9v14.3C0 18.7 1.3 20 2.9 20h14.3c1.6 0 2.9-1.3 2.9-2.9V2.9C20 1.3 18.7 0 17.1 0H2.9zm13.2 3.8L11.5 9l5.5 7.2h-4.3l-3.3-4.4-3.8 4.4H3.4l5-5.7-5.3-6.7h4.4l3 4 3.5-4h2.1zM14.4 15 6.8 5H5.6l7.7 10h1.1z"/> </svg> </span> </a> <a href="#" data-network="instagram" aria-label="Instagram"> <span class="ct-icon-container"> <svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true"> <circle cx="10" cy="10" r="3.3"/> <path d="M14.2,0H5.8C2.6,0,0,2.6,0,5.8v8.3C0,17.4,2.6,20,5.8,20h8.3c3.2,0,5.8-2.6,5.8-5.8V5.8C20,2.6,17.4,0,14.2,0zM10,15c-2.8,0-5-2.2-5-5s2.2-5,5-5s5,2.2,5,5S12.8,15,10,15z M15.8,5C15.4,5,15,4.6,15,4.2s0.4-0.8,0.8-0.8s0.8,0.4,0.8,0.8S16.3,5,15.8,5z"/> </svg> </span> </a> <a href="#" data-network="youtube" aria-label="YouTube"> <span class="ct-icon-container"> <svg width="20" height="20" viewbox="0 0 20 20" aria-hidden="true"> <path d="M15,0H5C2.2,0,0,2.2,0,5v10c0,2.8,2.2,5,5,5h10c2.8,0,5-2.2,5-5V5C20,2.2,17.8,0,15,0z M14.5,10.9l-6.8,3.8c-0.1,0.1-0.3,0.1-0.5,0.1c-0.5,0-1-0.4-1-1l0,0V6.2c0-0.5,0.4-1,1-1c0.2,0,0.3,0,0.5,0.1l6.8,3.8c0.5,0.3,0.7,0.8,0.4,1.3C14.8,10.6,14.6,10.8,14.5,10.9z"/> </svg> </span> </a> <a href="#" data-network="telegram" aria-label="Telegram"> <span class="ct-icon-container"> <svg width="20px" height="20px" viewBox="0 0 20 20" aria-hidden="true"> <path d="M19.9,3.1l-3,14.2c-0.2,1-0.8,1.3-1.7,0.8l-4.6-3.4l-2.2,2.1c-0.2,0.2-0.5,0.5-0.9,0.5l0.3-4.7L16.4,5c0.4-0.3-0.1-0.5-0.6-0.2L5.3,11.4L0.7,10c-1-0.3-1-1,0.2-1.5l17.7-6.8C19.5,1.4,20.2,1.9,19.9,3.1z"/> </svg> </span> </a> </div> </div> </div></div> </div></div></aside> </div> </main> <footer id="footer" class="ct-footer" data-id="type-1" itemscope="" itemtype="https://schema.org/WPFooter"><div data-row="top"><div class="ct-container" data-columns-divider="md"><div data-column="ghost"></div><div data-column="widget-area-2"><div class="ct-widget widget_block" id="block-5"> <div class="wp-block-group is-layout-flow wp-block-group-is-layout-flow"> <h6 class="wp-block-heading widget-title" id="categories-1" style="margin-top:0;margin-bottom:15px">Categories</h6> <ul class="wp-block-categories-list wp-block-categories"> <li class="cat-item cat-item-2"><a href="https://jirnal.com/category/business/">Business</a> </li> <li class="cat-item cat-item-3"><a href="https://jirnal.com/category/entertainment/">Entertainment</a> </li> <li class="cat-item cat-item-4"><a href="https://jirnal.com/category/health-and-medical/">Health and Medical</a> </li> <li class="cat-item cat-item-8"><a href="https://jirnal.com/category/news/">News</a> </li> <li class="cat-item cat-item-5"><a href="https://jirnal.com/category/science-and-nature/">Science and Nature</a> </li> <li class="cat-item cat-item-6"><a href="https://jirnal.com/category/sport/">Sport</a> </li> <li class="cat-item cat-item-7"><a href="https://jirnal.com/category/technology/">Technology</a> </li> <li class="cat-item cat-item-1"><a href="https://jirnal.com/category/uncategorized/">Uncategorized</a> </li> </ul></div> </div></div><div data-column="widget-area-3"><div class="ct-widget widget_block" id="block-6"> <div class="wp-block-group is-layout-constrained wp-block-group-is-layout-constrained"> <h6 class="wp-block-heading widget-title" id="information" style="margin-top:0;margin-bottom:15px">Information</h6> <ul class="wp-block-list"> <li><a href="#">Privacy Policy</a></li> <li><a href="#">Terms & Conditions</a></li> <li><a href="#">Site Map</a></li> <li><a href="#">FAQ</a></li> <li><a href="#">Locations</a></li> <li><a href="#">Breaking News</a></li> <li><a href="#">User Area</a></li> </ul> </div> </div></div><div data-column="widget-area-4"><div class="ct-widget widget_block" id="block-7"> <div class="wp-block-group is-layout-constrained wp-block-group-is-layout-constrained"> <h6 class="wp-block-heading widget-title" id="company" style="margin-top:0;margin-bottom:15px">Company</h6> <ul class="wp-block-list"> <li><a href="#">About</a></li> <li><a href="#">Contact</a></li> <li><a href="#">Our Staff</a></li> <li><a href="#">Help Center</a></li> <li><a href="#">Advertise</a></li> <li><a href="#">Subscription</a></li> <li><a href="#">Startups</a></li> </ul> </div> </div></div></div></div><div data-row="middle"><div class="ct-container"><div data-column="ghost"></div><div data-column="logo"> <div class="site-branding" data-id="logo" data-logo="top" itemscope="itemscope" itemtype="https://schema.org/Organization"> <a href="https://jirnal.com/" class="site-logo-container" rel="home" itemprop="url" ></a> <div class="site-title-container"> <p class="site-description ct-hidden-sm ct-hidden-md" itemprop="description"> All voices matter </p> </div> </div> </div><div data-column="ghost"></div></div></div><div data-row="bottom"><div class="ct-container" data-columns-divider="md:sm"><div data-column="copyright"> <div class="ct-footer-copyright" data-id="copyright"> Copyright © 2024 - WordPress Theme by <a href="">Creative Themes</a></div> </div></div></div></footer></div> <style id='core-block-supports-inline-css'> .wp-elements-526dce2165a1b34d2d841503e93dd124 a:where(:not(.wp-element-button)){color:var(--wp--preset--color--palette-color-10);}.wp-elements-526dce2165a1b34d2d841503e93dd124 a:where(:not(.wp-element-button)):hover{color:#ffffffb3;}.wp-container-core-columns-is-layout-1{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-2{flex-wrap:nowrap;}..{grid-template-columns:repeat(var(--ct-grid-columns, 3), minmax(0, 1fr));--ct-grid-columns-tablet:2;--ct-grid-columns-mobile:1;} </style> <script id="ct-scripts-js-extra"> var ct_localizations = {"ajax_url":"https:\/\/jirnal.com\/wp-admin\/admin-ajax.php","public_url":"https:\/\/jirnal.com\/wp-content\/themes\/blocksy\/static\/bundle\/","rest_url":"https:\/\/jirnal.com\/wp-json\/","search_url":"https:\/\/jirnal.com\/search\/QUERY_STRING\/","show_more_text":"Show more","more_text":"More","search_live_results":"Search results","search_live_no_results":"No results","search_live_no_result":"No results","search_live_one_result":"You got %s result. Please press Tab to select it.","search_live_many_results":"You got %s results. Please press Tab to select one.","expand_submenu":"Expand dropdown menu","collapse_submenu":"Collapse dropdown menu","dynamic_js_chunks":[{"id":"blocksy_pro_micro_popups","selector":".ct-popup","url":"https:\/\/jirnal.com\/wp-content\/plugins\/blocksy-companion-pro\/framework\/premium\/static\/bundle\/micro-popups.js?ver=2.0.62"},{"id":"blocksy_dark_mode","selector":".ct-color-switch","trigger":"click","url":"https:\/\/jirnal.com\/wp-content\/plugins\/blocksy-companion-pro\/framework\/premium\/extensions\/color-mode-switch\/static\/bundle\/main.js?ver=2.0.62"},{"id":"blocksy_adv_cpt_read_progress","selector":".ct-read-progress-bar","url":"https:\/\/jirnal.com\/wp-content\/plugins\/blocksy-companion-pro\/framework\/premium\/extensions\/post-types-extra\/static\/bundle\/read-progress.js?ver=2.0.62"},{"id":"blocksy_ext_newsletter_subscribe","selector":".ct-newsletter-subscribe-form:not([data-skip-submit])","url":"https:\/\/jirnal.com\/wp-content\/plugins\/blocksy-companion-pro\/framework\/extensions\/newsletter-subscribe\/static\/bundle\/main.js?ver=2.0.62","trigger":"submit"},{"id":"blocksy_account","selector":".ct-account-item[href*=\"account-modal\"], .must-log-in a","url":"https:\/\/jirnal.com\/wp-content\/plugins\/blocksy-companion-pro\/static\/bundle\/account.js?ver=2.0.62","deps":[],"global_data":[],"trigger":"click","deps_data":[]},{"id":"blocksy_sticky_header","selector":"header [data-sticky]","url":"https:\/\/jirnal.com\/wp-content\/plugins\/blocksy-companion-pro\/static\/bundle\/sticky.js?ver=2.0.62"}],"dynamic_styles":{"lazy_load":"https:\/\/jirnal.com\/wp-content\/themes\/blocksy\/static\/bundle\/non-critical-styles.min.css?ver=2.0.62","search_lazy":"https:\/\/jirnal.com\/wp-content\/themes\/blocksy\/static\/bundle\/non-critical-search-styles.min.css?ver=2.0.62","back_to_top":"https:\/\/jirnal.com\/wp-content\/themes\/blocksy\/static\/bundle\/back-to-top.min.css?ver=2.0.62"},"dynamic_styles_selectors":[{"selector":".ct-header-cart, #woo-cart-panel","url":"https:\/\/jirnal.com\/wp-content\/themes\/blocksy\/static\/bundle\/cart-header-element-lazy.min.css?ver=2.0.62"},{"selector":".flexy","url":"https:\/\/jirnal.com\/wp-content\/themes\/blocksy\/static\/bundle\/flexy.min.css?ver=2.0.62"},{"selector":".ct-media-container[data-media-id], .ct-dynamic-media[data-media-id]","url":"https:\/\/jirnal.com\/wp-content\/plugins\/blocksy-companion-pro\/framework\/premium\/static\/bundle\/video-lazy.min.css?ver=2.0.62"},{"selector":"#account-modal","url":"https:\/\/jirnal.com\/wp-content\/plugins\/blocksy-companion-pro\/static\/bundle\/header-account-modal-lazy.min.css?ver=2.0.62"},{"selector":".ct-header-account","url":"https:\/\/jirnal.com\/wp-content\/plugins\/blocksy-companion-pro\/static\/bundle\/header-account-dropdown-lazy.min.css?ver=2.0.62"}]}; </script> <script src="https://jirnal.com/wp-content/themes/blocksy/static/bundle/main.js?ver=2.0.62" id="ct-scripts-js"></script> </body> </html>