I am passive aggressive and want to insult my boss without him finding out It's been a rough few months at work and I feel like I just want to scream right to my boss' face. I am, however, not one to directly confront people I have a problem with. I also don't want to lose my job.

So here's an idea: I want to be able to insult him, without him ever finding out. And I realized the perfect way: I need some sort of software that encodes an insult inside an otherwise perfectly fine message. And seeing as how he's known to not see forests for trees, I think I know just how:

Write me a program that takes as input a string of unknown length, but containing no line breaks. This will be the raw message I want to send.

If possible, return the string formatted such that the message "DIE IN A GREASE FIRE" makes up the entire left column. With new paragraphs where spaces in between words should go. Now, as I am very angry, it is equally important that every letter is in upper case.

You may not modify the string in any other way, i.e. you may not turn all of the string into upper case characters.

If the string in question cannot be formatted in this way, you are to return the original string. Read input from standard input.

Normal rules apply: No HTTP requests, no consulting Marvin from THGTTG, etc.

Example input:


  Dear Boss, how are things? It has come to my attention that I received
  all the blame for the mishap last Friday. Not just the majority of it.
  Every last bit of it. Is it wrong for me to think that the rest of the
  team were at least in part responsible? After all, all six of us were
  involved from the get-go. Not that I think I should stand without
  blame. Not at all. All I'm saying is this: I do my best. I try hard. I
  improve constantly. And I am constantly taking responsibility.
  Generally speaking, I am very okay with taking full responsibility for
  my actions. But after this spring, it seems I get more than I deserve.
  Remember the Flakenhauser contract? Everything went down just about as
  smooth as one could have hoped. Or so it seemed at first. It was just
  at the very last minute that things fell apart. All of the team agreed
  that it was more akin to a freak accident than sloppy planning or
  mismanaged resources. Still, I - alone - took blame for it. Even
  though I said nothing then, my tolerance level for taking the blame
  took a serious dent then. From that point on, I have felt it necessary
  to always try twice as hard, just to escape scrutiny. And still, here
  we are again. In spite of all my accomplishments. Right where we
  always seem to end up these days. Every single project. It's becoming
  unbearable.


Example output:


  Dear Boss, how are things?
  It has come to my attention that I received all the blame for the mishap last Friday. Not just the majority of it.
  Every last bit of it.
  
  Is it wrong for me to think that the rest of the team were at least in part responsible? After all, all six of us were involved from the get-go.
  Not that I think I should stand without blame. Not at all.
  
  All I'm saying is this: I do my best. I try hard. I improve constantly. And I am constantly taking responsibility.
  
  Generally speaking, I am very okay with taking full responsibility for my actions. But after this spring, it seems I get more than I deserve.
  Remember the Flakenhauser contract.
  Everything went down just about as smooth as one could have hoped. Or so it seemed at first. It was just at the very last minute that things fell apart.
  All of the team agreed that it was more akin to a freak accident than sloppy planning or mismanaged resources.
  Still, I - alone - took blame for it.
  Even though I said nothing then, my tolerance level for taking the blame took a serious dent then.
  
  From that point on, I have felt it necessary to always try twice as hard, just to escape scrutiny. And still, here we are again.
  In spite of all my accomplishments.
  Right where we always seem to end up these days.
  Every single project. It's becoming unbearable.


This is code golf. Shortest code wins.
CJam, 56 53 bytes

q_"DIEIINAAGGREASEFFIRE"{S@:A+S@+#:BA&lt;AB&gt;}%(!B)*\N*@?


Try it online!

How it works

q_                     Read all input from STDIN and push a copy.
"DIEIINAAGGREASEFFIRE" Push the characters we're searching for in form of a
                       string. We'll try to prepend a linefeed to all of them.
                       Some characters are duplicated to prepend two linefeeds.
{                      For every character C in that string:
  S@                   Push ' ' and rotate the string on the stack on top of it.
  :A                   Save the string (initially the input) in A.
  +                    Prepend the space to A.
  S@+                  Construct the string " C".
  #                    Compute the index of " C" in the modified A.
  :B                   Save the index in the variable B.
  A&lt;                   Push the substring of A up to the index.
  AB&gt;                  Push the substring of A after the index.
}%
(                      Shift the first element of the resulting array.
!                      Compute the logical NOT. This pushes 1 if and only if the
                       array's first element is an empty string, which is true
                       if and only if the input string started with a D.
B)                     Push the last value of B and increment. If the last match
                       was successful and, therefore, all matches were successful,
                       B != -1, so B + 1 != 0.
*                      Compute the product of the two topmost items on the stack.
\                      Swap the resulting Booleanr with the array of substrings.
N*                     Join the array, separating by linefeeds.
@                      Rotate the input string on top of the stack.
?                      Select the joined array if the Boolean is 1 and the input
                       string otherwise.