Online Marketing Blog

Dynamic Keyword Insertion – The Ultimate Guide

On most major Pay Per Click platforms, there is a little known feature called “Dynamic Keyword Insertion”. Dynamic Keyword Insertion is one of those “dirty little secrets” used by PPC marketing agencies and is the cornerstone of the millions of Internet marketing eBooks written by self proclaimed “gurus”. Dynamic Keyword Insertion needs to be fully understood before it can become marginally effective and when it is, it can increase your ads click through rate (And subsequently quality score) massively.

This guide will show you how to correctly implement the Dynamic Keyword Insertion feature into your ads on the three major PPC advertising networks (Google, Yahoo and MSN). As always, test and understand before fully committing to any permanent changes.

So What Exactly Is Dynamic Keyword Insertion?

As you may or may not know, all the major PPC search engines reward the relevancy of your PPC advertisement by showing keywords in bold in your ad. For example, below you can see an Google Ads ad for RedFly Marketing. The keyword we are targeting is “PPC Management”.

Dynamic Keyword Insertion

As you can see the keywords we targeted and that triggered our ad were in BOLD in the ad. You can see that not only is the keyphrase “PPC Management” in the title of the ad bold, but the keyword in the ad copy and the display URL is also bold. This has been proven time and time again to increase your ads CTR. It makes your ad stand out more and “pull” a searchers eyes to it. We also know from my previous article on Adwords Quality Score that an increase in CTR will increase your quality score, bid rank and lower your minimum bid.

When your ads contain your keywords bolded, you are also showing an ad that a searcher explicitly wants to see. It appears super relevant and exactly what they are looking for.

So where does Dynamic Keyword Insertion come into play? What happens if you have a LOT of keywords? You COULD write individual ads for each one. Spending hours, days even weeks writing a different ad for each keyword. Or you could have Google/Yahoo/MSN insert the keywords that you want bolded dynamically.

Let me show you an example. Let’s take the following keyword list in a single ad group: (we’ll keep it small for the purpose of this demonstration)

Chocolate Bars

Stinger Bars

Lollypops

Brown Bread

As you can see, the above list of keywords are all somewhat related. Rather than splitting up all the keywords into smaller adgroups, you can write a SINGLE AD for them all and have the search engine place your keywords into your ad! Here is how the ad should be created:

Dynamic Keyword Insertion-structure

Once you set this ad live, the search engine will automatically replace {KeyWord:Online Newsagents} in the ad with whatever keyword from your list that was searched for. Using the above list of search terms, The ads will look like this:

Dynamic Keyword Insertion

What happens when someone searches for a variation of my keyword that does not match exactly?

If you broad matched your keywords and someone searched for “Stinger Bars and Lollypops”, your ad would still show, however it would show the DEFAULT ad as shown below.

default-dynamic-keyword-insertion

