A Picture's Worth a Thousand Words. - · PDF fileA Picture's Worth a Thousand Words....

44
A Picture's Worth a Thousand Words. Generating simple and elegant diagrams 1 / 44

Transcript of A Picture's Worth a Thousand Words. - · PDF fileA Picture's Worth a Thousand Words....

A Picture's Worth aThousand Words.

Generating simple and elegantdiagrams

1 / 44

About meProfessional.

15 years in the software industry.Currently working for Goodville Mutual (regional insurance carrier).10+ years of Java enterprise.RPGLE for 3 years.Software architect.

Open Source.

RPGParser -- ANTLR parser for the RPG language.CFLint -- linter/code analyzer for ColdFusion.

Personal.

Live in rural Vermont.Married with 4 children.Enjoy the outdoors and working with my hands.

2 / 44

Overview1. Introduction2. Graphviz3. Why Graphviz?4. Terminology5. Basic Syntax6. Prettying it up a bit7. Diagrams from SQL data8. Automated Diagrams with QDSPPGMREF9. SQL ER Diagrams

10. Wrap up

3 / 44

Emergent DocumentationFrom a discussion on Agile documentation:

How can meaningful documentation be produced for our systems?

Can diagrams be generated automatically?I want to avoid actually drawing them.

It's the information I don't know that I needto see the most.

Data/Table relationships.Program call relationships.

4 / 44

Graphviz"Graphviz is open source graph visualization software. Graphvisualization is a way of representing structural information asdiagrams of abstract graphs and networks."

Example:

digraph{ NEUG -> NHMUG; NEUG -> VTMUG; }

5 / 44

Why Graphviz?

1. It's free to use - Eclipse Public License

2. Plain text source

3. Human readable.

4. System generated.

5. You can't 'fix' the output - only the input.

6 / 44

Terminology

Graph

a diagram representing a system of connections or interrelations among twoor more things

Node/vertex

a point at which lines or pathways intersect or branch; a central or connectingpoint.

Edge

a set of two vertices, or an ordered pair of vertices (directed graph)

7 / 44

Basic SyntaxGraphviz specifies diagrams in the DOT language, a simple human readablespecification.

Undirected graph graph{ A -- B; A -- C; }

Directed graph digraph{ A -> B; A -> C; }

8 / 44

"Patchwork"

Other Layouts

"Neato"

9 / 44

Basic Syntax - Top level

Some graph level attributes digraph{ label="My Sample Graph"; rankdir="LR"; A -> B; A -> C; }

A few other useful ones

labelloc="t"; -- put label at topfontname = "arial";fontsize = 16;ordering="out"; -- order by the outs

10 / 44

Basic Syntax - Edges

Some graph edge attributes digraph{ rankdir="LR"; A -> B [label="AtoB"]; A -> C [arrowhead="crow"]; C-> D [color="red"]; }

11 / 44

Basic Syntax - Edges

Universal graph edge attributes digraph{ rankdir="LR"; edge [ color="blue"; dir="back"; arrowhead="odiamond"; ] A -> B ; A -> C ; C -> D ; }

12 / 44

Basic Syntax - Nodes

Some graph node attributes digraph{ A -> B; A -> C; C -> D; A [label="A Node";style=filled; fillcolor="ivory2"]; B [label="BNode"; shape="diamond"]; C [shape="record"; label="{C|CNode|{Lft|Rgt}}"] }

13 / 44

Basic Syntax - Nodes

Universal graph node attributes digraph{ node[ gradientangle=300 style="filled,rounded" fillcolor="#bebeef:#fefeff" shape="record" ] A -> B; A -> C; C -> D; B [label="BNode"; shape="diamond"]; }

14 / 44

A

B

C D

Prettying it up a bitUse a bit of 'boiler plate' code.

