not receiving response for unsuccessful transactions (field 39 is non 000)

102 views
Skip to first unread message

Mumuney Abdlquadri

unread,
Aug 2, 2018, 11:43:34 AM8/2/18
to jpos-...@googlegroups.com
Dear Sirs,

I am running into a weird scenario where when my field 39 is a non-000 (non success) the message does not get passed to my server.

I can see the message at tcpdump. I have built the message from the Hex in tcp. Packager works fine.

The only difference from responses I get and those I do not get is that field 39 is not 000.

Any pointers?


Regards

Alejandro Revilla

unread,
Aug 2, 2018, 12:16:45 PM8/2/18
to jPOS Users
I'd start by looking at the jPOS logs.



--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.
To post to this group, send email to jpos-...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/CAGDHizn2z_o9hie-dap1ihBnN6OQrd3WMB-Sng7NXb6PtEQe2A%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

chhil

unread,
Aug 2, 2018, 1:38:07 PM8/2/18
to jpos-...@googlegroups.com
Check the length header of the message and the bytes received, it may be waiting for bytes based on the length but there arent any more coming in. 

-chhil

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

Mumuney Abdlquadri

unread,
Aug 15, 2018, 2:09:22 AM8/15/18
to jpos-...@googlegroups.com
Hello Chhil,

I seems your suspicion is correct.

The field 127 is reporting a length of 12428 to JPos while the max is 999.

I got to know this when I tried to unpack the HexDump manually but the 127 fails to unpack,

31 32 31 30 f0 32 80 01  8e c1 80 20 00 00 00 04
00 00 00 36 31 36 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a
2a 2a 2a 2a 2a 2a 30 31  32 30 30 30 30 30 30 30
30 30 30 30 30 31 30 30  30 30 30 30 30 30 30 30
30 30 30 30 30 30 31 32  32 30 31 38 30 38 31 34
31 36 35 37 31 37 32 30  31 38 30 38 31 34 32 30
31 38 30 31 32 36 30 36  36 33 39 31 33 38 31 31
30 30 30 30 30 30 30 30  30 30 30 30 30 30 30 30
30 30 30 30 30 31 32 55  4e 49 30 30 30 31 31 36
30 30 30 30 30 30 30 30  31 30 37 30 30 30 30 31
31 30 37 30 30 30 30 30  30 30 30 30 30 30 30 31
30 32 2a 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a
2a 2a 2a 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a
2a 2a 2a 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a
2a 2a 2a 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a
2a 2a 2a 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a
2a 2a 2a 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a
2a 2a 2a 2a 2a 2a 2a 2a  30 30 33 4e 47 4e 30 31
35 30 30 33 38 39 31 38  36 33 31 7c 30 32 30 30
31 31 31 32 33 34 35 36  31 32 33 34 35 30 33 4d
41 53 41 54 4d 30 31 32  30 30 30 30 30 30 30 30
30 30 31 32 30 31 30 45  4d 56 30 32 32 2c 30 30
39                                              

<log realm="" at="2018-08-15T06:33:10.771" lifespan="15ms">
  <unpack>
    31323130F03280018EC18020000000040000003631362A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A30313230303030303030303030303031303030303030303030303030303030303132323031383038313431363537313732303138303831343230313830313236303636333931333831313030303030303030303030303030303030303030303132554E49303030313136303030303030303031303730303030313130373030303030303030303030303130322A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A3030334E474E303135303033383931383633317C303230303131313233343536313233343530334D415341544D303132303030303030303030303132303130454D563032322C303039
    <bitmap>{1, 2, 3, 4, 11, 12, 15, 17, 32, 33, 37, 38, 39, 41, 42, 48, 49, 59, 94, 123, 124, 126, 127}</bitmap>
 
    error unpacking field 127 consumed=340
    <iso-exception>
      org.jpos.iso.IFA_LLLLLLBINARY: Problem unpacking field 0
      <iso-exception>
        Field length 12428 too long. Max: 999
        org.jpos.iso.ISOException: Field length 12428 too long. Max: 999
    at org.jpos.iso.ISOBinaryFieldPackager.unpack(ISOBinaryFieldPackager.java:127)
    at org.jpos.iso.ISOMsgFieldPackager.unpack(ISOMsgFieldPackager.java:87)
    at org.jpos.iso.ISOBasePackager.unpack(ISOBasePackager.java:305)
    at org.jpos.iso.ISOMsg.unpack(ISOMsg.java:468)
    at unhandled.HandlingUnhandled.main(HandlingUnhandled.java:278)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
      </iso-exception>
      org.jpos.iso.ISOException: org.jpos.iso.IFA_LLLLLLBINARY: Problem unpacking field 0 (org.jpos.iso.ISOException: Field length 12428 too long. Max: 999)
    at org.jpos.iso.ISOBinaryFieldPackager.unpack(ISOBinaryFieldPackager.java:134)
    at org.jpos.iso.ISOMsgFieldPackager.unpack(ISOMsgFieldPackager.java:87)
    at org.jpos.iso.ISOBasePackager.unpack(ISOBasePackager.java:305)
    at org.jpos.iso.ISOMsg.unpack(ISOMsg.java:468)
    at unhandled.HandlingUnhandled.main(HandlingUnhandled.java:278)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
Nested:org.jpos.iso.ISOException: Field length 12428 too long. Max: 999
    at org.jpos.iso.ISOBinaryFieldPackager.unpack(ISOBinaryFieldPackager.java:127)
    at org.jpos.iso.ISOMsgFieldPackager.unpack(ISOMsgFieldPackager.java:87)
    at org.jpos.iso.ISOBasePackager.unpack(ISOBasePackager.java:305)
    at org.jpos.iso.ISOMsg.unpack(ISOMsg.java:468)
    at unhandled.HandlingUnhandled.main(HandlingUnhandled.java:278)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
    </iso-exception>
    <iso-exception>
      org.jpos.iso.IFA_LLLLLLBINARY: Problem unpacking field 0 (org.jpos.iso.ISOException: Field length 12428 too long. Max: 999) unpacking field=127, consumed=340
      org.jpos.iso.ISOException: org.jpos.iso.IFA_LLLLLLBINARY: Problem unpacking field 0 (org.jpos.iso.ISOException: Field length 12428 too long. Max: 999) unpacking field=127, consumed=340
    at org.jpos.iso.ISOBasePackager.unpack(ISOBasePackager.java:340)
    at org.jpos.iso.ISOMsg.unpack(ISOMsg.java:468)
    at unhandled.HandlingUnhandled.main(HandlingUnhandled.java:278)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
    </iso-exception>
  </unpack>
</log>
<isomsg>