The default text is the text after the “{KeyWord:” part. In this example, it was “Online Newsagents”. Your default text should still fit the maximum characters limit.

TIP: The ad title can expand past the 25 character limit and Google Ads will accept it as long as the default text remains at 25 characters or less

You will notice that keywords can be dynamically inserted into ANY section of your ad, including your destination URL. This shows your keyword more times in your ad and is eye catching in so far as the keywords are bolded multiple times and appears more relevant to the user/searcher increasing your CTR and ultimately (hopefully) your conversions.

What About Quality Score?

We have already gone over how having keywords in your ad title and ad text can improve Google Ads quality score, unfortunately, Dynamic Keyword Insertion does not improve your quality score directly, however it can indirectly help your quality score by increasing your keywords CTR.

Variations And Capitalization.

The standard format for dynamically inserting your keyword is this: {keyword:yourdefaulttext}

There are also variations you can use to capitalize your dynamically inserted keyword as follows:

  • keyword – No capitalization, all word(s) are in lower case
  • Keyword – The first word is capitalized
  • KeyWord – Every word is capitalized
  • KEYword – Every letter in first word is capitalized
  • KEYWord -Every letter in the first word AND the first letter of the second
  • KEYWORD – Every letter is capitalized

Yahoo And AdCenter.

Yahoo and MSN both allow Dynamic Keyword Insertion however unlike with Google Ads, with them it is a “known feature”. There are options to dynamically insert keywords at the ad creation level. Yahoo even go so far as to say the Dynamic Keyword Insertion will increase the ads quality index (YSM quality score).

Be Careful!

Dynamic Keyword Insertion is only valuable when closely managed and monitored. Ebay are notorious for running MASSIVE PPC campaigns with Google Ads using Dynamic Keyword Insertion and making themselves look incredibly stupid. The bid on literally millions of dictionary words and combinations and end up with ridiculously structured irrelevant ads. Below you will find a small example.

dynamic-keyword-insertion

In Conclusion.

So there you have it. Although Google Ads has very little documentation on this feature and some in the industry regard it as a close kept secret, you are now armed with a very powerful tool. We have seen CTR increases from 1% to 20% using this method alone. Be careful, use it wisely and where possible, insert the words manually into your ads. This is a time saver, not a substitute for human common sense.


  1. Cormac Moylan Says:
    June 8th, 2007 at 7:50 am

    Good article Dave. Abd a good tip on the grammar/dictonary relevacny.

  2. CustardMite Says:
    June 8th, 2007 at 1:38 pm

    One thing that might be worth adding (unless you’ve said it, and I missed it).

    If you phrase or broad match, it’s the keyword that you bid on that’s included, not the full search term.

    So in your example, if you have phrase match, a search for “Pink Lollipops” would show

    Lollipops
    We Sell Lollipops
    Free Shipping On All Orders Today

    Interesting to note that a certain Mr P Marshall is very misleading on this point in his “definitive guide”…

  3. Dave Davis Says:
    June 8th, 2007 at 2:38 pm

    Thanks Cormac.

    CustardMite, You are dead right. There is a lot of the finer details I left out and will be adding over the coming weeks.

    Yea, the Definitive Guide To Adwords is not very…. well, It’s fine if you have no access to the learning center. :)

  4. shaz Says:
    June 12th, 2007 at 5:56 am

    great article dave some good tips theres going to use them for sure

  5. Niall Says:
    June 13th, 2007 at 2:44 am

    I always wondered about that keyword replacement in ads.. Sometimes it is badly implemented, I have seen some hilarious results in the past..

    As an aside, I love your blog, simply because I can learn from an expert and THEN tinker with ppc without doing my brains in. Danke and keep up the quality content!

  6. The SuperVillain Says:
    June 14th, 2007 at 8:17 pm

    Yea, I’ve just been reading into Dynamic Keyword Insertion. It’s a bit confusing but I’ve definitely learned more from this article as a result. Also, would you have to create subdomains relevant to your keywords when using DKI

  7. Dave Davis Says:
    June 15th, 2007 at 7:54 pm

    Niall, Sorry, I had to change your anchor text. Especially considering you are competition. Little cheeky actually :)

  8. Dave Davis Says:
    June 15th, 2007 at 7:55 pm

    ThesuperVillan, no, you can use Dynamic Keyword Insertion to insert single keywords as the subdomain. They do not need to actually be created. (You could just create custom ads in that case)

    Thanks for stopping by.

  9. Alastair Says:
    June 16th, 2007 at 1:02 am

    Hi Dave,

    Great post, as usual!

    I mentioned over on Michele’s forum a while back that I had a sanity checking script for Dynamic Keywords – months later I’ve eventually put it online – feel free to play with it.

    http://www.logon.ie/dynamic-keyword-checker/

    I created a quick example of how it looks at http://www.logon.ie/tools/ – using the keywords for the newsagent you used above.

    It has character limit warnings etc but tbh it looks terrible – I have to get around to making it generate AdWord lookalikes, but for a quick “Ebay” check it’s sufficient.

    Cheers,
    Alastair.

  10. David Says:
    June 18th, 2007 at 6:32 pm

    Dave… Very detailed and informative post. I plan to send a link to it to a friend of mine.

  11. markus941 Says:
    June 20th, 2007 at 4:28 am

    Thanks for the capitalization tips – that’s the first time I’ve seen them.

  12. Olli Says:
    June 22nd, 2007 at 8:25 am

    {keyword} in Destination URL – well you can add it here, but it simply does not show up. I made mysite.com/#{keyword:unknown} to maybe track the keywords for a single user. But guess what – they are all coming with “#unknown”…

    Any other solutions for this?

  13. Olli Says:
    June 22nd, 2007 at 9:32 am

    I have to correct my last post – it seams to work – you get the keyword that Google matched to the query. Pretty useful.

  14. JB Says:
    June 22nd, 2007 at 2:17 pm

    What happens if you place the keyword insertion within the ad. Let’s say on description line 2. The keyword the user searches for triggers, BUT it throws that line description past 35 Characters. Does google still allow the keyword insertion to show up even though its longer than 35 Characters? Or does it just use the default text?

    Thanks!

  15. Arthur Says:
    June 22nd, 2007 at 2:41 pm

    JB,
    If your dynamically inserted keyword throws the description line past 35 chars, it will default back to the default text. This is why it’s so important to have default text in your ads.
    {KeyWord: Default Text} where “Default Text” will be used if the description line is longer than 35 chars.

    Great article Dave! Good to see the capitalization techniques in one place.
    And I’m glad someone is finally shaking a finger at eBay. I’ve been laughing at their dynamic insertion for years!

    Thanks!

  16. Julie Joyce Says:
    June 24th, 2007 at 5:30 pm

    fantastic and informative piece sir…this is something I’ve been interested in for a client but I’ve not yet tried (of course I will now, posthaste!)

  17. Dave Davis Says:
    June 25th, 2007 at 2:40 pm

    Thanks for stopping by Julie. If you need some help, let me know. (However I think your latest social experiment at the SEOmoz party garnished you with all the help you could need! I have subscribed to your blog, keep the good stuff coming.

  18. Dave Davis Says:
    June 25th, 2007 at 2:41 pm

    Arthur, thanks for clearing that up! (Doing my job for me) :)

  19. Adam Says:
    July 11th, 2007 at 12:33 am

    Hi Dave,

    You may have covered this? Many of the keywords I want to use for Dynamic Keyword Insertion are longer than 25 characters, i.e. House and land packages point cook. i.e. the “topic (house and land packages) and suburb name (Point Cook)” In this case I have used less trafficed keywords “Point Cook Packages”, which fits but doesnt generate as much traffic. Can you advise an alternative?

    Also. Although I have adds set to Broad Matched, they dont show. i.e. Dynamic Keywords “Land Point Cook” – In testing however if I type “Land Point Cook House” the ad doeent appear. I would have thought because it has 3 keywords it would have?

    Kind regards,

  20. Kyle Says:
    July 18th, 2007 at 9:19 pm

    Dave,

    I did a little bit of research on this dynamic keyword insertion for MSN and Yahoo and they make no mention of the default keyword option. I’ve tried it with Google so I know their interface excepts such default keywords, but with both MSN and Yahoo it doesn’t appear to acknowledge the use of a default. Does their interface allow default keywords? Is there a different format to use for MSN and Yahoo, or is it the same story as on Google?
    Thanks for your help on this topic. Your website has been a wealth of information on the topic.

    Kyle

  21. Dave Davis Says:
    July 18th, 2007 at 9:28 pm

    Hi Kyle,
    Thanks for stopping by.

    The dynamic keyword insertion feature in Yahoo Search Marketing and in AdCenter is actually a feature with drop downs and fields to fill in.

    For YSM, go to create a new ad and click on the Title field for example. ”
    Insert Keyword Automatically” should appear as a link just below to field.

    It’s the same for the other fields.

    YSM has something similar.
    Hope that helps.

  22. Dave Davis Says:
    July 18th, 2007 at 9:29 pm

    Also, according to YSM:

    Clicking the Add Keyword Placeholder button below allows you to enter a placeholder {KEYWORD:YourDefaultText} in your ad’s title and/or description to help make your ad more relevant.

    For example, say you enter the ad title:
    Up to 50% off on {KEYWORD:Hawaii Vacations} at Yahoo! Travel.
    When a prospective customer’s search matches your “Maui vacations” keyword, the ad title that is displayed will be:
    Up to 50% off on Maui vacations at Yahoo! Travel.

    If inserting your keyword makes your ad text exceed the character limit, we will display the default text you enter below instead of the keyword. In the example above, the default text is Hawaii Vacations.

  23. Dave Davis Says:
    July 18th, 2007 at 9:33 pm

    For Adcenter, go to create an ad and click the “Dynamic Text” link in the same position as it is on YSM.

    According to adcenter:
    Dynamic text refers to text variables that you can include in your ad. By using dynamic text, you may increase the chance that potential customers respond to your ad because your ad changes based on search queries.You can also use dynamic text to update a large number of ads simultaneously with custom data you enter.
    For more information, see the help link.

    I should really put them in this post.

  24. Tuesday Says:
    July 26th, 2007 at 5:22 pm

    Great post as always, i’m pretty new with SEM so this question might sound a little silly to you and the posters. ok, why newsagent? so that is the ultimate default keyword that i should use for any ad? i don’t think i got that part. thank you in advance!

  25. Dan P Says:
    August 1st, 2007 at 10:05 am

    You mentioned that you can DKI in destination URL? That should be display url, correct?

  26. SF Greg Says:
    August 8th, 2007 at 10:11 pm

    Great article.

    Is it correct to say….

    If I bid on:

    Stinger Bars

    And I have two ads, identical except the headlines, which are:

    Ad #1: Stinger Bars
    Ad#2: {KeyWord:Stinger Bars}

    Conclusion: There is no reason to have the second ad, no possible positive benefit, and there is a negative because Quality Score for the keyword I bid on will be helped by the first headline but not helped by the second headline.

    So I should delete the second add, and write a new ad to compete with the first ad. Do I have it right?

    Thanks!

  27. Dave Davis Says:
    August 8th, 2007 at 10:27 pm

    Hi Greg, thanks for stopping by. I think you might be a little confused. Yes, there would be no point using Dynamic Keyword Insertion if you were ONLY bidding on “stinger Bars”. The point in using it in your example would be if you were bidding on more than just that one keyword.

  28. Bart Says:
    August 31st, 2007 at 7:38 am

    Is it true that Google gives you a penalty when you use {KeyWord:} with typos listed in your list of keywords???

  29. Dan Says:
    September 3rd, 2007 at 5:41 pm

    If you observe over time, like 30-90 days… that one of your key phrases accounts for the majority of your search traffic… it may be advantageous to have that phrase in the headline with or without the dyi headline. Why?
    Because, having the keyphrase in the headline will give you a quality boost versus using dyi.

  30. Dan Says:
    September 3rd, 2007 at 5:43 pm

    I meant to say to use a control ad… ad A dyi and ad B the major search phrase for that adgroup.

  31. Earning From Affiliates Says:
    September 17th, 2007 at 8:33 pm

    I have just started using dynamic insertion into my Google ads, making sure you have a ‘default’ for if the keyword cannot be obtained or does not fit into the title is essential. Monitoring the ads is also vital with any PPC campaign, find out what is successful and scrap keywords that are resulting in a low conversion rate…

    Great article…

    Matt

  32. glengara Says:
    October 11th, 2007 at 1:07 pm

    G seems to now have a tutorial on DKI…

    http://adwords.google.com/support/bin/answer.py?answer=75001&topic=12396

  33. Mo Says:
    November 13th, 2007 at 1:42 am

    In your examples, how do you get the display URL to be one word (e.g. BrownBread, ChocolateBars, StingerBars) if the search phrase is ‘Brown Bread,’ etc.?
    I would like to use dynamic keyword insertion in the destination URLs and have no problems when the search is one word (Aerosmith) but have problems with phrases (Britney Spears). Are there any suggestions or ways to write regular expressions within dki?

  34. Jordan McClements Says:
    February 13th, 2008 at 2:15 pm

    This is quality stuff.

    Thanks Dave.

  35. Ramses Says:
    March 6th, 2008 at 12:01 am

    MSN and Yahoo it doesn’t appears to acknowledge the use for a default.

  36. WWE Crazy Says:
    March 10th, 2008 at 6:35 am

    Im sure these tips will land me up in a better position and will geve me a goog head start.

  37. Kyle Says:
    March 13th, 2008 at 5:32 am

    I am trying to structure an my display url to look like this keyword.mysite.com , when I dop a search for my obscure keyword its hows up like this key word.mysite.com in the displayed adwords ad…??? Anyone got any thoughts on this…I really am just trying something different(I have done the Mysite.com/keyword) thing and just wnat to split test something different…

    Thanks

  38. nils Says:
    May 28th, 2008 at 11:18 pm

    Great explanation! Was looking for something like that, thx :)
    It’s so much easier to do this in yahoo with the feature already integrated into the GUI

  39. CFA Level 1 Says:
    June 1st, 2008 at 7:10 pm

    These are some very, very good tips. Thanks a ot for these

  40. GordonTheMentor Says:
    June 19th, 2008 at 6:00 am

    This is great advise and examples. I’ll make sure to pass on the information. Thanks, Gordon

  41. Cool Games Says:
    June 23rd, 2008 at 11:24 pm

    Hey good post you got here man one of my friends showed it to me. Reading this has greatly improved my marketing skill and I have already seen results. Dynamic Keyword Insertion is the way to go. Thanks again Dave, I’ve subscribed to you keep the good stuff coming.

  42. voyance Says:
    July 10th, 2008 at 5:41 pm

    I discovered your blog and I find it excellent, really very good job, well done and thank you especially for all those articles really brilliant.

  43. Dhananjay Kabra Says:
    July 30th, 2008 at 12:37 pm

    Hey Dave ur post helped me in understanding dynamic keyword insertion.
    I had been going through many blogs but could not find such a brief description, Hats off

  44. Chuck Mullaney Says:
    August 25th, 2008 at 7:37 pm

    Just have to tell you that this post is great Dave. Straight, to the point, and very informative.

    I actually wrote an extremely successful software program a few years ago that incorporates Dynamic Insertion (no name or link, not here to advertise)among other things to write directly to the person searching for information and my description of Dynamic Insertion sucked compared to your’s! :-)

    Nice job Dave,
    Chuck Mullaney

  45. neils Says:
    September 12th, 2008 at 4:04 am

    thank you for clearly pointing out that using DKI will not help your quality score. In fact, if you use over the key phrase itself, it can damage the quality score (Adwords likes to see the key phrase in ad).

    You wouldn’t believe the number of times I’ve read a post where someone says DKI will help the quality score.

  46. MovieBlip Says:
    November 4th, 2008 at 9:29 pm

    Another amazing tip Dave. I have really enjoyed the articles.

  47. Waseem Says:
    January 28th, 2009 at 9:03 am

    i m an advertiser using DKI for quite some time. It is a nice tool to increase CTR (If inserted properly)

    Nice informative post.

  48. Shaam Says:
    January 28th, 2009 at 10:30 am

    Great Article.

    But i have some queries regarding dynamic keywords insertion.

    I found while searching the ads. Google adwords showing 28 character in the title, how it’s possible.

    Is it possible through dynamic keywords insertion.

  49. Sylvia Says:
    March 2nd, 2009 at 2:13 pm

    Great article! But how come it’s possible to get all the letters in a word capitalized this way when it’s not possible when you fill out your ad manually? Or did I miss something…

  50. Branden Says:
    March 11th, 2009 at 6:55 pm

    finally I understand Dynamic Keyword Insertion
    Thank you

  51. Shuki Haiminis Says:
    April 5th, 2009 at 2:06 pm

    I am having the same issue as MO. I can’t seem to get my display url to show two keywords as one. In your examples above it looks like you are able to get your display urls to show Brown Bread as sweetshop.com/BrownBread. Also is it best practice to leave off the www in the display urls?

  52. sammy the business mailing list guy Says:
    May 20th, 2009 at 12:13 pm

    Thanks for giving such a clear explanation. Sometimes winding your way through the Google help is so time consuming.

  53. Goran Web Says:
    August 9th, 2009 at 2:19 pm

    Thank you for the PPC tip. I did not realise that there were variations available. I use {KeyWord: default keyword} only.

  54. Brenda | Trade Marks Says:
    September 29th, 2009 at 8:11 am

    That an article, PPC marketing is rather broad, and reading this had really provided a different aspect to to the PPC marketing. Your clear explanation of dynamic keyword insertion makes it so much easier to understand, so thank you for that.

  55. Maxine Business Performance Says:
    October 6th, 2009 at 9:23 am

    Thank you for this I have just started to learn about PPC and I have so much to learn, I was not told that there were different variations but now that you have mentioned I will be able to do all.

  56. Kolkata SEO Says:
    October 9th, 2009 at 12:23 pm

    thanks for the tips but i also find Dynamic Keyword Insertion CTR usually perform better :)

  57. Brandon Says:
    November 6th, 2009 at 9:36 pm

    Great Information, Great Tips and a very helpful article. Thanks a whole bunch. Take care.

  58. Ray Says:
    December 1st, 2009 at 6:20 pm

    Excellent and really informative Dave, cheers for going to the trouble of explaining DKI in depth, much appreciated.

  59. Des Says:
    January 10th, 2010 at 10:00 am

    Hey Dave,

    Great article (best / clearest I’ve seen on this topic).

    Upon reading it I started to use Dynamic keyword insertion a few months back on 3-4 of my Google Adwords Ad groups (selling software) and was excited by the results I started receiving.

    Here’s a typical example:

    ** Original Static Ad:
    Click Thru Rate: 1.30%
    Landing page Conversion rate: 2.27%

    ** New Dynamic keyword insertion (DKI) Ad:
    Click Thru Rate: 3.25%
    Landing page Conversion rate: 1.19%

    So, my CTR for the Dynamic keyword Insertion Ad was 2.5 times better – fantastic!

    But why has my conversion rate nearly halfed? (Same thing has happened for the other ad groups I tried this with too).

    Is it because people are expecting to see the exact keywords they have searched on at the top of my landing pages and the DKI ads don’t deliver this?

    Do other people experience this?
    Should I keep the DKI ads going or pause?

    Any thoughts / help would be much appreciated.

    Many thanks.
    Des

  60. Chicago Web Design Says:
    March 8th, 2010 at 4:00 pm

    Dude, I don’t know why I’ve never come across your blog before, but now I’ve come across it two times in the past few days and you really explain everything well!

  61. ksrtc online booking Says:
    April 19th, 2010 at 1:05 pm

    hi, i want to use dynamic keywords in my ads, can you explain how can i do that,, thanks

  62. Furnica Rares Says:
    May 21st, 2010 at 1:01 pm

    Does anyone have a link of how to do this on adwords? I’ve search it and couldn’t find it. Seams to be a powerfull techinique that I want to test. Thanks

  63. internet marketing agency Says:
    July 6th, 2010 at 11:51 am

    great post as usual! PPC can give us good and quick results, as compare to the other organic optimization. you have explored every thing in depth, thanks for that.

  64. Chris Says:
    July 9th, 2010 at 11:54 am

    Fine article, especially for the time it was written in!

    I do have some suggestions though:

    “What happens when someone searches for a variation of my keyword that does not match exactly?
    If you broad matched your keywords and someone searched for “Stinger Bars and Lollypops”, your ad would still show, however it would show the DEFAULT ad as shown below.”

    In the case above, the reason that the default text is shown in the ad title instead of the matched keyword is that the matched keyword would make the ad title more then 25 characters.

    If Adwords (broad) matches a search term with a keyword that is not 100% similar it will still show that keyword in the ad title under the condition that it will not expand the ad title to more then 25 characters. Whether it is a 100% match or not is irrelevant. (Obviously) If Adwords can’t match a search term to any keyword the ad won’t be displayed at all.

  65. Joel Haffey Says:
    January 19th, 2011 at 10:35 pm

    If you use dynamic keyword insertion it is possible to have a headline that exceeds the 25 character limit. I have seen my ads display headlines with 27, 28 and 29 characters. Nothing official from Google on this yet.

  66. Heather Says:
    August 17th, 2011 at 4:43 pm

    yo man. You saved my life. I’m still a bit confused as to how {keyword:Online Newsagents} became candies on the keyword list. Is Online Newsagents the name of the ad group? This also happened with {keyword:sweats and candies} was also pulled from the same keyword list.

    I’m confused -_-

  67. Evan R. Murphy Says:
    August 17th, 2011 at 5:53 pm

    Thanks for the capitalization tip, i.e. {keyword} vs {KeyWord}. Exactly what I was looking for.

  68. Pat Bloomfield Says:
    October 19th, 2011 at 9:09 pm

    Excellent article.

    I wasn’t sure what happened to the text after the colon if the inserted keyword got inserted. But this has cleared it nicely – it’s either keyword or the text :-)

  69. Saidul Hassan Says:
    December 19th, 2011 at 8:13 am

    Excellent explanation! Its still fresh even after 4-5 years and everything works! Thank you @DaveDavis.

  70. Latha Says:
    March 30th, 2012 at 10:32 am

    Dave, Great tips! I like the examples you showed here. Thanks for setting me up in the right direction.

  71. arsız bela Says:
    November 25th, 2012 at 11:04 pm

    Excellent explanation! Its still fresh even after 4-5 years and everything works! Thank you @DaveDavis.