(CommandList children: [ (C {(.)} {(../1/library.sh)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-ne)} {(3)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [ {(echo)} {(DQ ('Usage: ') ($ VSub_Number '$0') (' principal interest loan-duration-years'))} ] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[56])] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 45] ) ] spids: [16777215 64] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs:(LhsName name:P) op:Equal rhs:{($ VSub_Number '$1')} spids:[67]) (assign_pair lhs:(LhsName name:I) op:Equal rhs:{($ VSub_Number '$2')} spids:[70]) (assign_pair lhs:(LhsName name:L) op:Equal rhs:{($ VSub_Number '$3')} spids:[73]) ] spids: [67] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:J) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(scriptbc)} {(-p)} {(8)} {($ VSub_Name '$I')} {(/)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\('>)} {(12)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\*'>)} {(100)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\)'>)} ) ] ) left_token: <Left_CommandSub '$('> spids: [78 99] ) ) } spids: [76] ) ] spids: [76] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:N) op: Equal rhs: { (DQ (ArithSubPart anode: (ArithBinary op_id: Arith_Star left: (ArithWord w:{($ VSub_Name '$L')}) right: (ArithWord w:{(Lit_Digits 12)}) ) spids: [104 113] ) ) } spids: [102] ) ] spids: [102] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:M) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(scriptbc)} {(-p)} {(8)} {($ VSub_Name '$P')} {(EscapedLiteralPart token:<Lit_EscapedChar '\\*'>)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\('>)} {($ VSub_Name '$J')} {(/)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\('>) (1)} {(-)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\('>) (1)} {(Lit_Other '+')} {($ VSub_Name '$J') (EscapedLiteralPart token:<Lit_EscapedChar '\\)'>)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\^'>)} {(-) ($ VSub_Name '$N') (EscapedLiteralPart token:<Lit_EscapedChar '\\)'>)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\)'>)} ) ] ) left_token: <Left_CommandSub '$('> spids: [118 156] ) ) } spids: [116] ) ] spids: [116] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dollars) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [(C {(echo)} {($ VSub_Name '$M')}) (C {(cut)} {(-d.)} {(-f1)})] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [166 178] ) ) } spids: [164] ) ] spids: [164] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:cents) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$M')}) (C {(cut)} {(-d.)} {(-f2)}) (C {(cut)} {(-c1-2)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [183 201] ) ) } spids: [181] ) ] spids: [181] ) (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ('A ') ($ VSub_Name '$L') ('-year loan at ') ($ VSub_Name '$I') ('% interest with a principal amount of ') (CommandSubPart command_list: (CommandList children: [(C {(nicenumber)} {($ VSub_Name '$P')} {(1)})] ) left_token: <Left_CommandSub '$('> spids: [216 223] ) (' \n') ('results in a payment of ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ($ VSub_Name '$dollars') (.) ($ VSub_Name '$cents') (' each month for the duration of\n') ('the loan (') ($ VSub_Name '$N') (' payments).\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [207] ) ] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] )