org.jpos.iso.ISOException: org.jpos.iso.IFA_LLLLLLBINARY: Problem unpacking field 0 (org.jpos.iso.ISOException: Field length 12428 too long. Max: 999) unpacking field=127, consumed=340
    at org.jpos.iso.ISOBasePackager.unpack(ISOBasePackager.java:340)
    at org.jpos.iso.ISOMsg.unpack(ISOMsg.java:468)
    at unhandled.HandlingUnhandled.main(HandlingUnhandled.java:278)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)


On Thu, Aug 2, 2018 at 6:37 PM, chhil <chi...@gmail.com> wrote:
Check the length header of the message and the bytes received, it may be waiting for bytes based on the length but there arent any more coming in. 

-chhil

On Thu, Aug 2, 2018 at 9:13 PM 'Mumuney Abdlquadri' via jPOS Users <jpos-...@googlegroups.com> wrote:
Dear Sirs,

I am running into a weird scenario where when my field 39 is a non-000 (non success) the message does not get passed to my server.

I can see the message at tcpdump. I have built the message from the Hex in tcp. Packager works fine.

The only difference from responses I get and those I do not get is that field 39 is not 000.

Any pointers?


Regards

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

Mumuney Abdlquadri

unread,
Aug 15, 2018, 2:11:22 AM8/15/18
to jpos-...@googlegroups.com
I sent the last mail too fast.

So my question is what are my options. Thanks.

chhil

unread,
Aug 15, 2018, 5:30:24 AM8/15/18
to jpos-...@googlegroups.com

I seems your suspicion is correct.

This is a different problem from I was expecting based on the information that you provided that you weren't seeing the message.

In any case your packager file is not defined correctly leading it to extract fields incorrectly and finally an exception is thrown when its got hold of an invalid length and those many bytes don't exist.

So use your raw data with an ISOMsg object and packager file , unpack it, you will get an exception, catch it, dump the isomsg (it will dump to the point it managed to unpack), see if the data in the fields are as expected. Find the field that looks wrong 
fix the packager and try again. Search the group, there are enough java snippets posted to do this as a small test.

e.g. to understand why misaligned packagers cause errors
If a sample specification has a message with 2 fields defined as
LLLChar Field1
LLChar Field2
Data received is 
 field1 = 0102222222222 [010 length and data 2222222222]
 field2 = 015 [01 length and data 5]

But your packager for some reason defined it incorrectly as LLChar for field1.

The during unpacking your field1 packager would see length of 01 and take the next 0 as the data and field 2 would see the length as 22 and throw an exception as there aren't 22 bytes following (just 11).

-chhil





To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

chhil

unread,
Aug 15, 2018, 6:06:48 AM8/15/18
to jpos-...@googlegroups.com
And one more thing.... the hexdump that you have is protected (looks like a postilion hexdump)so you may want to replace the 0x2A
with something like 0x30 so that your packager doesn't complain and throw unnecessary errors because your dump is not the actual message.

-chhil

Mumuney Abdlquadri

unread,
Sep 5, 2018, 6:30:45 AM9/5/18
to jpos-...@googlegroups.com
Hi Chhil,

Thanks for the pointers. I have gotten the Finacle side of the hex. When I ran it through the packager, field 127 still breaks with

Problem unpacking field 2 (org.jpos.iso.ISOException: Field length 622 too long. Max: 32) unpacking field=127, consumed=404

I changed the packager like this subfield 2 of 127

<isofield
id="2"
length="999"
name="SWITCH KEY"
class="org.jpos.iso.IFA_LLLCHAR"/>
But the error changed to Problem unpacking field 2 (org.jpos.iso.ISOException: Field length 6204 too long. Max: 999) unpacking field=127, consumed=404

I am surprised that it changed the reported field length. while the consumed still remains 404. Do you have any idea of this behaviour

This is the new hex:


01 bb 31 32 31 30 f0 33 80 01 8e c5 c0 20 00 00
00 04 00 00 00 36 31 36 35 31 34 35 38 35 31 31
36 39 34 37 38 39 31 35 30 31 32 30 30 30 30 30
30 30 30 30 30 30 30 30 30 33 36 30 30 37 30 30
30 30 30 30 34 39 39 39 31 33 32 30 31 38 30 38
32 33 31 35 30 33 31 32 32 30 31 38 30 38 32 33
32 30 31 38 30 38 32 33 32 30 31 38 30 31 32 36

30 36 36 33 39 31 33 38 31 31 30 30 30 30 30 30
30 30 30 30 30 34 39 39 39 39 30 30 30 30 30 31
33 55 4e 49 30 30 30 31 31 39 30 30 30 30 30 30
30 30 50 31 38 34 33 31 34 30 50 31 38 34 33 31
34 30 30 30 30 30 30 30 30 30 35 30 37 30 4e 47
4e 43 30 30 30 30 30 30 30 30 30 30 30 30 30 30
30 30 30 30 30 30 30 30 30 31 44 30 30 30 30 30
30 30 30 30 30 30 30 30 30 30 30 4e 47 4e 31 30
32 2b 30 30 30 30 30 30 30 30 30 30 30 30 30 30
30 30 2b 30 30 30 30 30 30 30 30 30 30 30 30 30
30 30 30 2b 30 30 30 30 30 30 30 30 30 30 30 30
30 30 30 30 2b 30 30 30 30 30 30 30 30 30 30 30
30 30 30 30 30 2b 30 30 30 30 30 30 30 30 30 30
30 30 30 30 30 30 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 30 30 33 55 53 44 4e 47 4e
30 31 35 30 30 33 38 39 31 38 37 36 35 7c 30 32

30 30 31 31 31 32 33 34 35 36 31 32 33 34 35 30
33 4d 41 53 41 54 4d 30 31 32 34 39 39 39 39 30
30 30 30 30 31 33 30 33 36 47 34 2d 46 6f 72 61
63 69 64 20 68 61 73 20 44 65 62 69 74 20 4f 52
20 54 6f 74 61 6c 20 46 72 65 65 7a 65        


For what it is worth: Postillion translates the field like:

[LLLVAR b   ..999 036] 127 *[47342D466F726163696420686173204465626974204F5220546F74616C20467265657A65] 


To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

chhil

unread,
Sep 5, 2018, 8:59:00 AM9/5/18
to jpos-...@googlegroups.com
I am confused,127.2 switch key is Postilion specific, is Finnacle talking using a Postilion 8583 format? 
You need to align your packager correctly for finnacle messages. The unpacking errors are in all likelihood because of that.
I used your hex (without the first 2 bytes, which I believe are length) with the postpack.xml packager and of course it failed.
Fix your packager based on the message specification you are working with. Its not a trial an error thing.
If we can get the field data that's being sent we can kind of reverse engineer a bit but too much effort.

I assume the pan and any other fields are test data.
package sample;

import org.jpos.iso.ISOException;
import org.jpos.iso.ISOMsg;
import org.jpos.iso.ISOUtil;
import org.jpos.iso.packager.GenericPackager;
import org.jpos.util.Logger;
import org.jpos.util.SimpleLogListener;

