(BraceGroup
  children: [
    (SimpleCommand
      words: [{(renice)} {(-n)} {(-10)} {($ VSub_Dollar '$$')}]
      redirects: [(Redir op:<Redir_AndGreat '&>'> fd:16777215 arg_word:{(/dev/null)})]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:INPUT) op:Equal rhs:{(0)} spids:[97])]
      spids: [97]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DBracket
                  expr: 
                    (BoolBinary
                      op_id: BoolBinary_EqualTilde
                      left: {($ VSub_Number '$1')}
                      right: 
                        {(Lit_Other '^') (-) (Lit_Other '?') (Lit_Other '[') (0-9) (Lit_Other ']') 
                          (Lit_Other '+') (Lit_Other '$')
                        }
                    )
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:INPUT)
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [124]
                )
              ]
              spids: [124]
            )
          ]
          spids: [16777215 121]
        )
      ]
      spids: [16777215 128]
    )
    (C {(.)} {(/DietPi/dietpi/func/dietpi-globals)})
    (C {(G_CHECK_ROOT_USER)})
    (C {(export)} {(Lit_VarLike 'G_PROGRAM_NAME=') (SQ <DietPi-Morsecode>)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:OUTPUT_MODE)
          op: Equal
          rhs: {($ VSub_Name '$INPUT')}
          spids: [169]
        )
      ]
      spids: [169]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:TERM_X)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: (CommandList children:[(C {(tput)} {(cols)})])
                left_token: <Left_CommandSub '$('>
                spids: [179 183]
              )
            }
          spids: [178]
        )
      ]
      spids: [178]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:TERM_Y)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: (CommandList children:[(C {(tput)} {(lines)})])
                left_token: <Left_CommandSub '$('>
                spids: [187 191]
              )
            }
          spids: [186]
        )
      ]
      spids: [186]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:TERM_TOTAL_CHARS)
          op: Equal
          rhs: 
            {
              (ArithSubPart
                anode: 
                  (ArithBinary
                    op_id: Arith_Minus
                    left: 
                      (ArithBinary
                        op_id: Arith_Star
                        left: (ArithWord w:{($ VSub_Name '$TERM_X')})
                        right: (ArithWord w:{($ VSub_Name '$TERM_Y')})
                      )
                    right: (ArithWord w:{(Lit_Digits 1)})
                  )
                spids: [195 207]
              )
            }
          spids: [194]
        )
      ]
      spids: [194]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:TERM_COLOUR)
          op: Equal
          rhs: {(DQ (Lit_Other '\\') ('e[48;5;15m'))}
          spids: [213]
        )
      ]
      spids: [213]
    )
    (FuncDef
      name: Output_On
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DParen
                          child: 
                            (ArithBinary
                              op_id: Arith_DEqual
                              left: (ArithWord w:{($ VSub_Name '$OUTPUT_MODE')})
                              right: (ArithWord w:{(Lit_Digits 0)})
                            )
                          spids: [244 253]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(echo)} {(-e)} {(DQ ($ VSub_Name '$TERM_COLOUR'))}) (C {(clear)})]
                  spids: [16777215 256]
                )
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DParen
                          child: 
                            (ArithBinary
                              op_id: Arith_DEqual
                              left: (ArithWord w:{($ VSub_Name '$OUTPUT_MODE')})
                              right: (ArithWord w:{(Lit_Digits 1)})
                            )
                          spids: [283 292]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(echo)} {(1)}]
                      redirects: [
                        (Redir
                          op: <Redir_Great '>'>
                          fd: 16777215
                          arg_word: {(/sys/class/leds/led0/brightness)}
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [{(echo)} {(1)}]
                      redirects: [
                        (Redir
                          op: <Redir_Great '>'>
                          fd: 16777215
                          arg_word: {(/sys/class/leds/led1/brightness)}
                        )
                      ]
                    )
                  ]
                  spids: [281 295]
                )
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DParen
                          child: 
                            (ArithBinary
                              op_id: Arith_DEqual
                              left: (ArithWord w:{($ VSub_Name '$OUTPUT_MODE')})
                              right: (ArithWord w:{(Lit_Digits 2)})
                            )
                          spids: [320 329]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Sentence
                      child: 
                        (SimpleCommand
                          words: [
                            {(speaker-test)}
                            {(-b)}
                            {(40000)}
                            {(-t)}
                            {(sine)}
                            {(-f)}
                            {(800)}
                            {(-l)}
                            {(1)}
                            {(-p)}
                            {(1)}
                          ]
                          redirects: [
                            (Redir
                              op: <Redir_AndGreat '&>'>
                              fd: 16777215
                              arg_word: {(/dev/null)}
                            )
                          ]
                        )
                      terminator: <Op_Amp '&'>
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:pid)
                          op: Equal
                          rhs: {($ VSub_Bang '$!')}
                          spids: [369]
                        )
                      ]
                      spids: [369]
                    )
                  ]
                  spids: [318 332]
                )
              ]
              spids: [16777215 374]
            )
          ]
          spids: [234]
        )
      spids: [231 234]
    )
    (FuncDef
      name: Output_Off
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DParen
                          child: 
                            (ArithBinary
                              op_id: Arith_DEqual
                              left: (ArithWord w:{($ VSub_Name '$OUTPUT_MODE')})
                              right: (ArithWord w:{(Lit_Digits 0)})
                            )
                          spids: [395 404]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(echo)} {(-e)} {(DQ (Lit_Other '\\') ('e[0m'))}) (C {(clear)})]
                  spids: [16777215 407]
                )
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DParen
                          child: 
                            (ArithBinary
                              op_id: Arith_DEqual
                              left: (ArithWord w:{($ VSub_Name '$OUTPUT_MODE')})
                              right: (ArithWord w:{(Lit_Digits 1)})
                            )
                          spids: [435 444]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(echo)} {(0)}]
                      redirects: [
                        (Redir
                          op: <Redir_Great '>'>
                          fd: 16777215
                          arg_word: {(/sys/class/leds/led0/brightness)}
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [{(echo)} {(0)}]
                      redirects: [
                        (Redir
                          op: <Redir_Great '>'>
                          fd: 16777215
                          arg_word: {(/sys/class/leds/led1/brightness)}
                        )
                      ]
                    )
                  ]
                  spids: [433 447]
                )
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DParen
                          child: 
                            (ArithBinary
                              op_id: Arith_DEqual
                              left: (ArithWord w:{($ VSub_Name '$OUTPUT_MODE')})
                              right: (ArithWord w:{(Lit_Digits 2)})
                            )
                          spids: [472 481]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(kill)} {(-9)} {($ VSub_Name '$pid')})]
                  spids: [470 484]
                )
              ]
              spids: [16777215 500]
            )
          ]
          spids: [385]
        )
      spids: [382 385]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:CHAR_CURRENT) op:Equal rhs:{(0)} spids:[520])]
      spids: [520]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:FP_TEXTFILE_INPUT)
          op: Equal
          rhs: {(DQ ($ VSub_Name '$HOME') (/dietpi-morsecode))}
          spids: [529]
        )
      ]
      spids: [529]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:FP_TEXTFILE_LOWERCASE)
          op: Equal
          rhs: {(DQ (/tmp/.dietpi-morsecode_lowercase))}
          spids: [536]
        )
      ]
      spids: [536]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:MC_DURATION_UNIT) op:Equal rhs:{(0.15)} spids:[547])]
      spids: [547]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:MC_DURATION_DASH)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (Pipeline
                        children: [
                          (C {(echo)} {(-)})
                          (C {(awk)} {(DQ ('{print ') ($ VSub_Name '$MC_DURATION_UNIT') (' * 3}'))})
                        ]
                        negated: F
                      )
                    ]
                  )
                left_token: <Left_CommandSub '$('>
                spids: [556 570]
              )
            }
          spids: [555]
        )
      ]
      spids: [555]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:MC_DURATION_WORD)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (Pipeline
                        children: [
                          (C {(echo)} {(-)})
                          (C {(awk)} {(DQ ('{print ') ($ VSub_Name '$MC_DURATION_UNIT') (' * 7}'))})
                        ]
                        negated: F
                      )
                    ]
                  )
                left_token: <Left_CommandSub '$('>
                spids: [578 592]
              )
            }
          spids: [577]
        )
      ]
      spids: [577]
    )
    (FuncDef
      name: Mc_Convert_Input_Textfile_Lowercase
      body: 
        (BraceGroup
          children: [
            (C {(echo)} {(-e)} {(DQ (DietPi-Morsecode) (Lit_Other '\\') (n))})
            (C {(echo)} {(-e)} {(DQ ('Converting input file to lowercase......') (Lit_Other '\\') (n))})
            (SimpleCommand
              words: [
                {(dd)}
                {(Lit_VarLike 'if=') (DQ ($ VSub_Name '$FP_TEXTFILE_INPUT'))}
                {(Lit_VarLike 'of=') (DQ ($ VSub_Name '$FP_TEXTFILE_LOWERCASE'))}
                {(Lit_VarLike 'conv=') (lcase)}
              ]
              redirects: [(Redir op:<Redir_AndGreat '&>'> fd:16777215 arg_word:{(/dev/null)})]
            )
            (C {(echo)} {(-e)} 
              {
                (DQ (Completed) (Lit_Other '\\') ('nRendering to Output_Mode ') 
                  ($ VSub_Name '$OUTPUT_MODE')
                )
              }
            )
          ]
          spids: [599]
        )
      spids: [596 599]
    )
    (FuncDef
      name: Mc_Dot
      body: 
        (BraceGroup
          children: [
            (C {(Output_On)})
            (C {(sleep)} {($ VSub_Name '$MC_DURATION_UNIT')})
            (C {(Output_Off)})
            (C {(sleep)} {($ VSub_Name '$MC_DURATION_UNIT')})
          ]
          spids: [665]
        )
      spids: [662 665]
    )
    (FuncDef
      name: Mc_Dash
      body: 
        (BraceGroup
          children: [
            (C {(Output_On)})
            (C {(sleep)} {($ VSub_Name '$MC_DURATION_DASH')})
            (C {(Output_Off)})
            (C {(sleep)} {($ VSub_Name '$MC_DURATION_UNIT')})
          ]
          spids: [693]
        )
      spids: [690 693]
    )
    (FuncDef
      name: Mc_Next_Char
      body: (BraceGroup children:[(C {(sleep)} {($ VSub_Name '$MC_DURATION_DASH')})] spids:[721])
      spids: [718 721]
    )
    (FuncDef
      name: Mc_Next_Word
      body: (BraceGroup children:[(C {(sleep)} {($ VSub_Name '$MC_DURATION_WORD')})] spids:[738])
      spids: [735 738]
    )
    (FuncDef
      name: Mc_End_of_Message
      body: 
        (BraceGroup
          children: [
            (C {(Mc_Next_Word)})
            (C {(Mc_Dot)})
            (C {(Mc_Dash)})
            (C {(Mc_Dot)})
            (C {(Mc_Dash)})
            (C {(Mc_Dot)})
            (C {(Mc_Next_Word)})
          ]
          spids: [759]
        )
      spids: [756 759]
    )
    (FuncDef
      name: Convert_Text_To_Morsecode
      body: 
        (BraceGroup
          children: [
            (Case
              to_match: {(DQ ($ VSub_Name '$CHAR_CURRENT'))}
              arms: [
                (case_arm
                  pat_list: [{(0)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dash)})]
                  spids: [805 806 824 16777215]
                )
                (case_arm
                  pat_list: [{(1)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dash)})]
                  spids: [827 828 846 16777215]
                )
                (case_arm
                  pat_list: [{(2)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dash)})]
                  spids: [849 850 868 16777215]
                )
                (case_arm
                  pat_list: [{(3)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dash)})]
                  spids: [871 872 890 16777215]
                )
                (case_arm
                  pat_list: [{(4)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dash)})]
                  spids: [893 894 912 16777215]
                )
                (case_arm
                  pat_list: [{(5)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)})]
                  spids: [915 916 934 16777215]
                )
                (case_arm
                  pat_list: [{(6)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)})]
                  spids: [937 938 956 16777215]
                )
                (case_arm
                  pat_list: [{(7)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)})]
                  spids: [959 960 978 16777215]
                )
                (case_arm
                  pat_list: [{(8)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dot)})]
                  spids: [981 982 1000 16777215]
                )
                (case_arm
                  pat_list: [{(9)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dot)})]
                  spids: [1003 1004 1022 16777215]
                )
                (case_arm
                  pat_list: [{(a)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dash)})]
                  spids: [1025 1026 1035 16777215]
                )
                (case_arm
                  pat_list: [{(b)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)})]
                  spids: [1038 1039 1054 16777215]
                )
                (case_arm
                  pat_list: [{(c)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dot)})]
                  spids: [1057 1058 1073 16777215]
                )
                (case_arm
                  pat_list: [{(d)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dot)})]
                  spids: [1076 1077 1089 16777215]
                )
                (case_arm
                  pat_list: [{(e)}]
                  action: [(C {(Mc_Dot)})]
                  spids: [1092 1093 1099 16777215]
                )
                (case_arm
                  pat_list: [{(f)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dot)})]
                  spids: [1102 1103 1118 16777215]
                )
                (case_arm
                  pat_list: [{(g)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dot)})]
                  spids: [1121 1122 1134 16777215]
                )
                (case_arm
                  pat_list: [{(h)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)})]
                  spids: [1137 1138 1153 16777215]
                )
                (case_arm
                  pat_list: [{(i)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dot)})]
                  spids: [1156 1157 1166 16777215]
                )
                (case_arm
                  pat_list: [{(j)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dash)})]
                  spids: [1169 1170 1185 16777215]
                )
                (case_arm
                  pat_list: [{(k)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dash)})]
                  spids: [1188 1189 1201 16777215]
                )
                (case_arm
                  pat_list: [{(l)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dot)})]
                  spids: [1204 1205 1220 16777215]
                )
                (case_arm
                  pat_list: [{(m)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dash)})]
                  spids: [1223 1224 1233 16777215]
                )
                (case_arm
                  pat_list: [{(n)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dot)})]
                  spids: [1236 1237 1246 16777215]
                )
                (case_arm
                  pat_list: [{(o)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dash)})]
                  spids: [1249 1250 1262 16777215]
                )
                (case_arm
                  pat_list: [{(p)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dot)})]
                  spids: [1265 1266 1281 16777215]
                )
                (case_arm
                  pat_list: [{(q)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dash)})]
                  spids: [1284 1285 1300 16777215]
                )
                (case_arm
                  pat_list: [{(r)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dot)})]
                  spids: [1303 1304 1316 16777215]
                )
                (case_arm
                  pat_list: [{(s)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)})]
                  spids: [1319 1320 1332 16777215]
                )
                (case_arm
                  pat_list: [{(t)}]
                  action: [(C {(Mc_Dash)})]
                  spids: [1335 1336 1342 16777215]
                )
                (case_arm
                  pat_list: [{(u)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dash)})]
                  spids: [1345 1346 1358 16777215]
                )
                (case_arm
                  pat_list: [{(v)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dash)})]
                  spids: [1361 1362 1377 16777215]
                )
                (case_arm
                  pat_list: [{(w)}]
                  action: [(C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dash)})]
                  spids: [1380 1381 1393 16777215]
                )
                (case_arm
                  pat_list: [{(x)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dash)})]
                  spids: [1396 1397 1412 16777215]
                )
                (case_arm
                  pat_list: [{(y)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dash)})]
                  spids: [1415 1416 1431 16777215]
                )
                (case_arm
                  pat_list: [{(z)}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dot)})]
                  spids: [1434 1435 1450 16777215]
                )
                (case_arm
                  pat_list: [{(DQ (.))}]
                  action: [
                    (C {(Mc_Dot)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dot)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dot)})
                    (C {(Mc_Dash)})
                  ]
                  spids: [1453 1456 1477 16777215]
                )
                (case_arm
                  pat_list: [{(DQ (','))}]
                  action: [
                    (C {(Mc_Dash)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dot)})
                    (C {(Mc_Dot)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dash)})
                  ]
                  spids: [1480 1483 1504 16777215]
                )
                (case_arm
                  pat_list: [{(DQ (':'))}]
                  action: [
                    (C {(Mc_Dash)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dot)})
                    (C {(Mc_Dot)})
                    (C {(Mc_Dot)})
                  ]
                  spids: [1507 1510 1531 16777215]
                )
                (case_arm
                  pat_list: [{(DQ ("'"))}]
                  action: [
                    (C {(Mc_Dot)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dot)})
                  ]
                  spids: [1534 1537 1558 16777215]
                )
                (case_arm
                  pat_list: [{(DQ (-))}]
                  action: [
                    (C {(Mc_Dash)})
                    (C {(Mc_Dot)})
                    (C {(Mc_Dot)})
                    (C {(Mc_Dot)})
                    (C {(Mc_Dot)})
                    (C {(Mc_Dash)})
                  ]
                  spids: [1561 1564 1585 16777215]
                )
                (case_arm
                  pat_list: [{(DQ (/))}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dash)}) (C {(Mc_Dot)})]
                  spids: [1588 1591 1609 16777215]
                )
                (case_arm
                  pat_list: [{(DQ ('@'))}]
                  action: [
                    (C {(Mc_Dot)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dot)})
                    (C {(Mc_Dash)})
                    (C {(Mc_Dot)})
                  ]
                  spids: [1612 1615 1636 16777215]
                )
                (case_arm
                  pat_list: [{(DQ ('='))}]
                  action: [(C {(Mc_Dash)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dot)}) (C {(Mc_Dash)})]
                  spids: [1639 1642 1660 16777215]
                )
              ]
              spids: [796 802 1663]
            )
          ]
          spids: [792]
        )
      spids: [789 792]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} {(DQ ($ VSub_Name '$FP_TEXTFILE_INPUT'))} 
                  {(Lit_Other ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(clear)})
            (C {(echo)} {(-e)} 
              {
                (DQ (Lit_Other '\\') ('nNo textfile was found. Please create a file at:') 
                  (Lit_Other '\\') (n) ($ VSub_Name '$FP_TEXTFILE_INPUT') (Lit_Other '\\') 
                  ('nThis file will then be converted to Morse Code.')
                )
              }
            )
            (ControlFlow token:<ControlFlow_Exit exit>)
          ]
          spids: [16777215 1702]
        )
      ]
      spids: [16777215 1726]
    )
    (C {(Mc_Convert_Input_Textfile_Lowercase)})
    (WhileUntil
      keyword: <KW_While while>
      cond: [(C {(read)} {(-r)} {(-n1)} {(CHAR_CURRENT)})]
      body: 
        (DoGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$CHAR_CURRENT'))} {(Lit_Other '=')} 
                          {(DQ (' '))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(Mc_Next_Word)})]
                  spids: [16777215 1784]
                )
              ]
              else_action: [(C {(Mc_Next_Char)}) (C {(Convert_Text_To_Morsecode)})]
              spids: [1796 1807]
            )
          ]
          spids: [1760 1811]
        )
      redirects: [
        (Redir
          op: <Redir_Less '<'>
          fd: 16777215
          arg_word: {(DQ ($ VSub_Name '$FP_TEXTFILE_LOWERCASE'))}
        )
      ]
    )
    (C {(Mc_End_of_Message)})
    (C {(rm)} {(DQ ($ VSub_Name '$FP_TEXTFILE_LOWERCASE'))})
    (ControlFlow token:<ControlFlow_Exit exit>)
  ]
  spids: [3]
)