digraph{ rankdir="LR"; edge [ ] node[ gradientangle=300 style="filled,rounded" fillcolor="#bebeef:#fefeff" shape="record" ] // Put your edges here // Put your nodes and labels here. }

15 / 44

Syntax - Complex Nodes"Record" nodes can have internal sections.

digraph{ node[ style="rounded" shape="record" ] A [label="A | A-Node"]; B [label="{{B}|{B-Node}}"]; C [label="{{C}|{C-Node | etc}}"];}

A A­NodeB

B­Node

C

C­Node etc

16 / 44

Syntax - URLsThis is available in the svg, postscript, map outputs only.

URL can be specified on edges and nodes.

digraph{ node[ style="rounded" shape="record" ] NEUGC [label="NEUGC", URL="http://neugc.org/"];}

digraph{ node[ style="rounded" shape="record" ] Johnson -> Boston [label="Drive", URL="https://www.google.com/maps/dir/Johnson,+VT/Boston,+MA"];}

17 / 44

Graphviz OutputGraphviz is capable of producing a variety of outputs:

1. PNG2. JPG3. PDF4. SVG5. others..

SVG

SVG images and their behaviors are defined in XML text files.

Searchable.Scalable (zoomable).Interactive.Linkable.Scriptable (javascript).

18 / 44

    digraph{       node[         gradientangle=300         style="filled,rounded"         fillcolor="#bebeef:#fefeff"         shape="record"       ]       A ‐> B;       A ‐> C;       C ‐> D;       B [label="BNode";           shape="diamond"];     }     

Generating Structured DataThe DOT language is relatively easy to generate.

No proprietary binary data.Plain text.

Could you generate this from a program?

or, from the database?

19 / 44

Diagrams from SQL data

SQL

DB2 is excellent at handling structured data.

select from_node, to_node from node_table;

Recursive queries.

As of v6, DB2 supports recursive table expressions.

Hierarchial queries.

As of v7r1, it handles hierarchial data even better.

20 / 44

Diagrams from SQL dataLet's look at some hierarchial data

ID Name ParentId1 NEUGC 02 VTMUG 13 NHMUG 14 Skip Marchesani - President 25 Tom Bottiggi - VP 46 David Rouleau - Treasurer 47 Bob Ferris - Secretary 48 Paul Rogers - President 39 Doug Davie - VP 810 Joyce Pittman - Treasurer 8

21 / 44

Diagrams from SQL data` create table orgs ( id int, name varchar(50), parent int );

insert into orgs values (1,'NEUGC', 0); insert into orgs values (2,'VTMUG', 1); insert into orgs values (3,'NHMUG', 1); insert into orgs values (4,'Skip Marchesani - President', 2); insert into orgs values (5,'Tom Bottiggi - VP', 4); insert into orgs values (6,'David Rouleau - Treasurer', 4); insert into orgs values (7,'Bob Ferris - Secretary', 4); insert into orgs values (8,'Paul Rogers - President', 3); insert into orgs values (9,'Doug Davie - VP', 8); insert into orgs values (10,'Joyce Pittman - Treasurer', 8);

22 / 44

Hierarchial queriesreference

Select id, Name, parent From orgs Start with name = 'NEUGC' Connect By prior id = parent;

ID Name Parent1 NEUGC 02 VTMUG 13 NHMUG 14 Skip Marchesani - President 25 Tom Bottiggi - VP 46 David Rouleau - Treasurer 47 Bob Ferris - Secretary 48 Paul Rogers - President 39 Doug Davie - VP 810 Joyce Pittman - Treasurer 8

23 / 44

Hierarchial queriesSelect (Select Name From orgs a where a.id = orgs.parent) "parentName", parent, id, Name From orgs Start with name = 'NEUGC' Connect By prior id = parent;

ParentName Parent ID Name- 0 1 NEUGCNEUGC 1 3 NHMUGNHMUG 3 8 Paul Rogers - PresidentPaul Rogers - President 8 10 Joyce Pittman - TreasurerPaul Rogers - President 8 9 Doug Davie - VPNEUGC 1 2 VTMUG... ...

24 / 44

Diagrams from SQL Datawith nodes as (Select (Select Name From orgs a where a.id = orgs.parent) ParentName,parent, id, Name From orgs Start with name = 'NEUGC' Connect By prior id = parent) select '"' || ParentName || '" -> "' || name||'";' Diagram from nodeswhere parentname is not null;

Diagram"NEUGC" -> "NHMUG";"NHMUG" -> "Paul Rogers - President";"Paul Rogers - President" -> "Joyce Pittman - Treasurer";"Paul Rogers - President" -> "Doug Davie - VP";"NEUGC" -> "VTMUG";"VTMUG" -> "Skip Marchesani - President";"Skip Marchesani - President" -> "Bob Ferris - Secretary";

25 / 44

Diagrams from SQL DataFlatten the rows with XMLAGG(). See more.

with nodes as ( Select (Select Name From orgs a where a.id = orgs.parent) ParentName, parent, id, Name From orgs Start with name = 'NEUGC' Connect By prior id = parent ) select 'digraph{' || chr(10) || REPLACE( REPLACE( xmlserialize(xmlagg(xmltext( '"' || ParentName || '" -> "' || name||'";' || chr(10) )) as VARCHAR(1024)) ,'"','"') ,'>','>') || chr(10) || '}' as Diagram from nodes where parentname is not null;

26 / 44

Diagrams from SQL DataIn GraphViz

digraph { "NEUGC" -> "NHMUG"; "NHMUG" -> "Paul Rogers - President"; "Paul Rogers - President" -> "Joyce Pittman - Treasurer"; "Paul Rogers - President" -> "Doug Davie - VP"; "NEUGC" -> "VTMUG"; "VTMUG" -> "Skip Marchesani - President"; "Skip Marchesani - President" -> "Bob Ferris - Secretary"; "Skip Marchesani - President" -> "David Rouleau - Treasurer"; "Skip Marchesani - President" -> "Tom Bottiggi - VP"; }

27 / 44

Diagrams from SQL DataIn GraphViz

28 / 44

Automated Diagrams -Command lineGenerate your diagram images from a script.

Graphviz2.38\bin\dot.exe -Tsvg ${filename}.dot -o ${filename}.svg

Input - Text files with .dot extensionOutput - Use SVG.

29 / 44

Automated Diagrams

What tools do you already have access tothat describe relationships on the iseries?

30 / 44

Automated Diagrams

What tools do you already have access tothat describe relationships on the iseries?

Relationship between programs?

31 / 44

Automated Diagrams

What tools do you already have access tothat describe relationships on the iseries?

Relationship between programs?

 

Relationship between tables?

 

32 / 44

Automated Diagrams

What tools do you already have access tothat describe relationships on the iseries?

Relationship between programs?

DSPPGMREF

Relationship between tables?

DSPDBR / QSYS2.SYSVIEWDEPS

33 / 44

DSPPGMREFProgram cross reference. (Poor man's Hawkeye/PathFinder)

DSPPGMREF PGM(*ALL/*ALL) OUTPUT(*OUTFILE) OUTFILE(MYLIB/QDSPPGMREF)

With one command, you can dump all the known program relationships onthe system into a single SQL table that you can query.

This includes program calls, and tables that are accessed via nativeoperations.

34 / 44

DSPPGMREF

35 / 44

Demo:

Output QDSPPGMREF in graphviz

36 / 44

An example from the wild

IVR_LOAD   Diagram       Program call tree         

IVM_CTLR

Ctlr for Insurance Verification process (FIRSt)

IVR_LOAD

Load FIRST Data

PPLT708VNAMSTRPPPT708PPPT708PPPT785PPPT785PPPT708PPPT708NAMSTRPPPT707IVP_SJ01IVL_FP01IVL_SJ01IVP_NP01NAMSTRIVL_ALLIVP_VR01IVP_PR01IVL_LATEST

IVP...

IVP_FP01IVP_SJ01

IVR_FR01

Generate IVS FR01 Financial Institution Record

NAMSTRPPPT708PPPT708PPPT785PPPT785PPL902BANALT220BANAPT120NAPT120NAPT101NAPT101NAP105NAP105

IVL_FR01_PIVP_PR01

IVP_FR01

MSR306JAVA

Address components using jgeocoder

MSRSQLUTIL

IVR_NP01

Generate IVS NP01 Policy Header Record

IVL_NP01 IVP_NP01

IVR_VR01

Generate IVS VR01 Vehicle Record

IVL_VR01NAMSTRPPPT708PPPT708

IVP_VR01

THROWCATCH

IVR_PR01

Generate IVS PR01 Building or Item Record

IVL_PR01_AIVL_PR01_PPPP915

IVP_COVTYP

IVP_PR01

37 / 44

SQL Entity Relationshipdiagrams?

You can pull a lot of information about your data tables from DB2 itself.Maybe you have the entity relationships documented elsewhere. SYNON /CA 2E?

38 / 44

SYSCAT Diagramcreate view v_orgs as select * from orgs;

create or replace view vtmug_org as Select * From v_orgs Start with name = 'VTMUG' Connect By prior id = parent;

select view_name,object_name from qsys2.SYSVIEWDEP Start with VIEW_NAME= 'VTMUG_ORG' Connect By prior objecT_name = view_name;

39 / 44

VTMUG_ORG V_ORGS ORGS

SYSCAT Diagramselect view_name || '->' || object_name from qsys2.SYSVIEWDEPStart with VIEW_NAME= 'VTMUG_ORG' Connect By prior objecT_name = view_name;

Graphviz:

digraph{ rankdir="LR"; edge [ ] node[ gradientangle=300 style="filled,rounded" fillcolor="#bebeef:#fefeff" shape="record" ] VTMUG_ORG->V_ORGS V_ORGS->ORGS }

40 / 44

IVL_PR01_A

NAMSTR

PPPT708

PPL902BA

PPP904

ISOVIN

PPP902

A real world exampleIVL_PR01_A->NAMSTR IVL_PR01_A->PPPT708 IVL_PR01_A->PPL902BA PPL902BA->PPP902 PPL902BA->PPPT708 IVL_PR01_A->PPP904 IVL_PR01_A->ISOVIN

41 / 44

Another example from thewild

42 / 44

Another example from thewild

Claims  Sys tem TablesAs  of  2015­01­28                 

CLPT006Cl ai m

J6CLTP ­  Type of  cl ai m  ­  ( 1)J6CLM# ­  Cl ai m  nbr  ­  ( 6,0)

J6CLCD ­  Cl ai m  adj us t er  code ­  ( 3)J6SSEX ­  Subr o/ sal vage expect ed ­  ( 1)J6REAS ­  Ot her  r eason t o di ar y ­  ( 1)J6NREI  ­  Not i f y r ei nsur er  ­  ( 1)J6CLOP ­  Dat e cl ai m  opened ­  ( 6,0)J6CLCL ­  Dat e cl ai m  cl osed ­  ( 6,0)J6CATD ­  Cat as t r ophe dat e ­  ( 6,0)J6CATC ­  Cat as t r ophe code ­  ( 2,0)J6CATS ­  Cat as t r ophe s t at e ­  ( 2)J6CSLS ­  Cause of  l os s  ­  ( 2)J6LLOC ­  Locat i on of  l os s  ­  ( 18)J6LSDS ­  Descr i pt i on of  l os s  ­  ( 70)J6CLMS ­  Cl ai m  St at us  ­  ( 1)J6LSTM ­  Ti m e of  l os s  ­  ( 6,0)

CLPT002Addt l  descr i pt i on of  l os s

J9CLTP ­  Type of  cl ai m  ­  ( 1)J9CLM# ­  Cl ai m  nbr  ­  ( 6,0)

J9LSDS ­  Descr i pt i on of  l os s  ­  ( 70)J9BNSX ­  Sal vage expect ed ­  ( 1)

1: n

n: 1

CLPT003Agent  s t at us  r epor t

KACLTP ­  Type of  cl ai m  ­  ( 1)KACLM# ­  Cl ai m  nbr  ­  ( 6,0)

KALSTD ­  Las t  r epor t  dat e ­  ( 6,0)

1: n

n: 1

CLPT010Cl ai m  di ar y

KBCLTP ­  Type of  cl ai m  ­  ( 1)KBCLM# ­  Cl ai m  nbr  ­  ( 6,0)KBCLCD ­  Cl ai m  adj us t er  code ­  ( 3)

KBDIDT ­  Di ar y dat e ­  ( 6,0)

1: n

n: 1

CLPT029Ref er ence cl ai m  num ber

KCCLTP ­  Type of  cl ai m  ­  ( 1)KCCLM# ­  Cl ai m  nbr  ­  ( 6,0)

KCRFTP ­  Ref er ence Type of  cl ai m  ­  ( 1)KCRFCL ­  Ref er ence Cl ai m  nbr  ­  ( 6,0)

1: n

n: 1

CLPT017Cl ai m  pr or at a r ei n i nf o

KDCLTP ­  Type of  cl ai m  ­  ( 1)KDCLM# ­  Cl ai m  nbr  ­  ( 6,0)KDPRS# ­  Pr oper t y r i sk num ber  ­  ( 3,0)

KDRI SK ­  Tot al  r i sk am ount  ­  ( 7,0)KDRETE ­  Ret ent i on am ount  ­  ( 7,0)

1: n

n: 1

CLPT030Rei n r ecover y hi s t or y

KECLTP ­  Type of  cl ai m  ­  ( 1)KECLM# ­  Cl ai m  nbr  ­  ( 6,0)

KEBAMT ­  Am ount  bi l l ed ­  ( 9,2)KERVDT ­  Dat e r ecover ed ­  ( 6,0)KERCAM ­  Am ount  r ecover ed ­  ( 9,2)KEDTBP ­  Dat e bi l l  pr i nt ed ­  ( 6,0)

1: n

n: 1

CLPT035Subr ogee i nf or m at i on

KFCLTP ­  Type of  cl ai m  ­  ( 1)KFCLM# ­  Cl ai m  nbr  ­  ( 6,0)KFTN99 ­  For m  1099 s t at us  ­  ( 1)KFPP# ­  Payee/ payor  num ber  ­  ( 9,0)

KFBAMT ­  Am ount  bi l l ed ­  ( 9,2)KFRCAM ­  Am ount  r ecover ed ­  ( 9,2)

1: n

n: 1

CLPT016Cl ai m  pol i cy i nf or m at i on

KGCLTP ­  Type of  cl ai m  ­  ( 1)KGCLM# ­  Cl ai m  nbr  ­  ( 6,0)KGPLNO ­  Pol i cy Num ber  ­  ( 6)

KGF2CD ­  Nam s t r  pol i cy t ype ­  ( 2)KGBPCD ­  Pol i cy s t at e ­  ( 2)KGPLAG ­  Pol i cy agent  ­  ( 2)KGLSDT ­  Loss  dat e ­  ( 6,0)KGPLNM ­  Pol i cy nam e ­  ( 22)KGAXTX ­  I NSURED LAST NAME ALPHA C ­  ( 15)KGBQST ­  I NSURED FI RST I NI TI AL ­  ( 1)KGCADD ­  Al l ow cover age addi t i ons  ­  ( 1)KGPDCD ­  Pol i cy dat e code ­  ( 3,0)KGMYCD ­  Pol i cy t er r i t or y ­  ( 3)KGQYST ­  Repor t i ng bur eau ­  ( 4)

1: n

n: 1

CLPT021Cl ai m ant

KHCLTP ­  Type of  cl ai m  ­  ( 1)KHCLM# ­  Cl ai m  nbr  ­  ( 6,0)KHCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)

KHCLNM ­  Cl ai m ant  l as t  nam e ­  ( 35)KHCLFN ­  Cl ai m ant  f i r s t  nam e ­  ( 15)KHSTBL ­  Seat  bel t  ­  ( 1)KHINXC ­  I ndex car d pr i nt ed ­  ( 1)KHUNCV ­  Unused ext r a cover age ­  ( 5,0)KHDLTD ­  Del et ed ­  ( 1)KHFATL ­  Fat al i t y ­  ( 1)KHPLNO ­  Pol i cy Num ber  ­  ( 6)

1: n

n: 1

CLPT019Cl ai m  t r ansact i ons  i n DW

KPCLTP ­  Type of  cl ai m  ­  ( 1)KPCLM# ­  Cl ai m  nbr  ­  ( 6,0)

KPCLPC ­  Cl ai m  pr oces s  code ­  ( 1)

1: n

n: 1

CLPT031Rei n r epor t  com m ent s  exc

KVCLTP ­  Type of  cl ai m  ­  ( 1)KVCLM# ­  Cl ai m  nbr  ­  ( 6,0)KVRPL# ­  Repor t  l i ne num ber  ­  ( 3,0)

KVCMMT ­  Repor t  com m ent s  ­  ( 70)

1: n

n: 1

CLPT032Rei n r epor t  dat a exces s

KWRPTT ­  Type of  r epor t  ­  ( 1)KWCLTP ­  Type of  cl ai m  ­  ( 1)KWCLM# ­  Cl ai m  nbr  ­  ( 6,0)KWBLDT ­  Dat e bi l l ed ­  ( 6,0)

KWRETE ­  Ret ent i on am ount  ­  ( 7,0)KWRA92 ­  Tot al  r eser ve am ount  ­  ( 9,2)KWLA92 ­  Tot al  l os s  am ount  ­  ( 9,2)KWEX92 ­  Tot al  expense am ount  ­  ( 9,2)KWLMTO ­  Li m i t  per  occur r ence ­  ( 7,0)KWBAMT ­  Am ount  bi l l ed ­  ( 9,2)KWTCVG ­  Type of  cover age ­  ( 1)KWTRTE ­  Tr eat y ef f ect i ve dat e ­  ( 6,0)KWREST ­  Rei n r epor t  pr i nt ed ­  ( 1)

1: n

n: 1

CLPT012Cl ai m  i n sui t  pr i nt

KZCLTP ­  Type of  cl ai m  ­  ( 1)KZCLM# ­  Cl ai m  nbr  ­  ( 6,0)

KZCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)KZCLMN ­  Cl ai m ant  nam e ­  ( 41)KZCLCD ­  Cl ai m  adj us t er  code ­  ( 3)KZPLNO ­  Pol i cy Num ber  ­  ( 6)KZA9CD ­  Pol i cy t ype ­  ( 2)KZCLCV ­  Cl ai m  cover age nam e ­  ( 10)KZCOVX ­  Cover age ext ens i on ­  ( 3)KZI TEM ­  I t em  num ber  ­  ( 3,0)KZBPCD ­  Pol i cy s t at e ­  ( 2)KZPLAG ­  Pol i cy agent  ­  ( 2)KZLSDT ­  Loss  dat e ­  ( 6,0)

1: n

n: 1

CLPT045Cl ai m  r ei nsur ance r eser ve

LQCLTP ­  Type of  cl ai m  ­  ( 1)LQCLM# ­  Cl ai m  nbr  ­  ( 6,0)LQTCVG ­  Type of  cover age ­  ( 1)

LQRA92 ­  Tot al  r eser ve am ount  ­  ( 9,2)LQSPNB ­  Rei nsur ance r eser ve am t  ­  ( 9,2)

1: n

n: 1

CLPT048Cl ai m ant  s t at us  r epor t

DECLTP ­  Type of  cl ai m  ­  ( 1)DECLM# ­  Cl ai m  nbr  ­  ( 6,0)

DELSTD ­  Las t  r epor t  dat e ­  ( 6,0)

1: n

n: 1

CLPT011Cl ai m  di ar y pr i nt

KYCLTP ­  Type of  cl ai m  ­  ( 1)KYCLM# ­  Cl ai m  nbr  ­  ( 6,0)KYCLCD ­  Cl ai m  adj us t er  code ­  ( 3)

KYLSIN ­  Loss  i ncur r ed ­  ( 9,2)KYRSAM ­  Reser ve am ount  ­  ( 9,2)

1: n

n: 1

CLPT008Cl ai m  aut o i nf or m at i on

KJCLTP ­  Type of  cl ai m  ­  ( 1)KJCLM# ­  Cl ai m  nbr  ­  ( 6,0)KJPLNO ­  Pol i cy Num ber  ­  ( 6)

KJ I PTX ­  Vehi cl e year  ­  ( 4)KJVEH# ­  Vehi cl e num ber  at r  ­  ( 2)KJ I QTX ­  Vehi cl e m ake ­  ( 4)KJ I RTX ­  Vehi cl e m odel  ­  ( 2)KJSNUM ­  Ser i al  num ber  ­  ( 17)KJOPNM ­  Oper at or  nam e ­  ( 30)KJOPDT ­  Oper at or  bi r t hdat e ­  ( 6,0)KJACCS ­  Acci dent  s t at e ­  ( 2)KJCI TN ­  Pol i ce ci t at i on ­  ( 50)KJVDAM ­  I nsur ed vehi cl e dam age ­  ( 15)KJ I LI A ­  I nsur ed %  l i abi l i t y ­  ( 3)KJTI ER ­  Ti er  ­  ( 1)

1: n

n: 1

CLPT014Cl ai m  pol i cy cover age

KKCLTP ­  Type of  cl ai m  ­  ( 1)KKCLM# ­  Cl ai m  nbr  ­  ( 6,0)KKPLNO ­  Pol i cy Num ber  ­  ( 6)KKA9CD ­  Pol i cy t ype ­  ( 2)KKCLCV ­  Cl ai m  cover age nam e ­  ( 10)KKCOVX ­  Cover age ext ens i on ­  ( 3)KKI TEM ­  I t em  num ber  ­  ( 3,0)

KKLMTA ­  Li m i t  ( at r )  ­  ( 7,0)KKDEDA ­  Deduct i bl e ( at r )  ­  ( 5,0)KKCLSA ­  Cl as s  ( at r )  ­  ( 6)KKTCVG ­  Type of  cover age ­  ( 1)

1: n

n: 1

CLPT046St at i s t i cal  ­  Aut o

LRCLTP ­  Type of  cl ai m  ­  ( 1)LRCLM# ­  Cl ai m  nbr  ­  ( 6,0)LRPLNO ­  Pol i cy Num ber  ­  ( 6)

LRNJCD ­  Aut o no­ f aul t / FPB codes  ­  ( 4)LRR5ST ­  Aut o pr ef er r ed di scount  ­  ( 1)

1: n

n: 1

CLPT022Cl ai m ant  ext ens i on

KI CLTP ­  Type of  cl ai m  ­  ( 1)KI CLM# ­  Cl ai m  nbr  ­  ( 6,0)KI CMT# ­  Cl ai m ant  num ber  ­  ( 2,0)

KI BRDT ­  Bi r t hdat e ­  ( 6,0)KI OCUP ­  Occupat i on ­  ( 20)KI SEX ­  Sex ­  ( 1)KI LAGE ­  Age on l os s  dat e ­  ( 3,0)KIMCRS ­  MCRS num ber  ­  ( 7,0)

1: n

n: 1

CLPT025FPB subm i ss i on

KNCLTP ­  Type of  cl ai m  ­  ( 1)KNCLM# ­  Cl ai m  nbr  ­  ( 6,0)KNCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)KNFPB# ­  FPB subm i ss i on num ber  ­  ( 3,0)

KNTN99 ­  For m  1099 s t at us  ­  ( 1)KNPP# ­  Payee/ payor  num ber  ­  ( 9,0)KNBAMT ­  Am ount  bi l l ed ­  ( 9,2)KNSRVD ­  Dat e of  s er vi ce ­  ( 20)KNSBDT ­  Subm i t  dat e ­  ( 6,0)KNPRDT ­  MCRS pr oces s  dat e ­  ( 6,0)KNADAC ­  Addt l  act i on l i ne ­  ( 1)KNAC60 ­  Act i on 60 ­  ( 60)

1: n

n: 1

CLPT033Reser ve s t at us

KQCLTP ­  Type of  cl ai m  ­  ( 1)KQCLM# ­  Cl ai m  nbr  ­  ( 6,0)KQCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)KQCLCV ­  Cl ai m  cover age nam e ­  ( 10)KQI TEM ­  I t em  num ber  ­  ( 3,0)KQCOVX ­  Cover age ext ens i on ­  ( 3)

KQLMTA ­  Li m i t  ( at r )  ­  ( 7,0)KQDEDA ­  Deduct i bl e ( at r )  ­  ( 5,0)KQCLSA ­  Cl as s  ( at r )  ­  ( 6)KQRSST ­  Reser ve s t at us  ­  ( 6)KQRSAM ­  Reser ve am ount  ­  ( 9,2)KQDGRS ­  Di r ect  gr os s  pai d ­  ( 9,2)KQDGEX ­  Di r ect  gr os s  expense ­  ( 9,2)KQRODT ­  Dat e r eser ve opened ­  ( 6,0)KQRSCL ­  Dat e r eser ve cl osed ­  ( 6,0)KQXCOV ­  Ext r a cover age used ­  ( 5,0)KQLAPD ­  Li m i t  am ount  pai d ­  ( 9,2)KQRECV ­  Rei n r cover ed/ r cover abl e ­  ( 9,2)KQXTRT ­  Tr eat y t ype ­  ( 1)KQSUI T ­  I n sui t  ­  ( 1)KQTCVG ­  Type of  cover age ­  ( 1)

1: n

n: 1

CLPT013Cl ai m  i ndex car d

KTCLTP ­  Type of  cl ai m  ­  ( 1)KTCLM# ­  Cl ai m  nbr  ­  ( 6,0)KTCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)

KTCADR ­  Cl ai m ant  addr es s  ­  ( 41)KTSSNB ­  Soci al  s ecur i t y num ber  ­  ( 9,0)KTI NJT ­  I nj ur y t ype ­  ( 3)KTI NJY ­  Al l edged i nj ur i es  ­  ( 45)KTDRNM ­  Doct or  nam e ­  ( 40)KTDRAD ­  Doct or  addr es s  ­  ( 47)KTATNM ­  At t or ney nam e ­  ( 40)KTATAD ­  At t or ney addr es s  ­  ( 47)KTI NXC ­  I ndex car d pr i nt ed ­  ( 1)KTR0ST ­  I ndex dr af t  pr i nt ed ­  ( 1)KTCI TY ­  Ci t y ­  ( 25)KTZI P ­  Zi p code ­  ( 5)KTSTTE ­  St at e code ­  ( 2)KTLCDR ­  Locat i on descr i pt i on ­  ( 50)

1: n

n: 1

CLPT028Cl ai m ant  t or t  opt i on

NPCLTP ­  Type of  cl ai m  ­  ( 1)NPCLM# ­  Cl ai m  nbr  ­  ( 6,0)NPCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)

NPTORT ­  Tor t  t ype ­  ( 2)NPDMTX ­  Com pany nam e ­  ( 50)NPCLCD ­  Cl ai m  adj us t er  code ­  ( 3)NPTYST ­  Ser i ous  i nj ur y ­  ( 1)

1: n

n: 1

CLPT007Cl ai m  aut o di spl ay l i m i t

KLCLTP ­  Type of  cl ai m  ­  ( 1)KLCLM# ­  Cl ai m  nbr  ­  ( 6,0)KLPLNO ­  Pol i cy Num ber  ­  ( 6)KLA9CD ­  Pol i cy t ype ­  ( 2)KLCLCV ­  Cl ai m  cover age nam e ­  ( 10)KLCOVX ­  Cover age ext ens i on ­  ( 3)KLI TEM ­  I t em  num ber  ­  ( 3,0)

KLBMCD ­  Li m i t  or  Deduct i bl e ­  ( 10)KLLMTO ­  Li m i t  per  occur r ence ­  ( 7,0)

1: n

n: 1

CLPT015Cl ai m  pol i cy cover age ext

KMCLTP ­  Type of  cl ai m  ­  ( 1)KMCLM# ­  Cl ai m  nbr  ­  ( 6,0)KMPLNO ­  Pol i cy Num ber  ­  ( 6)KMA9CD ­  Pol i cy t ype ­  ( 2)KMCLCV ­  Cl ai m  cover age nam e ­  ( 10)KMCOVX ­  Cover age ext ens i on ­  ( 3)KMI TEM ­  I t em  num ber  ­  ( 3,0)

KMDS65 ­  Descr i pt i on 65 ­  ( 65)

1: n

n: 1

CLPT037St at i s t i cal  ­  Cr i m e cov

K3CLTP ­  Type of  cl ai m  ­  ( 1)K3CLM# ­  Cl ai m  nbr  ­  ( 6,0)K3PLNO ­  Pol i cy Num ber  ­  ( 6)K3A9CD ­  Pol i cy t ype ­  ( 2)K3CLCV ­  Cl ai m  cover age nam e ­  ( 10)K3COVX ­  Cover age ext ens i on ­  ( 3)K3I TEM ­  I t em  num ber  ­  ( 3,0)

K3CTY ­  Count y ­  ( 3)K3PRTD ­  Pr ot ect i ve devi ce ­  ( 1)K3CVC2 ­  Cover age code ( 2)  ­  ( 2)K3MOCC ­  MI I  occupancy ­  ( 2)K3MGRD ­  MI I  gr ade ­  ( 1)K3RSK# ­  Ri sk num ber  ­  ( 1)K3DDAM ­  Deduct i bl e am ount  code ­  ( 1)K3DDTP ­  Deduct i bl e t ype ­  ( 1)K3OINS ­  Ot her  i nsur ance code ­  ( 1)

1: n

n: 1

CLPT038St at i s t i cal  ­  Far m owner s

K4CLTP ­  Type of  cl ai m  ­  ( 1)K4CLM# ­  Cl ai m  nbr  ­  ( 6,0)K4PLNO ­  Pol i cy Num ber  ­  ( 6)K4A9CD ­  Pol i cy t ype ­  ( 2)K4CLCV ­  Cl ai m  cover age nam e ­  ( 10)K4COVX ­  Cover age ext ens i on ­  ( 3)K4I TEM ­  I t em  num ber  ­  ( 3,0)

K4CTY ­  Count y ­  ( 3)K4RSK# ­  Ri sk num ber  ­  ( 1)K4PROT ­  Pr ot ect i on code ­  ( 1)K4CSTR ­  Cons t r uct i on code ­  ( 1)K4OINS ­  Ot her  i nsur ance code ­  ( 1)K4RSTP ­  Ri sk t ype ­  ( 1)K4FORM ­  Pol i cy f or m  ­  ( 2)K4FOSU ­  Occupancy code ­  ( 1)K4MOCC ­  MI I  occupancy ­  ( 2)K4MGRD ­  MI I  gr ade ­  ( 1)K4DDAM ­  Deduct i bl e am ount  code ­  ( 1)K4DDTP ­  Deduct i bl e t ype ­  ( 1)

1: n

n: 1

CLPT039St at i s t i cal  ­  Fi r e cov

K5CLTP ­  Type of  cl ai m  ­  ( 1)K5CLM# ­  Cl ai m  nbr  ­  ( 6,0)K5PLNO ­  Pol i cy Num ber  ­  ( 6)K5A9CD ­  Pol i cy t ype ­  ( 2)K5CLCV ­  Cl ai m  cover age nam e ­  ( 10)K5COVX ­  Cover age ext ens i on ­  ( 3)K5I TEM ­  I t em  num ber  ­  ( 3,0)

K5CTY ­  Count y ­  ( 3)K5RSK# ­  Ri sk num ber  ­  ( 1)K5PROT ­  Pr ot ect i on code ­  ( 1)K5CSTR ­  Cons t r uct i on code ­  ( 1)K5OINS ­  Ot her  i nsur ance code ­  ( 1)K5DDAM ­  Deduct i bl e am ount  code ­  ( 1)K5DDTP ­  Deduct i bl e t ype ­  ( 1)K5CVC1 ­  Cover age code ( 1)  ­  ( 1)K5FORM ­  Pol i cy f or m  ­  ( 2)K5MOCC ­  MI I  occupancy ­  ( 2)K5MGRD ­  MI I  gr ade ­  ( 1)K5OCSU ­  Occupancy/ s i ze/ use ­  ( 2)

1: n

n: 1

CLPT040St at i s t i cal  ­  GL cov

K6CLTP ­  Type of  cl ai m  ­  ( 1)K6CLM# ­  Cl ai m  nbr  ­  ( 6,0)K6PLNO ­  Pol i cy Num ber  ­  ( 6)K6A9CD ­  Pol i cy t ype ­  ( 2)K6CLCV ­  Cl ai m  cover age nam e ­  ( 10)K6COVX ­  Cover age ext ens i on ­  ( 3)K6I TEM ­  I t em  num ber  ­  ( 3,0)

K6CTY ­  Count y ­  ( 3)K6SCTY ­  Sub­ count y ­  ( 1)K6ALMC ­  Annual  agg l i m i t  code ­  ( 2)

1: n

n: 1

CLPT041St at i s t i cal  ­  Gl as s  cov

K7CLTP ­  Type of  cl ai m  ­  ( 1)K7CLM# ­  Cl ai m  nbr  ­  ( 6,0)K7PLNO ­  Pol i cy Num ber  ­  ( 6)K7A9CD ­  Pol i cy t ype ­  ( 2)K7CLCV ­  Cl ai m  cover age nam e ­  ( 10)K7COVX ­  Cover age ext ens i on ­  ( 3)K7I TEM ­  I t em  num ber  ­  ( 3,0)

K7CTY ­  Count y ­  ( 3)K7RSK# ­  Ri sk num ber  ­  ( 1)K7GSSB ­  Gl as s  subl i ne ­  ( 2)K7OINS ­  Ot her  i nsur ance code ­  ( 1)K7MOCC ­  MI I  occupancy ­  ( 2)K7MGRD ­  MI I  gr ade ­  ( 1)K7DDAM ­  Deduct i bl e am ount  code ­  ( 1)K7DDTP ­  Deduct i bl e t ype ­  ( 1)

1: n

n: 1

CLPT042St at i s t i cal  ­  Hom eowner

K8CLTP ­  Type of  cl ai m  ­  ( 1)K8CLM# ­  Cl ai m  nbr  ­  ( 6,0)K8PLNO ­  Pol i cy Num ber  ­  ( 6)K8A9CD ­  Pol i cy t ype ­  ( 2)K8CLCV ­  Cl ai m  cover age nam e ­  ( 10)K8COVX ­  Cover age ext ens i on ­  ( 3)K8I TEM ­  I t em  num ber  ­  ( 3,0)

K8CTY ­  Count y ­  ( 3)K8SCTY ­  Sub­ count y ­  ( 1)K8PROT ­  Pr ot ect i on code ­  ( 1)K8CSTR ­  Cons t r uct i on code ­  ( 1)K8CONY ­  Cons t r uct i on/ m anuf ac year  ­  ( 2)K8DDAM ­  Deduct i bl e am ount  code ­  ( 1)K8DDTP ­  Deduct i bl e t ype ­  ( 1)K8FORM ­  Pol i cy f or m  ­  ( 2)K8ZI P ­  Zi p code ­  ( 5)K8FOSU ­  Occupancy code ­  ( 1)

1: n

n: 1

CLPT043St at i s t i cal  ­  IM  cov

K9CLTP ­  Type of  cl ai m  ­  ( 1)K9CLM# ­  Cl ai m  nbr  ­  ( 6,0)K9PLNO ­  Pol i cy Num ber  ­  ( 6)K9A9CD ­  Pol i cy t ype ­  ( 2)K9CLCV ­  Cl ai m  cover age nam e ­  ( 10)K9COVX ­  Cover age ext ens i on ­  ( 3)K9I TEM ­  I t em  num ber  ­  ( 3,0)

K9CTY ­  Count y ­  ( 3)K9RSK# ­  Ri sk num ber  ­  ( 1)K9OINS ­  Ot her  i nsur ance code ­  ( 1)K9DDAM ­  Deduct i bl e am ount  code ­  ( 1)K9DDTP ­  Deduct i bl e t ype ­  ( 1)K9MOCC ­  MI I  occupancy ­  ( 2)K9MGRD ­  MI I  gr ade ­  ( 1)

1: n

n: 1

CLPT044St at i s t i cal  ­  Mobi l e hom e

LACLTP ­  Type of  cl ai m  ­  ( 1)LACLM# ­  Cl ai m  nbr  ­  ( 6,0)LAPLNO ­  Pol i cy Num ber  ­  ( 6)LAA9CD ­  Pol i cy t ype ­  ( 2)LACLCV ­  Cl ai m  cover age nam e ­  ( 10)LACOVX ­  Cover age ext ens i on ­  ( 3)LAI TEM ­  I t em  num ber  ­  ( 3,0)

LACTY ­  Count y ­  ( 3)LASCTY ­  Sub­ count y ­  ( 1)LAPROT ­  Pr ot ect i on code ­  ( 1)LATI EC ­  Ti edown code ­  ( 1)LACONY ­  Cons t r uct i on/ m anuf ac year  ­  ( 2)LADDAM ­  Deduct i bl e am ount  code ­  ( 1)LADDTP ­  Deduct i bl e t ype ­  ( 1)LAFORM ­  Pol i cy f or m  ­  ( 2)LAFOSU ­  Occupancy code ­  ( 1)

1: n

n: 1

CLPT026FPB subm  addt l  act i on

KOCLTP ­  Type of  cl ai m  ­  ( 1)KOCLM# ­  Cl ai m  nbr  ­  ( 6,0)KOCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)KOFPB# ­  FPB subm i ss i on num ber  ­  ( 3,0)KOACT# ­  Act i on l i ne num ber  ­  ( 3,0)

KOAC60 ­  Act i on 60 ­  ( 60)

1: n

n: 1

CLPT034Reser ve t r ansact i on

KRCLTP ­  Type of  cl ai m  ­  ( 1)KRCLM# ­  Cl ai m  nbr  ­  ( 6,0)KRCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)KRCLCV ­  Cl ai m  cover age nam e ­  ( 10)KRCOVX ­  Cover age ext ens i on ­  ( 3)KRI TEM ­  I t em  num ber  ­  ( 3,0)KRRSV# ­  Reser ve t r ansact i on nbr  ­  ( 3,0)

KRCHGA ­  Am ount  of  change ­  ( 7,0)KRTDTE ­  Tr ansact i on dat e ­  ( 6,0)KRRSVT ­  Reser ve t r ansact i on t ype ­  ( 2)

1: n

n: 1

CLPT004Cash t r ansact i on

KSCLTP ­  Type of  cl ai m  ­  ( 1)KSCLM# ­  Cl ai m  nbr  ­  ( 6,0)KSCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)KSCLCV ­  Cl ai m  cover age nam e ­  ( 10)KSCOVX ­  Cover age ext ens i on ­  ( 3)KSI TEM ­  I t em  num ber  ­  ( 3,0)KSCSH# ­  Cash t r ansact i on num ber  ­  ( 3,0)

KSTRTP ­  Type of  t r ansact i on ­  ( 1)KSCHK# ­  Check num ber  ­  ( 6)KSTDTE ­  Tr ansact i on dat e ­  ( 6,0)KSTRNA ­  Tr ansact i on am ount  ­  ( 9,2)KSACCT ­  Account  ­  ( 2)KSCRTR ­  Ref  t r ans  t ype ( cash/ r es )  ­  ( 1)KSTRN# ­  Ref  t r ansact i on seq nbr  ­  ( 3,0)KSGCCD ­  Ledger  code ( cl ai m s )  ­  ( 4)

1: n

n: 1

CLPT020Cl ai m  wor ksheet  pr i nt

K0CLTP ­  Type of  cl ai m  ­  ( 1)K0CLM# ­  Cl ai m  nbr  ­  ( 6,0)K0CMT# ­  Cl ai m ant  num ber  ­  ( 2,0)K0CLCV ­  Cl ai m  cover age nam e ­  ( 10)K0COVX ­  Cover age ext ens i on ­  ( 3)K0I TEM ­  I t em  num ber  ­  ( 3,0)K0CRTR ­  Ref  t r ans  t ype ( cash/ r es )  ­  ( 1)K0SQ## ­  Sequence ­  ( 3,0)K0DTTR ­  Dat e of  t r ansact i on ­  ( 6,0)

K0TRNA ­  Tr ansact i on am ount  ­  ( 9,2)K0TRDS ­  Tr ansact i on descr i pt i on ­  ( 14)K0TN99 ­  For m  1099 s t at us  ­  ( 1)K0PP# ­  Payee/ payor  num ber  ­  ( 9,0)K0SRVD ­  Dat e of  s er vi ce ­  ( 20)

1: n

n: 1

CLPT023Fat al i t i es  pr i nt

K1CLTP ­  Type of  cl ai m  ­  ( 1)K1CLM# ­  Cl ai m  nbr  ­  ( 6,0)K1CMT# ­  Cl ai m ant  num ber  ­  ( 2,0)K1CLCV ­  Cl ai m  cover age nam e ­  ( 10)K1COVX ­  Cover age ext ens i on ­  ( 3)K1I TEM ­  I t em  num ber  ­  ( 3,0)

K1CLCD ­  Cl ai m  adj us t er  code ­  ( 3)K1PLNM ­  Pol i cy nam e ­  ( 22)K1BPCD ­  Pol i cy s t at e ­  ( 2)K1PLAG ­  Pol i cy agent  ­  ( 2)K1LSDT ­  Loss  dat e ­  ( 6,0)K1CLMN ­  Cl ai m ant  nam e ­  ( 41)

1: n

n: 1

CLPT036Tr ansact i on audi t  pr i nt

K2ACCT ­  Account  ­  ( 2)K2CLTP ­  Type of  cl ai m  ­  ( 1)K2CLM# ­  Cl ai m  nbr  ­  ( 6,0)K2CMT# ­  Cl ai m ant  num ber  ­  ( 2,0)K2CLCV ­  Cl ai m  cover age nam e ­  ( 10)K2COVX ­  Cover age ext ens i on ­  ( 3)K2I TEM ­  I t em  num ber  ­  ( 3,0)K2CRTR ­  Ref  t r ans  t ype ( cash/ r es )  ­  ( 1)K2SQNO ­  Sequence num ber  ­  ( 5,0)

K2CLCD ­  Cl ai m  adj us t er  code ­  ( 3)K2PLNO ­  Pol i cy Num ber  ­  ( 6)K2A9CD ­  Pol i cy t ype ­  ( 2)K2SFNB ­  I t em  num ber  15440 ­  ( 3,0)K2BPCD ­  Pol i cy s t at e ­  ( 2)K2PLAG ­  Pol i cy agent  ­  ( 2)K2TRTP ­  Type of  t r ansact i on ­  ( 1)K2CHK# ­  Check num ber  ­  ( 6)K2LSDT ­  Loss  dat e ­  ( 6,0)K2TRNA ­  Tr ansact i on am ount  ­  ( 9,2)K2RSAM ­  Reser ve am ount  ­  ( 9,2)K2PPNM ­  Payee/ payor  nam e ­  ( 45)K2PLNM ­  Pol i cy nam e ­  ( 22)

1: n

n: 1

CLPT076Cl ai m  t r ansact i on hi s t or y

APCLTP ­  Type of  cl ai m  ­  ( 1)APCLM# ­  Cl ai m  nbr  ­  ( 6,0)APCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)APCLCV ­  Cl ai m  cover age nam e ­  ( 10)APCOVX ­  Cover age ext ens i on ­  ( 3)API TEM ­  I t em  num ber  ­  ( 3,0)APCSH# ­  Cash t r ansact i on num ber  ­  ( 3,0)APTRTP ­  Type of  t r ansact i on ­  ( 1)APCHK# ­  Check num ber  ­  ( 6)

APTDTE ­  Tr ansact i on dat e ­  ( 6,0)APTRNA ­  Tr ansact i on am ount  ­  ( 9,2)APACCT ­  Account  ­  ( 2)APRSVT ­  Reser ve t r ansact i on t ype ­  ( 2)APPPNM ­  Payee/ payor  nam e ­  ( 45)

1: n

n: 1

CLPT024FPB cash t r ansact i on

KUCLTP ­  Type of  cl ai m  ­  ( 1)KUCLM# ­  Cl ai m  nbr  ­  ( 6,0)KUCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)KUCLCV ­  Cl ai m  cover age nam e ­  ( 10)KUCOVX ­  Cover age ext ens i on ­  ( 3)KUI TEM ­  I t em  num ber  ­  ( 3,0)KUCSH# ­  Cash t r ansact i on num ber  ­  ( 3,0)KUFPB# ­  FPB subm i ss i on num ber  ­  ( 3,0)

1: n

n: 1

CLPT009Cl ai m  check pr i nt

KXCLTP ­  Type of  cl ai m  ­  ( 1)KXCLM# ­  Cl ai m  nbr  ­  ( 6,0)KXCMT# ­  Cl ai m ant  num ber  ­  ( 2,0)KXCLCV ­  Cl ai m  cover age nam e ­  ( 10)KXCOVX ­  Cover age ext ens i on ­  ( 3)KXI TEM ­  I t em  num ber  ­  ( 3,0)KXCSH# ­  Cash t r ansact i on num ber  ­  ( 3,0)

KXTRTP ­  Type of  t r ansact i on ­  ( 1)KXCHK# ­  Check num ber  ­  ( 6)KXACCT ­  Account  ­  ( 2)KXPLNO ­  Pol i cy Num ber  ­  ( 6)KXCLCD ­  Cl ai m  adj us t er  code ­  ( 3)KXPLNM ­  Pol i cy nam e ­  ( 22)KXF2CD ­  Nam s t r  pol i cy t ype ­  ( 2)KXBPCD ­  Pol i cy s t at e ­  ( 2)KXPLAG ­  Pol i cy agent  ­  ( 2)KXENNB ­  Check dat e ­  ( 6,0)KXCLMN ­  Cl ai m ant  nam e ­  ( 41)KXPYDS ­  Paym ent  descr i pt i on ­  ( 17)KXLSDT ­  Loss  dat e ­  ( 6,0)KXCKCV ­  Check cover age desc ­  ( 41)KXGCCD ­  Ledger  code ( cl ai m s )  ­  ( 4)KXTRNA ­  Tr ansact i on am ount  ­  ( 9,2)KXPPNM ­  Payee/ payor  nam e ­  ( 45)KXCKN1 ­  Check not e 1 ­  ( 45)KXCKN2 ­  Check not e 2 ­  ( 45)KXCKN3 ­  Check not e 3 ­  ( 45)KXPPA1 ­  Payee/ payor  addr es s  1 ­  ( 45)KXPPA2 ­  Payee/ payor  addr es s  2 ­  ( 45)KXPDCD ­  Pol i cy dat e code ­  ( 3,0)KXADDR ­  Addr es s  ­  ( 45)KXB0TX ­  Payee addr es s  l i ne 1 ­  ( 45)

1: n

n: 1

43 / 44

Questions?

44 / 44