public class UnpackISOMessagePostPack {

    public static void main(String[] args) {

        String message = "31 32 31 30 f0 33 80 01 8e c5 c0 20 00 00" + "00 04 00 00 00 36 31 36 35 31 34 35 38 35 31 31"
                + "36 39 34 37 38 39 31 35 30 31 32 30 30 30 30 30" + "30 30 30 30 30 30 30 30 30 33 36 30 30 37 30 30"
                + "30 30 30 30 34 39 39 39 31 33 32 30 31 38 30 38" + "32 33 31 35 30 33 31 32 32 30 31 38 30 38 32 33"
                + "32 30 31 38 30 38 32 33 32 30 31 38 30 31 32 36" + "30 36 36 33 39 31 33 38 31 31 30 30 30 30 30 30"
                + "30 30 30 30 30 34 39 39 39 39 30 30 30 30 30 31" + "33 55 4e 49 30 30 30 31 31 39 30 30 30 30 30 30"
                + "30 30 50 31 38 34 33 31 34 30 50 31 38 34 33 31" + "34 30 30 30 30 30 30 30 30 30 35 30 37 30 4e 47"
                + "4e 43 30 30 30 30 30 30 30 30 30 30 30 30 30 30" + "30 30 30 30 30 30 30 30 30 31 44 30 30 30 30 30"
                + "30 30 30 30 30 30 30 30 30 30 30 4e 47 4e 31 30" + "32 2b 30 30 30 30 30 30 30 30 30 30 30 30 30 30"
                + "30 30 2b 30 30 30 30 30 30 30 30 30 30 30 30 30" + "30 30 30 2b 30 30 30 30 30 30 30 30 30 30 30 30"
                + "30 30 30 30 2b 30 30 30 30 30 30 30 30 30 30 30" + "30 30 30 30 30 2b 30 30 30 30 30 30 30 30 30 30"
                + "30 30 30 30 30 30 20 20 20 20 20 20 20 20 20 20" + "20 20 20 20 20 20 20 30 30 33 55 53 44 4e 47 4e"
                + "30 31 35 30 30 33 38 39 31 38 37 36 35 7c 30 32" + "30 30 31 31 31 32 33 34 35 36 31 32 33 34 35 30"
                + "33 4d 41 53 41 54 4d 30 31 32 34 39 39 39 39 30" + "30 30 30 30 31 33 30 33 36 47 34 2d 46 6f 72 61"
                + "63 69 64 20 68 61 73 20 44 65 62 69 74 20 4f 52" + "20 54 6f 74 61 6c 20 46 72 65 65 7a 65         ";
        message = message.replaceAll(" ", "");

        Logger l = new Logger();
        l.addListener(new SimpleLogListener());
        ISOMsg m = new ISOMsg();
        GenericPackager p;
        try {
            p = new GenericPackager("C:\\temp\\postpack.xml");
            m.setPackager(p);
            p.setLogger(l, "blah");
            m.unpack(ISOUtil.hex2byte(message)); // You need to convert the hex
                                                 // string to bytes
            m.dump(System.out, "");
            System.out.println(ISOUtil.hexdump(m.pack()));

        }
        catch (ISOException e) {

            e.printStackTrace();
            m.dump(System.out, "");
        }

    }

}

Output
<log realm="blah" at="2018-09-05T18:09:30.844" lifespan="3ms">
  <unpack>
    31323130F03380018EC5C0200000000400000036313635313435383531313639343738393135303132303030303030303030303030303033363030373030303030303439393931333230313830383233313530333132323031383038323332303138303832333230313830313236303636333931333831313030303030303030303030343939393930303030303133554E493030303131393030303030303030503138343331343050313834333134303030303030303030353037304E474E4330303030303030303030303030303030303030303030303144303030303030303030303030303030304E474E3130322B303030303030303030303030303030302B303030303030303030303030303030302B303030303030303030303030303030302B303030303030303030303030303030302B3030303030303030303030303030303020202020202020202020202020202020203030335553444E474E303135303033383931383736357C303230303131313233343536313233343530334D415341544D30313234393939393030303030313330333647342D466F726163696420686173204465626974204F5220546F74616C20467265657A65
    <bitmap>{1, 2, 3, 4, 11, 12, 15, 16, 17, 32, 33, 37, 38, 39, 41, 42, 46, 48, 49, 50, 59, 94, 123, 124, 126, 127}</bitmap>
    <unpack fld="2" packager="org.jpos.iso.IFA_LLNUM">
      <value>5145851169478915</value>
    </unpack>
    <unpack fld="3" packager="org.jpos.iso.IFA_NUMERIC">
      <value>012000</value>
    </unpack>
    <unpack fld="4" packager="org.jpos.iso.IFA_NUMERIC">
      <value>000000000003</value>
    </unpack>
    <unpack fld="11" packager="org.jpos.iso.IFA_NUMERIC">
      <value>600700</value>
    </unpack>
    <unpack fld="12" packager="org.jpos.iso.IFA_NUMERIC">
      <value>000049</value>
    </unpack>
    <unpack fld="15" packager="org.jpos.iso.IFA_NUMERIC">
      <value>9913</value>
    </unpack>
    <unpack fld="16" packager="org.jpos.iso.IFA_NUMERIC">
      <value>2018</value>
    </unpack>
    <unpack fld="17" packager="org.jpos.iso.IFA_NUMERIC">
      <value>0823</value>
    </unpack>
    error unpacking field 32 consumed=80
    <iso-exception>
      org.jpos.iso.IFA_LLNUM: Problem unpacking field 32
      <iso-exception>
        Field length 15 too long. Max: 11
        org.jpos.iso.ISOException: Field length 15 too long. Max: 11
    at org.jpos.iso.ISOStringFieldPackager.unpack(ISOStringFieldPackager.java:179)
    at org.jpos.iso.ISOBasePackager.unpack(ISOBasePackager.java:305)
    at org.jpos.iso.ISOMsg.unpack(ISOMsg.java:468)
    at sample.UnpackISOMessagePostPack.main(UnpackISOMessagePostPack.java:69)
      </iso-exception>
      org.jpos.iso.ISOException: org.jpos.iso.IFA_LLNUM: Problem unpacking field 32 (org.jpos.iso.ISOException: Field length 15 too long. Max: 11)
    at org.jpos.iso.ISOStringFieldPackager.unpack(ISOStringFieldPackager.java:187)
    at org.jpos.iso.ISOBasePackager.unpack(ISOBasePackager.java:305)
    at org.jpos.iso.ISOMsg.unpack(ISOMsg.java:468)
    at sample.UnpackISOMessagePostPack.main(UnpackISOMessagePostPack.java:69)
