diff --git a/parser.go b/parser.go index 770ba9f..a5379f3 100644 --- a/parser.go +++ b/parser.go @@ -129,7 +129,7 @@ func (tx *Tx) Parser() error { tx.Swaps = swaps } for i, instr := range tx.rawTx.Transaction.Message.Instructions { - if p, exists := actionPrograms[programAccount]; exists { + if p, exists := actionPrograms[accountList[instr.ProgramIDIndex]]; exists { _, err := p(tx, instr, InnerInstructions{}, [2]uint{uint(i), uint(0)}) if err != nil { if errors.Is(err, InstructionIgnoredError) {