Nested:org.jpos.iso.ISOException: Field length 15 too long. Max: 11
    at org.jpos.iso.ISOStringFieldPackager.unpack(ISOStringFieldPackager.java:179)
    at org.jpos.iso.ISOBasePackager.unpack(ISOBasePackager.java:305)
    at org.jpos.iso.ISOMsg.unpack(ISOMsg.java:468)
    at sample.UnpackISOMessagePostPack.main(UnpackISOMessagePostPack.java:69)
    </iso-exception>
    <iso-exception>
      org.jpos.iso.IFA_LLNUM: Problem unpacking field 32 (org.jpos.iso.ISOException: Field length 15 too long. Max: 11) unpacking field=32, consumed=80
      org.jpos.iso.ISOException: org.jpos.iso.IFA_LLNUM: Problem unpacking field 32 (org.jpos.iso.ISOException: Field length 15 too long. Max: 11) unpacking field=32, consumed=80
    at org.jpos.iso.ISOBasePackager.unpack(ISOBasePackager.java:340)
    at org.jpos.iso.ISOMsg.unpack(ISOMsg.java:468)
    at sample.UnpackISOMessagePostPack.main(UnpackISOMessagePostPack.java:69)
    </iso-exception>
  </unpack>
</log>
<isomsg>
  <!-- org.jpos.iso.packager.GenericPackager[C:\temp\postpack.xml] -->
  <field id="0" value="1210"/>
  <field id="2" value="5145851169478915"/>
  <field id="3" value="012000"/>
  <field id="4" value="000000000003"/>
  <field id="11" value="600700"/>
  <field id="12" value="000049"/>
  <field id="15" value="9913"/>
  <field id="16" value="2018"/>
  <field id="17" value="0823"/>
</isomsg>
org.jpos.iso.ISOException: org.jpos.iso.IFA_LLNUM: Problem unpacking field 32 (org.jpos.iso.ISOException: Field length 15 too long. Max: 11) unpacking field=32, consumed=80
    at org.jpos.iso.ISOBasePackager.unpack(ISOBasePackager.java:340)
    at org.jpos.iso.ISOMsg.unpack(ISOMsg.java:468)
    at sample.UnpackISOMessagePostPack.main(UnpackISOMessagePostPack.java:69)
-chhil
 


To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

Mumuney Abdlquadri

unread,
Sep 5, 2018, 11:14:07 AM9/5/18
to jpos-...@googlegroups.com
Yes Chhil it is test data.

Yes I think there is some intermediary drivers that allow the communication between the Finnacle side and Postilion side.

I have attached the Packager we got to work. But ones the field 127 is introduced into the message it fails at field 127.

For some no one seem to have an idea about the field.

How do you suppose I can go about the reverse engineering. Thanks man.

To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.
postpack.xml

chhil

unread,
Sep 5, 2018, 1:44:35 PM9/5/18
to jpos-...@googlegroups.com


Hi,
Your field definition of 127 and its subfields is wrong.
Since I don't know the subfield definitions of 127, I removed the field 127 isofieldpackager and made it an isofield in your packager.


<isofield id="127" length="999" name="Reserved for private use" class="org.jpos.iso.IFA_LLLBINARY"/>

Why did I change it to LLBinary?
Because your postilion trace says its LLLVar b.

Then ran the code snippet I applied earlier and got the following output. As you will see all the bytes in the hexdump are consumed, means its unpacking the full message. You need to figure out the definitions of the subfields of 127, that is if it has subfields. At the moment it matches your postilion trace data of 
[LLLVAR b   ..999 036] 127 *[47342D466F726163696420686173204465626974204F5220546F74616C20467265657A65] 
output
<log realm="blah" at="2018-09-05T23:03:40.051" lifespan="1ms">

  <unpack>
    31323130F03380018EC5C0200000000400000036313635313435383531313639343738393135303132303030303030303030303030303033363030373030303030303439393931333230313830383233313530333132323031383038323332303138303832333230313830313236303636333931333831313030303030303030303030343939393930303030303133554E493030303131393030303030303030503138343331343050313834333134303030303030303030353037304E474E4330303030303030303030303030303030303030303030303144303030303030303030303030303030304E474E3130322B303030303030303030303030303030302B303030303030303030303030303030302B303030303030303030303030303030302B303030303030303030303030303030302B3030303030303030303030303030303020202020202020202020202020202020203030335553444E474E303135303033383931383736357C303230303131313233343536313233343530334D415341544D30313234393939393030303030313330333647342D466F726163696420686173204465626974204F5220546F74616C20467265657A65
    <bitmap>{1, 2, 3, 4, 11, 12, 15, 16, 17, 32, 33, 37, 38, 39, 41, 42, 46, 48, 49, 50, 59, 94, 123, 124, 126, 127}</bitmap>
    <unpack fld="2" packager="org.jpos.iso.IFA_LLNUM">
      <value>5145851169478915</value>
    </unpack>
    <unpack fld="3" packager="org.jpos.iso.IFA_NUMERIC">
      <value>012000</value>
    </unpack>
    <unpack fld="4" packager="org.jpos.iso.IFA_NUMERIC">

      <value>0000000000036007</value>

    </unpack>
    <unpack fld="11" packager="org.jpos.iso.IFA_NUMERIC">

      <value>000000499913</value>

    </unpack>
    <unpack fld="12" packager="org.jpos.iso.IFA_NUMERIC">

      <value>20180823150312</value>

    </unpack>
    <unpack fld="15" packager="org.jpos.iso.IFA_NUMERIC">

      <value>20180823</value>

    </unpack>
    <unpack fld="16" packager="org.jpos.iso.IFA_NUMERIC">

      <value>20180823</value>

    </unpack>
    <unpack fld="17" packager="org.jpos.iso.IFA_NUMERIC">

      <value>20180126</value>
    </unpack>
    <unpack fld="32" packager="org.jpos.iso.IFA_LLNUM">
      <value>639138</value>
    </unpack>
    <unpack fld="33" packager="org.jpos.iso.IFA_LLNUM">
      <value>00000000000</value>
    </unpack>
    <unpack fld="37" packager="org.jpos.iso.IFA_NUMERIC">
      <value>499990000013</value>
    </unpack>
    <unpack fld="38" packager="org.jpos.iso.IF_CHAR">
      <value>UNI000</value>
    </unpack>
    <unpack fld="39" packager="org.jpos.iso.IFA_NUMERIC">
      <value>119</value>
    </unpack>
    <unpack fld="41" packager="org.jpos.iso.IF_CHAR">
      <value>00000000P1843140</value>
    </unpack>
    <unpack fld="42" packager="org.jpos.iso.IF_CHAR">
      <value>P18431400000000</value>
    </unpack>
    <unpack fld="46" packager="org.jpos.iso.IFA_LLLCHAR">
      <value>70NGNC000000000000000000000001D0000000000000000NGN</value>
    </unpack>
    <unpack fld="48" packager="org.jpos.iso.IFA_LLLCHAR">
      <value>+0000000000000000+0000000000000000+0000000000000000+0000000000000000+0000000000000000                 </value>
    </unpack>
    <unpack fld="49" packager="org.jpos.iso.IFA_LLLCHAR">
      <value>USD</value>
    </unpack>
    <unpack fld="50" packager="org.jpos.iso.IF_CHAR">
      <value>NGN</value>
    </unpack>
    <unpack fld="59" packager="org.jpos.iso.IFA_LLLCHAR">
      <value>0038918765|0200</value>
    </unpack>
    <unpack fld="94" packager="org.jpos.iso.IFA_LLNUM">
      <value>12345612345</value>
    </unpack>
    <unpack fld="123" packager="org.jpos.iso.IFA_LLCHAR">
      <value>MAS</value>
    </unpack>
    <unpack fld="124" packager="org.jpos.iso.IF_CHAR">
      <value>ATM</value>
    </unpack>
    <unpack fld="126" packager="org.jpos.iso.IFA_LLLCHAR">
      <value>499990000013</value>
    </unpack>
    <unpack fld="127" packager="org.jpos.iso.IFA_LLLBINARY">
      <value type='binary'>47342D466F726163696420686173204465626974204F5220546F74616C20467265657A65</value>
    </unpack>
  </unpack>
</log>
<isomsg>
  <!-- org.jpos.iso.packager.GenericPackager[C:\SourceRepo\OII\Incomm\build\cfg\postpack_email.xml] -->

  <field id="0" value="1210"/>
  <field id="2" value="5145851169478915"/>
  <field id="3" value="012000"/>

  <field id="4" value="0000000000036007"/>
  <field id="11" value="000000499913"/>
  <field id="12" value="20180823150312"/>
  <field id="15" value="20180823"/>
  <field id="16" value="20180823"/>
  <field id="17" value="20180126"/>
  <field id="32" value="639138"/>
  <field id="33" value="00000000000"/>
  <field id="37" value="499990000013"/>
  <field id="38" value="UNI000"/>
  <field id="39" value="119"/>
  <field id="41" value="00000000P1843140"/>
  <field id="42" value="P18431400000000"/>
  <field id="46" value="70NGNC000000000000000000000001D0000000000000000NGN"/>
  <field id="48" value="+0000000000000000+0000000000000000+0000000000000000+0000000000000000+0000000000000000                 "/>
  <field id="49" value="USD"/>
  <field id="50" value="NGN"/>
  <field id="59" value="0038918765|0200"/>
  <field id="94" value="12345612345"/>
  <field id="123" value="MAS"/>
  <field id="124" value="ATM"/>
  <field id="126" value="499990000013"/>
  <field id="127" value="47342D466F726163696420686173204465626974204F5220546F74616C20467265657A65" type="binary"/>
</isomsg>
<log realm="blah" at="2018-09-05T23:03:40.123" lifespan="1ms">
  <pack>
    31323130F03380018EC5C0200000000400000036313635313435383531313639343738393135303132303030303030303030303030303033363030373030303030303439393931333230313830383233313530333132323031383038323332303138303832333230313830313236303636333931333831313030303030303030303030343939393930303030303133554E493030303131393030303030303030503138343331343050313834333134303030303030303030353037304E474E4330303030303030303030303030303030303030303030303144303030303030303030303030303030304E474E3130322B303030303030303030303030303030302B303030303030303030303030303030302B303030303030303030303030303030302B303030303030303030303030303030302B3030303030303030303030303030303020202020202020202020202020202020203030335553444E474E303135303033383931383736357C303230303131313233343536313233343530334D415341544D30313234393939393030303030313330333647342D466F726163696420686173204465626974204F5220546F74616C20467265657A65
  </pack>
</log>
0000  31 32 31 30 F0 33 80 01  8E C5 C0 20 00 00 00 04  1210.3..... ....
0010  00 00 00 36 31 36 35 31  34 35 38 35 31 31 36 39  ...6165145851169
0020  34 37 38 39 31 35 30 31  32 30 30 30 30 30 30 30  4789150120000000
0030  30 30 30 30 30 30 30 33  36 30 30 37 30 30 30 30  0000000360070000
0040  30 30 34 39 39 39 31 33  32 30 31 38 30 38 32 33  0049991320180823
0050  31 35 30 33 31 32 32 30  31 38 30 38 32 33 32 30  1503122018082320
0060  31 38 30 38 32 33 32 30  31 38 30 31 32 36 30 36  1808232018012606
0070  36 33 39 31 33 38 31 31  30 30 30 30 30 30 30 30  6391381100000000
0080  30 30 30 34 39 39 39 39  30 30 30 30 30 31 33 55  000499990000013U
0090  4E 49 30 30 30 31 31 39  30 30 30 30 30 30 30 30  NI00011900000000
00a0  50 31 38 34 33 31 34 30  50 31 38 34 33 31 34 30  P1843140P1843140
00b0  30 30 30 30 30 30 30 30  35 30 37 30 4E 47 4E 43  000000005070NGNC
00c0  30 30 30 30 30 30 30 30  30 30 30 30 30 30 30 30  0000000000000000
00d0  30 30 30 30 30 30 30 31  44 30 30 30 30 30 30 30  00000001D0000000
00e0  30 30 30 30 30 30 30 30  30 4E 47 4E 31 30 32 2B  000000000NGN102+
00f0  30 30 30 30 30 30 30 30  30 30 30 30 30 30 30 30  0000000000000000
0100  2B 30 30 30 30 30 30 30  30 30 30 30 30 30 30 30  +000000000000000
0110  30 2B 30 30 30 30 30 30  30 30 30 30 30 30 30 30  0+00000000000000
0120  30 30 2B 30 30 30 30 30  30 30 30 30 30 30 30 30  00+0000000000000
0130  30 30 30 2B 30 30 30 30  30 30 30 30 30 30 30 30  000+000000000000
0140  30 30 30 30 20 20 20 20  20 20 20 20 20 20 20 20  0000            
0150  20 20 20 20 20 30 30 33  55 53 44 4E 47 4E 30 31       003USDNGN01
0160  35 30 30 33 38 39 31 38  37 36 35 7C 30 32 30 30  50038918765|0200
0170  31 31 31 32 33 34 35 36  31 32 33 34 35 30 33 4D  111234561234503M
0180  41 53 41 54 4D 30 31 32  34 39 39 39 39 30 30 30  ASATM01249999000
0190  30 30 31 33 30 33 36 47  34 2D 46 6F 72 61 63 69  0013036G4-Foraci
01a0  64 20 68 61 73 20 44 65  62 69 74 20 4F 52 20 54  d has Debit OR T
01b0  6F 74 61 6C 20 46 72 65  65 7A 65                 otal Freeze

To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

Mumuney Abdlquadri

unread,
Sep 5, 2018, 3:56:52 PM9/5/18
to jpos-...@googlegroups.com
OMG Chhil,

You are a life saver. I will try this tomorrow and revert.

Thanks so much. I learnt alot during this process.

BTW is there a resource one can learn more about the inner workings of ISO8583 fields. Thanks. I really appreciate.

To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.

To post to this group, send email to jpos-...@googlegroups.com.

chhil

unread,
Sep 5, 2018, 9:30:05 PM9/5/18
to jpos-...@googlegroups.com

BTW is there a resource one can learn more about the inner workings of ISO8583 fields.


The excellent and free programmers guide.
Chapter 2. About ISO-8583  , shows you how to interpret a message structure by hand .

There are tutorials that you should read too 

Go through the field packager test cases to see what the data looks like when fields are unpacked/unpacked. So when you look at hex data you can see what the length portion is and what the data portion is and and how it looks when you the length and field data are in different format ascii/hex/ebcdic/bcd. Should give you an idea of the correct packager to use looking at the specification.


Having the message specification at hand to write the correct field packagers and not rely on guesswork (saves everyone time).

Have a sample hexdump of the message and knowing what fields are present in that hexdump helps to write simple test cases to pack and unpack messages.

Don't assume or call a packager file postpack, when its not really a postilion 8583 packager. Call it finnacle8583 or something.

Take some hints from the sample code provided on how to use loggers and provide simple reproducible test code. It saves everyone time.

Please do not take this as criticism, they are just helpful pointers.

All the best for your project.


-chhil

<div title="MDH:PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCIgc3R5bGU9ImZvbnQtZmFtaWx5OiAmcXVvdDtjb3Vy aWVyIG5ldyZxdW90OywgbW9ub3NwYWNlOyI+YGBgamF2YTwvZGl2PjxkaXYgY2xhc3M9ImdtYWls X2RlZmF1bHQiPjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQiPjxmb250IGZhY2U9ImNvdXJpZXIg bmV3LCBtb25vc3BhY2UiPnBhY2thZ2Ugc2FtcGxlOzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJn bWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj48YnI+PC9m b250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQiPjxmb250IGZhY2U9ImNvdXJpZXIg bmV3LCBtb25vc3BhY2UiPmltcG9ydCBvcmcuanBvcy5pc28uSVNPRXhjZXB0aW9uOzwvZm9udD48 L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywg bW9ub3NwYWNlIj5pbXBvcnQgb3JnLmpwb3MuaXNvLklTT01zZzs8L2ZvbnQ+PC9kaXY+PGRpdiBj bGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+ aW1wb3J0IG9yZy5qcG9zLmlzby5JU09VdGlsOzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFp bF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj5pbXBvcnQgb3Jn Lmpwb3MuaXNvLnBhY2thZ2VyLkdlbmVyaWNQYWNrYWdlcjs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFz cz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+aW1w b3J0IG9yZy5qcG9zLnV0aWwuTG9nZ2VyOzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9k ZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj5pbXBvcnQgb3JnLmpw b3MudXRpbC5TaW1wbGVMb2dMaXN0ZW5lcjs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxf ZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+PGJyPjwvZm9udD48 L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywg bW9ub3NwYWNlIj5wdWJsaWMgY2xhc3MgVW5wYWNrSVNPTWVzc2FnZVBvc3RQYWNrIHs8L2ZvbnQ+ PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcs IG1vbm9zcGFjZSI+PGJyPjwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48 Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7IHB1YmxpYyBz dGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0i Z21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+PGJyPjwv Zm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVy IG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgU3RyaW5nIG1lc3Nh Z2UgPSAiMzEgMzIgMzEgMzAgZjAgMzMgODAgMDEgOGUgYzUgYzAgMjAgMDAgMDAiICsgIjAwIDA0 IDAwIDAwIDAwIDM2IDMxIDM2IDM1IDMxIDM0IDM1IDM4IDM1IDMxIDMxIjwvZm9udD48L2Rpdj48 ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3Nw YWNlIj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICsgIjM2IDM5IDM0IDM3IDM4IDM5IDMxIDM1IDMwIDMxIDMyIDMwIDMwIDMwIDMwIDMwIiAr ICIzMCAzMCAzMCAzMCAzMCAzMCAzMCAzMCAzMCAzMyAzNiAzMCAzMCAzNyAzMCAzMCI8L2ZvbnQ+ PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcs IG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyArICIzMCAzMCAzMCAzMCAzNCAzOSAzOSAzOSAzMSAzMyAzMiAzMCAzMSAzOCAz MCAzOCIgKyAiMzIgMzMgMzEgMzUgMzAgMzMgMzEgMzIgMzIgMzAgMzEgMzggMzAgMzggMzIgMzMi PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQiPjxmb250IGZhY2U9ImNvdXJp ZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgKyAiMzIgMzAgMzEgMzggMzAgMzggMzIgMzMgMzIgMzAgMzEgMzgg MzAgMzEgMzIgMzYiICsgIjMwIDM2IDM2IDMzIDM5IDMxIDMzIDM4IDMxIDMxIDMwIDMwIDMwIDMw IDMwIDMwIjwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNl PSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICsgIjMwIDMwIDMwIDMwIDMwIDM0IDM5IDM5IDM5IDM5 IDMwIDMwIDMwIDMwIDMwIDMxIiArICIzMyA1NSA0ZSA0OSAzMCAzMCAzMCAzMSAzMSAzOSAzMCAz MCAzMCAzMCAzMCAzMCI8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZv bnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyArICIzMCAzMCA1MCAzMSAzOCAzNCAzMyAz MSAzNCAzMCA1MCAzMSAzOCAzNCAzMyAzMSIgKyAiMzQgMzAgMzAgMzAgMzAgMzAgMzAgMzAgMzAg MzAgMzUgMzAgMzcgMzAgNGUgNDciPC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1 bHQiPjxmb250IGZhY2U9ImNvdXJpZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu

Mumuney Abdlquadri

unread,
Sep 6, 2018, 3:46:35 AM9/6/18
to jpos-...@googlegroups.com
Thanks for you pointers.

I have read most of the docs. I guess I need to look more into field packager test cases.

Regards.

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.
To post to this group, send email to jpos-...@googlegroups.com.

Mumuney Abdlquadri

unread,
Sep 6, 2018, 6:18:44 PM9/6/18
to jpos-...@googlegroups.com
Hi Chhil, Just to update that it works as expected. Thanks.

chhil

unread,
Sep 6, 2018, 8:57:13 PM9/6/18
to jpos-...@googlegroups.com
It better work ;)

Best of luck with the project.

-chhil

<div title="MDH:PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCIgc3R5bGU9ImZvbnQtZmFtaWx5OiAmcXVvdDtjb3Vy aWVyIG5ldyZxdW90OywgbW9ub3NwYWNlOyI+YGBgeG1sPC9kaXY+PGRpdiBjbGFzcz0iZ21haWxf ZGVmYXVsdCI+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBu ZXcsIG1vbm9zcGFjZSI+Jmx0O2xvZyByZWFsbT0iYmxhaCIgYXQ9IjIwMTgtMDktMDVUMjM6MDM6 NDAuMDUxIiBsaWZlc3Bhbj0iMW1zIiZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxf ZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZsdDt1 bnBhY2smZ3Q7PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQiPjxmb250IGZh Y2U9ImNvdXJpZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgMzEzMjMxMzBGMDMzODAw MThFQzVDMDIwMDAwMDAwMDQwMDAwMDAzNjMxMzYzNTMxMzQzNTM4MzUzMTMxMzYzOTM0MzczODM5 MzEzNTMwMzEzMjMwMzAzMDMwMzAzMDMwMzAzMDMwMzAzMDMwMzAzMzM2MzAzMDM3MzAzMDMwMzAz MDMwMzQzOTM5MzkzMTMzMzIzMDMxMzgzMDM4MzIzMzMxMzUzMDMzMzEzMjMyMzAzMTM4MzAzODMy MzMzMjMwMzEzODMwMzgzMjMzMzIzMDMxMzgzMDMxMzIzNjMwMzYzNjMzMzkzMTMzMzgzMTMxMzAz MDMwMzAzMDMwMzAzMDMwMzAzMDM0MzkzOTM5MzkzMDMwMzAzMDMwMzEzMzU1NEU0OTMwMzAzMDMx MzEzOTMwMzAzMDMwMzAzMDMwMzA1MDMxMzgzNDMzMzEzNDMwNTAzMTM4MzQzMzMxMzQzMDMwMzAz MDMwMzAzMDMwMzAzNTMwMzczMDRFNDc0RTQzMzAzMDMwMzAzMDMwMzAzMDMwMzAzMDMwMzAzMDMw MzAzMDMwMzAzMDMwMzAzMDMxNDQzMDMwMzAzMDMwMzAzMDMwMzAzMDMwMzAzMDMwMzAzMDRFNDc0 RTMxMzAzMjJCMzAzMDMwMzAzMDMwMzAzMDMwMzAzMDMwMzAzMDMwMzAyQjMwMzAzMDMwMzAzMDMw MzAzMDMwMzAzMDMwMzAzMDMwMkIzMDMwMzAzMDMwMzAzMDMwMzAzMDMwMzAzMDMwMzAzMDJCMzAz MDMwMzAzMDMwMzAzMDMwMzAzMDMwMzAzMDMwMzAyQjMwMzAzMDMwMzAzMDMwMzAzMDMwMzAzMDMw MzAzMDMwMjAyMDIwMjAyMDIwMjAyMDIwMjAyMDIwMjAyMDIwMjAyMDMwMzAzMzU1NTM0NDRFNDc0 RTMwMzEzNTMwMzAzMzM4MzkzMTM4MzczNjM1N0MzMDMyMzAzMDMxMzEzMTMyMzMzNDM1MzYzMTMy MzMzNDM1MzAzMzRENDE1MzQxNTQ0RDMwMzEzMjM0MzkzOTM5MzkzMDMwMzAzMDMwMzEzMzMwMzMz NjQ3MzQyRDQ2NkY3MjYxNjM2OTY0MjA2ODYxNzMyMDQ0NjU2MjY5NzQyMDRGNTIyMDU0NkY3NDYx NkMyMDQ2NzI2NTY1N0E2NTwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48 Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZsdDtiaXRt YXAmZ3Q7ezEsIDIsIDMsIDQsIDExLCAxMiwgMTUsIDE2LCAxNywgMzIsIDMzLCAzNywgMzgsIDM5 LCA0MSwgNDIsIDQ2LCA0OCwgNDksIDUwLCA1OSwgOTQsIDEyMywgMTI0LCAxMjYsIDEyN30mbHQ7 L2JpdG1hcCZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQg ZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbHQ7dW5wYWNrIGZs ZD0iMiIgcGFja2FnZXI9Im9yZy5qcG9zLmlzby5JRkFfTExOVU0iJmd0OzwvZm9udD48L2Rpdj48 ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3Nw YWNlIj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7dmFsdWUmZ3Q7NTE0NTg1MTE2OTQ3ODkxNSZs dDsvdmFsdWUmZ3Q7PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQiPjxmb250 IGZhY2U9ImNvdXJpZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgJmx0Oy91bnBhY2sm Z3Q7PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQiPjxmb250IGZhY2U9ImNv dXJpZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgJmx0O3VucGFjayBmbGQ9IjMiIHBh Y2thZ2VyPSJvcmcuanBvcy5pc28uSUZBX05VTUVSSUMiJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNs YXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4m bmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7dmFsdWUmZ3Q7MDEyMDAwJmx0Oy92YWx1ZSZndDs8L2Zv bnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBu ZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbHQ7L3VucGFjayZndDs8L2ZvbnQ+PC9kaXY+ PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9z cGFjZSI+Jm5ic3A7ICZuYnNwOyAmbHQ7dW5wYWNrIGZsZD0iNCIgcGFja2FnZXI9Im9yZy5qcG9z Lmlzby5JRkFfTlVNRVJJQyImZ3Q7PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1 bHQiPjxmb250IGZhY2U9ImNvdXJpZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgJm5i c3A7ICZsdDt2YWx1ZSZndDswMDAwMDAwMDAwMDM2MDA3Jmx0Oy92YWx1ZSZndDs8L2ZvbnQ+PC9k aXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1v bm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbHQ7L3VucGFjayZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBj bGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+ Jm5ic3A7ICZuYnNwOyAmbHQ7dW5wYWNrIGZsZD0iMTEiIHBhY2thZ2VyPSJvcmcuanBvcy5pc28u SUZBX05VTUVSSUMiJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48 Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAm bHQ7dmFsdWUmZ3Q7MDAwMDAwNDk5OTEzJmx0Oy92YWx1ZSZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBj bGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+ Jm5ic3A7ICZuYnNwOyAmbHQ7L3VucGFjayZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21h aWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZu YnNwOyAmbHQ7dW5wYWNrIGZsZD0iMTIiIHBhY2thZ2VyPSJvcmcuanBvcy5pc28uSUZBX05VTUVS SUMiJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNl PSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7dmFsdWUm Z3Q7MjAxODA4MjMxNTAzMTImbHQ7L3ZhbHVlJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJn bWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsg Jm5ic3A7ICZsdDsvdW5wYWNrJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZh dWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZs dDt1bnBhY2sgZmxkPSIxNSIgcGFja2FnZXI9Im9yZy5qcG9zLmlzby5JRkFfTlVNRVJJQyImZ3Q7 PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQiPjxmb250IGZhY2U9ImNvdXJp ZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDt2YWx1ZSZndDsyMDE4 MDgyMyZsdDsvdmFsdWUmZ3Q7PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQi Pjxmb250IGZhY2U9ImNvdXJpZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgJmx0Oy91 bnBhY2smZ3Q7PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQiPjxmb250IGZh Y2U9ImNvdXJpZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgJmx0O3VucGFjayBmbGQ9 IjE2IiBwYWNrYWdlcj0ib3JnLmpwb3MuaXNvLklGQV9OVU1FUklDIiZndDs8L2ZvbnQ+PC9kaXY+ PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9z cGFjZSI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O3ZhbHVlJmd0OzIwMTgwODIzJmx0Oy92YWx1 ZSZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0i Y291cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbHQ7L3VucGFjayZndDs8L2Zv bnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBu ZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbHQ7dW5wYWNrIGZsZD0iMTciIHBhY2thZ2Vy PSJvcmcuanBvcy5pc28uSUZBX05VTUVSSUMiJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJn bWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbHQ7dmFsdWUmZ3Q7MjAxODAxMjYmbHQ7L3ZhbHVlJmd0OzwvZm9udD48 L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywg bW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZsdDsvdW5wYWNrJmd0OzwvZm9udD48L2Rpdj48ZGl2 IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNl Ij4mbmJzcDsgJm5ic3A7ICZsdDt1bnBhY2sgZmxkPSIzMiIgcGFja2FnZXI9Im9yZy5qcG9zLmlz by5JRkFfTExOVU0iJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48 Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAm bHQ7dmFsdWUmZ3Q7NjM5MTM4Jmx0Oy92YWx1ZSZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0i Z21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7 ICZuYnNwOyAmbHQ7L3VucGFjayZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVm YXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAm bHQ7dW5wYWNrIGZsZD0iMzMiIHBhY2thZ2VyPSJvcmcuanBvcy5pc28uSUZBX0xMTlVNIiZndDs8 L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmll ciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O3ZhbHVlJmd0OzAwMDAw MDAwMDAwJmx0Oy92YWx1ZSZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVs dCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbHQ7 L3VucGFjayZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQg ZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbHQ7dW5wYWNrIGZs ZD0iMzciIHBhY2thZ2VyPSJvcmcuanBvcy5pc28uSUZBX05VTUVSSUMiJmd0OzwvZm9udD48L2Rp dj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9u b3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7dmFsdWUmZ3Q7NDk5OTkwMDAwMDEzJmx0 Oy92YWx1ZSZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQg ZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbHQ7L3VucGFjayZn dDs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291 cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbHQ7dW5wYWNrIGZsZD0iMzgiIHBh Y2thZ2VyPSJvcmcuanBvcy5pc28uSUZfQ0hBUiImZ3Q7PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9 ImdtYWlsX2RlZmF1bHQiPjxmb250IGZhY2U9ImNvdXJpZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNw OyAmbmJzcDsgJm5ic3A7ICZsdDt2YWx1ZSZndDtVTkkwMDAmbHQ7L3ZhbHVlJmd0OzwvZm9udD48 L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywg bW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZsdDsvdW5wYWNrJmd0OzwvZm9udD48L2Rpdj48ZGl2 IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNl Ij4mbmJzcDsgJm5ic3A7ICZsdDt1bnBhY2sgZmxkPSIzOSIgcGFja2FnZXI9Im9yZy5qcG9zLmlz by5JRkFfTlVNRVJJQyImZ3Q7PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQi Pjxmb250IGZhY2U9ImNvdXJpZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZsdDt2YWx1ZSZndDsxMTkmbHQ7L3ZhbHVlJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJn bWFpbF9kZWZhdWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsg Jm5ic3A7ICZsdDsvdW5wYWNrJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZh dWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZs dDt1bnBhY2sgZmxkPSI0MSIgcGFja2FnZXI9Im9yZy5qcG9zLmlzby5JRl9DSEFSIiZndDs8L2Zv bnQ+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBu ZXcsIG1vbm9zcGFjZSI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O3ZhbHVlJmd0OzAwMDAwMDAw UDE4NDMxNDAmbHQ7L3ZhbHVlJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZh dWx0Ij48Zm9udCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZs dDsvdW5wYWNrJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9u dCBmYWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZsdDt1bnBhY2sg ZmxkPSI0MiIgcGFja2FnZXI9Im9yZy5qcG9zLmlzby5JRl9DSEFSIiZndDs8L2ZvbnQ+PC9kaXY+ PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9z cGFjZSI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O3ZhbHVlJmd0O1AxODQzMTQwMDAwMDAwMCZs dDsvdmFsdWUmZ3Q7PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQiPjxmb250 IGZhY2U9ImNvdXJpZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgJmx0Oy91bnBhY2sm Z3Q7PC9mb250PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2RlZmF1bHQiPjxmb250IGZhY2U9ImNv dXJpZXIgbmV3LCBtb25vc3BhY2UiPiZuYnNwOyAmbmJzcDsgJmx0O3VucGFjayBmbGQ9IjQ2IiBw YWNrYWdlcj0ib3JnLmpwb3MuaXNvLklGQV9MTExDSEFSIiZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBj bGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+ Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O3ZhbHVlJmd0OzcwTkdOQzAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMUQwMDAwMDAwMDAwMDAwMDAwTkdOJmx0Oy92YWx1ZSZndDs8L2ZvbnQ+PC9kaXY+PGRp diBjbGFzcz0iZ21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFj ZSI+Jm5ic3A7ICZuYnNwOyAmbHQ7L3VucGFjayZndDs8L2ZvbnQ+PC9kaXY+PGRpdiBjbGFzcz0i Z21haWxfZGVmYXVsdCI+PGZvbnQgZmFjZT0iY291cmllciBuZXcsIG1vbm9zcGFjZSI+Jm5ic3A7 ICZuYnNwOyAmbHQ7dW5wYWNrIGZsZD0iNDgiIHBhY2thZ2VyPSJvcmcuanBvcy5pc28uSUZBX0xM TENIQVIiJmd0OzwvZm9udD48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9kZWZhdWx0Ij48Zm9udCBm YWNlPSJjb3VyaWVyIG5ldywgbW9ub3NwYWNlIj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7dmFs dWUmZ3Q7KzAwMDAwMDAwMDAwMDAwMDArMDAwMDAwMDAwMDAwMDAwMCswMDAwMDAwMDAwMDAwMDAw KzAwMDAwMDAwMDAwMDAwMDArMDAwMDAwMDAwMDAwMDAwMCZuYnNwOyAm
Reply all
Reply to author
Forward
0 new messages