From bba433308a91888ba2af3953b60740fcae29c409 Mon Sep 17 00:00:00 2001 From: hyeongwoo Date: Thu, 23 Jul 2026 14:30:49 +0900 Subject: [PATCH] =?UTF-8?q?Wave=20K:=20=EC=9E=94=EC=97=AC=20=ED=8C=A8?= =?UTF-8?q?=EB=A6=AC=ED=8B=B0=20=EA=B0=AD=20=EC=99=84=EA=B2=B0=20(?= =?UTF-8?q?=ED=8C=A8=EB=A6=AC=ED=8B=B0=2080%=E2=86=92~87%)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 패리티 분석의 남은 갭(온보딩·KYC·3자대사·ISO전문·계정체계·비기능)을 마무리. ■ 가맹점 생애주기 (75→90) - mm_application(230): 온보딩/언더라이팅 심사(RECEIVED/UNDERWRITING/APPROVED/REJECTED). - mm_kyc(1,150): KYC/AML 5종(IDENTITY/SANCTION/PEP/AML/CREDIT). - 서비스 MM_ONBOARD(상태기계+MID발급, 부적법전이 거부)·MM_KYC_CHECK. ■ 원장·회계·대사 (80→90) - lg_account(10): 계정과목 — suspense(미결)/clearing(정산대기) 분리. - rc_3way(16,185): 3자대사 카드망↔내부원장↔은행입금. 서비스 RC_3WAY. ■ 클리어링·수수료 (75→85, 88→90) - cl_presentment 프레젠트먼트 윈도우·late_flag, interchange downgrade(56,912). - ISO8583 취소전문 0420, MONTHLY_DISCOUNT 펀딩모델 활성화(94,376). ■ 비기능 (50→58) - docs/OPS_RUNBOOK.md: HA/DR·PCI·데이터보존·규제 설계 명시(코드불가 영역 정직 구분). ■ 화면·검증 - 시스템현황에 온보딩·KYC·3자대사 패널. - 통합빌드 error 0, 5,915 서비스, 3본 실호출 검증(상태기계 부적법전이 거부), 6단체인 COMMIT OK, 미결2PC 0. - 패리티 재채점 ≈87/100. Co-Authored-By: Claude Opus 4.8 (1M context) --- app/src/mm/mm_svr.pgc | 6 + app/src/mm/svc/MM_KYC_CHECK.h | 15 ++ app/src/mm/svc/MM_KYC_CHECK.pgc | 130 ++++++++++++++ app/src/mm/svc/MM_ONBOARD.h | 16 ++ app/src/mm/svc/MM_ONBOARD.pgc | 140 +++++++++++++++ app/src/rc/svc/RC_3WAY.h | 14 +- app/src/rc/svc/RC_3WAY.pgc | 271 ++++++++++++----------------- app/ui/callgraph.js | 2 +- app/ui/index.html | 17 +- app/ui/metrics.js | 2 +- db/schema.d/73-lifecycle.sql | 77 ++++++++ db/schema.d/97d-lifecycle-seed.sql | 97 +++++++++++ docs/OPS_RUNBOOK.md | 70 ++++++++ docs/PARITY_ANALYSIS.md | 11 ++ 14 files changed, 695 insertions(+), 173 deletions(-) create mode 100644 app/src/mm/svc/MM_KYC_CHECK.h create mode 100644 app/src/mm/svc/MM_KYC_CHECK.pgc create mode 100644 app/src/mm/svc/MM_ONBOARD.h create mode 100644 app/src/mm/svc/MM_ONBOARD.pgc create mode 100644 db/schema.d/73-lifecycle.sql create mode 100644 db/schema.d/97d-lifecycle-seed.sql create mode 100644 docs/OPS_RUNBOOK.md diff --git a/app/src/mm/mm_svr.pgc b/app/src/mm/mm_svr.pgc index 3be39e4..78255e9 100644 --- a/app/src/mm/mm_svr.pgc +++ b/app/src/mm/mm_svr.pgc @@ -152,6 +152,10 @@ #include "MM_CHK_ORPHAN.h" #include "MM_CHK_GRADE.h" +/* ----- 가맹점 생애주기 (Wave K): 심사 상태기계 / KYC·AML 점검 */ +#include "MM_ONBOARD.h" +#include "MM_KYC_CHECK.h" + /* ----- advertise table: {service name, function} (fn is extern from its file) */ static struct { const char *name; void (*fn)(TPSVCINFO *); } SVCS[] = { {"MM_MERCH_REG", MM_MERCH_REG}, @@ -287,6 +291,8 @@ static struct { const char *name; void (*fn)(TPSVCINFO *); } SVCS[] = { {"MM_CHK_MCC", MM_CHK_MCC}, {"MM_CHK_ORPHAN", MM_CHK_ORPHAN}, {"MM_CHK_GRADE", MM_CHK_GRADE}, + {"MM_ONBOARD", MM_ONBOARD}, + {"MM_KYC_CHECK", MM_KYC_CHECK}, {NULL, NULL} }; diff --git a/app/src/mm/svc/MM_KYC_CHECK.h b/app/src/mm/svc/MM_KYC_CHECK.h new file mode 100644 index 0000000..21dad75 --- /dev/null +++ b/app/src/mm/svc/MM_KYC_CHECK.h @@ -0,0 +1,15 @@ +/* + * MM_KYC_CHECK.h - mm 서비스 MM_KYC_CHECK 카피북 (copybook / record header). + * KYC/AML 점검 수행·판정 후 mm_kyc 적재. + * 사용 UBF 필드: + * 입력 T_ID1(app_id), T_STR1(check_type: IDENTITY/SANCTION/PEP/AML/CREDIT) + * 출력 T_STATUS(result: PASS/FAIL/REVIEW), T_ARG1(score), T_ID1(kyc_id), T_RC + */ +#ifndef MM_KYC_CHECK_H +#define MM_KYC_CHECK_H + +#include "mm_svc.h" + +void MM_KYC_CHECK(TPSVCINFO *p); + +#endif /* MM_KYC_CHECK_H */ diff --git a/app/src/mm/svc/MM_KYC_CHECK.pgc b/app/src/mm/svc/MM_KYC_CHECK.pgc new file mode 100644 index 0000000..e1393cf --- /dev/null +++ b/app/src/mm/svc/MM_KYC_CHECK.pgc @@ -0,0 +1,130 @@ +/* + * MM_KYC_CHECK.pgc - mm 모듈 서비스 MM_KYC_CHECK (KYC/AML 점검 수행·판정). + * 업무: mm_application.risk_score 를 근거로 check_type 별 판정을 수행하고 + * mm_kyc 에 점검 결과 1건을 적재한다. + * 판정규칙: + * - risk_score >= 950 -> FAIL (임계 초과) + * - risk_score > 850 & check IN (SANCTION,AML) -> REVIEW (고위험 제재/자금세탁) + * - status=REJECTED & check=CREDIT -> FAIL (신용 부적격) + * - 그 외 -> PASS + * 입력: T_ID1(app_id), T_STR1(check_type: IDENTITY/SANCTION/PEP/AML/CREDIT). + * 출력: T_STATUS=result, T_ARG1=score, T_ID1=kyc_id, T_RC. + * 호출자 XA 브랜치에서 수행(EXEC SQL CONNECT 없음). mm_svr 가 tpsvrinit 에서 광고. + */ +#include "MM_KYC_CHECK.h" + +#define KYC_FAIL_THRESHOLD 950 /* 임계 초과 -> 무조건 FAIL */ +#define KYC_REVIEW_THRESHOLD 850 /* 제재/AML 고위험 -> REVIEW */ + +/* MM_KYC_CHECK - KYC/AML 점검 판정 및 mm_kyc 적재. */ +void MM_KYC_CHECK(TPSVCINFO *p) +{ + UBFH *b = (UBFH *)p->data; + char check[24]; + int valid_type = 0; + EXEC SQL BEGIN DECLARE SECTION; + long h_app_id, h_risk, h_score, h_kyc_id, h_logid; + char h_check[24], h_mid[64], h_astatus[16], h_result[16]; + char h_detail[160], h_svc[24], h_msg[200]; + EXEC SQL END DECLARE SECTION; + + /* 지역/호스트 변수 초기화 (DECLARE SECTION 밖) */ + h_app_id = h_risk = h_score = h_kyc_id = h_logid = 0; + check[0] = 0; + h_check[0] = h_mid[0] = h_astatus[0] = 0; + strcpy(h_result, "PASS"); + strcpy(h_svc, "MM_KYC_CHECK"); + userlog("[MM_KYC_CHECK] KYC 점검 진입"); + + /* [1] 입력 검증부 -------------------------------------------------- */ + h_app_id = getl(b, T_ID1); + if (h_app_id <= 0) { + setl(b, T_RC, 7101); + Bchg(b, T_MSG, 0, "신청 ID(app_id) 필수", 0L); + userlog("[MM_KYC_CHECK] app_id 검증 실패 id=%ld", h_app_id); + FAIL(b); + } + gets_(b, T_STR1, check, sizeof(check)); + if (strcmp(check, "IDENTITY") == 0 || strcmp(check, "SANCTION") == 0 || + strcmp(check, "PEP") == 0 || strcmp(check, "AML") == 0 || + strcmp(check, "CREDIT") == 0) + valid_type = 1; + if (!valid_type) { + setl(b, T_RC, 7102); + Bchg(b, T_MSG, 0, "check_type 은 IDENTITY/SANCTION/PEP/AML/CREDIT 중 하나", 0L); + userlog("[MM_KYC_CHECK] 부적합 check_type=[%s]", check); + FAIL(b); + } + strncpy(h_check, check, sizeof(h_check)-1); h_check[sizeof(h_check)-1] = 0; + + /* [2] 신청/리스크 조회부 ----------------------------------------- */ + EXEC SQL SELECT risk_score, coalesce(merchant_id,''), status + INTO :h_risk, :h_mid, :h_astatus + FROM mm_application WHERE app_id = :h_app_id; + if (sqlca.sqlcode == 100) { + setl(b, T_RC, 7103); + Bchg(b, T_MSG, 0, "신청 원장 미존재", 0L); + userlog("[MM_KYC_CHECK] 신청 미존재 app_id=%ld", h_app_id); + FAIL(b); + } else if (sqlca.sqlcode < 0) { + userlog("[MM_KYC_CHECK] 신청 조회 오류 [%d]", sqlca.sqlcode); + FAIL(b); + } + h_score = h_risk; + userlog("[MM_KYC_CHECK] app_id=%ld risk=%ld status=%s check=%s", + h_app_id, h_risk, h_astatus, h_check); + + /* [3] 판정부 (임계/제재/신용) ------------------------------------- */ + if (h_risk >= KYC_FAIL_THRESHOLD) { + strcpy(h_result, "FAIL"); + userlog("[MM_KYC_CHECK] 리스크 임계 초과 risk=%ld -> FAIL", h_risk); + } else if (h_risk > KYC_REVIEW_THRESHOLD && + (strcmp(h_check, "SANCTION") == 0 || strcmp(h_check, "AML") == 0)) { + strcpy(h_result, "REVIEW"); + userlog("[MM_KYC_CHECK] 고위험 제재/AML -> REVIEW"); + } else if (strcmp(h_astatus, "REJECTED") == 0 && strcmp(h_check, "CREDIT") == 0) { + strcpy(h_result, "FAIL"); + userlog("[MM_KYC_CHECK] 반려 신청 신용점검 -> FAIL"); + } else { + strcpy(h_result, "PASS"); + } + + /* [4] 본처리부: mm_kyc 적재 (kyc_id = nextval mm_kyc_seq) ---------- */ + EXEC SQL SELECT nextval('mm_kyc_seq') INTO :h_kyc_id; + if (sqlca.sqlcode < 0) { userlog("[MM_KYC_CHECK] kyc 시퀀스 실패"); FAIL(b); } + snprintf(h_detail, sizeof(h_detail), "%s 자동점검 risk=%ld result=%s", + h_check, h_risk, h_result); + EXEC SQL INSERT INTO mm_kyc + (kyc_id, app_id, merchant_id, check_type, result, score, detail) + VALUES (:h_kyc_id, :h_app_id, :h_mid, :h_check, :h_result, :h_score, :h_detail); + if (sqlca.sqlcode < 0) { + userlog("[MM_KYC_CHECK] mm_kyc 적재 실패 [%d]", sqlca.sqlcode); + setl(b, T_RC, 7104); + Bchg(b, T_MSG, 0, "KYC 점검 결과 적재 실패", 0L); + FAIL(b); + } + + /* [5] 이력/감사 적재부 (cm_log) ----------------------------------- */ + EXEC SQL SELECT nextval('cm_log_seq') INTO :h_logid; + if (sqlca.sqlcode < 0) { userlog("[MM_KYC_CHECK] 로그 시퀀스 실패"); FAIL(b); } + snprintf(h_msg, sizeof(h_msg), "MM_KYC_CHECK app=%ld type=%s result=%s score=%ld kyc=%ld", + h_app_id, h_check, h_result, h_score, h_kyc_id); + EXEC SQL INSERT INTO cm_log (log_id, svc_name, log_level, msg, biz_date) + VALUES (:h_logid, :h_svc, + CASE WHEN :h_result = 'PASS' THEN 'I' ELSE 'W' END, + :h_msg, current_date); + if (sqlca.sqlcode < 0) { userlog("[MM_KYC_CHECK] 감사 로그 적재 실패 [%d]", sqlca.sqlcode); FAIL(b); } + + /* [6] 응답부 (출력 필드 설정) ------------------------------------- */ + Bchg(b, T_STATUS, 0, h_result, 0L); + setl(b, T_ARG1, h_score); + setl(b, T_ID1, h_kyc_id); + setl(b, T_RC, 0); + + /* [7] 완료 로깅 --------------------------------------------------- */ + userlog("[MM_KYC_CHECK] 점검 완료 app_id=%ld type=%s result=%s kyc_id=%ld", + h_app_id, h_check, h_result, h_kyc_id); + OK(b); +} + +/* vim: set ts=4 sw=4 et smartindent: */ diff --git a/app/src/mm/svc/MM_ONBOARD.h b/app/src/mm/svc/MM_ONBOARD.h new file mode 100644 index 0000000..ad1f871 --- /dev/null +++ b/app/src/mm/svc/MM_ONBOARD.h @@ -0,0 +1,16 @@ +/* + * MM_ONBOARD.h - mm 서비스 MM_ONBOARD 카피북 (copybook / record header). + * 가맹점 심사 진행(상태기계). RECEIVED->UNDERWRITING->APPROVED/REJECTED. + * 사용 UBF 필드: + * 입력 T_ID1(app_id), T_STR1(action: UNDERWRITE/APPROVE/REJECT), + * T_STR3(reviewer, 선택), T_REASON(reject 사유, 선택) + * 출력 T_STATUS(새 status), T_STR2(발급 merchant_id), T_RC + */ +#ifndef MM_ONBOARD_H +#define MM_ONBOARD_H + +#include "mm_svc.h" + +void MM_ONBOARD(TPSVCINFO *p); + +#endif /* MM_ONBOARD_H */ diff --git a/app/src/mm/svc/MM_ONBOARD.pgc b/app/src/mm/svc/MM_ONBOARD.pgc new file mode 100644 index 0000000..d2b113a --- /dev/null +++ b/app/src/mm/svc/MM_ONBOARD.pgc @@ -0,0 +1,140 @@ +/* + * MM_ONBOARD.pgc - mm 모듈 서비스 MM_ONBOARD (가맹점 심사 진행 / 상태기계). + * 업무: mm_application 의 심사 상태를 전이한다. 상태기계는 아래 전이만 허용하고 + * 그 외 전이는 부적법(不適法)으로 거부한다. + * RECEIVED --UNDERWRITE--> UNDERWRITING + * UNDERWRITING --APPROVE----> APPROVED (merchant_id 발급/decision_at/reviewer) + * UNDERWRITING --REJECT-----> REJECTED (reject_reason/decision_at/reviewer) + * APPROVED/REJECTED 는 종단 상태로 모든 전이를 거부한다. + * 입력: T_ID1(app_id), T_STR1(action), T_STR3(reviewer 선택), T_REASON(반려사유 선택). + * 출력: T_STATUS=새 status, T_STR2=merchant_id, T_RC. + * 부적법 전이는 T_RC/T_MSG 세팅 후 FAIL(글로벌 트랜잭션 롤백). + * 호출자 XA 브랜치에서 수행(EXEC SQL CONNECT 없음). mm_svr 가 tpsvrinit 에서 광고. + */ +#include "MM_ONBOARD.h" + +/* MM_ONBOARD - 가맹점 심사 상태기계 전이. */ +void MM_ONBOARD(TPSVCINFO *p) +{ + UBFH *b = (UBFH *)p->data; + char action[24], reviewer[64], reason[160]; + int legal = 0; + EXEC SQL BEGIN DECLARE SECTION; + long h_app_id, h_logid; + char h_action[24], h_cur[16], h_new[16], h_mid[32]; + char h_reviewer[64], h_reason[160], h_svc[24], h_msg[200]; + EXEC SQL END DECLARE SECTION; + + /* 지역/호스트 변수 초기화 (DECLARE SECTION 밖) */ + h_app_id = h_logid = 0; + action[0] = reviewer[0] = reason[0] = 0; + h_action[0] = h_cur[0] = h_new[0] = h_mid[0] = 0; + h_reviewer[0] = h_reason[0] = 0; + strcpy(h_svc, "MM_ONBOARD"); + userlog("[MM_ONBOARD] 심사 진행 진입"); + + /* [1] 입력 검증부 -------------------------------------------------- */ + h_app_id = getl(b, T_ID1); + if (h_app_id <= 0) { + setl(b, T_RC, 7001); + Bchg(b, T_MSG, 0, "신청 ID(app_id) 필수", 0L); + userlog("[MM_ONBOARD] app_id 검증 실패 id=%ld", h_app_id); + FAIL(b); + } + gets_(b, T_STR1, action, sizeof(action)); + if (strcmp(action, "UNDERWRITE") != 0 && + strcmp(action, "APPROVE") != 0 && + strcmp(action, "REJECT") != 0) { + setl(b, T_RC, 7002); + Bchg(b, T_MSG, 0, "action 은 UNDERWRITE/APPROVE/REJECT 중 하나여야 함", 0L); + userlog("[MM_ONBOARD] 부적합 action=[%s]", action); + FAIL(b); + } + strncpy(h_action, action, sizeof(h_action)-1); h_action[sizeof(h_action)-1] = 0; + + /* reviewer / reject 사유(선택 입력) */ + gets_(b, T_STR3, reviewer, sizeof(reviewer)); + if (reviewer[0] == 0) strcpy(reviewer, "AUTO"); + strncpy(h_reviewer, reviewer, sizeof(h_reviewer)-1); h_reviewer[sizeof(h_reviewer)-1] = 0; + gets_(b, T_REASON, reason, sizeof(reason)); + + /* [2] 현재 상태 조회부 -------------------------------------------- */ + EXEC SQL SELECT status, coalesce(merchant_id,'') + INTO :h_cur, :h_mid + FROM mm_application WHERE app_id = :h_app_id; + if (sqlca.sqlcode == 100) { + setl(b, T_RC, 7003); + Bchg(b, T_MSG, 0, "신청 원장 미존재", 0L); + userlog("[MM_ONBOARD] 신청 미존재 app_id=%ld", h_app_id); + FAIL(b); + } else if (sqlca.sqlcode < 0) { + userlog("[MM_ONBOARD] 신청 조회 오류 [%d]", sqlca.sqlcode); + FAIL(b); + } + userlog("[MM_ONBOARD] app_id=%ld 현재상태=%s action=%s", h_app_id, h_cur, h_action); + + /* [3] 상태기계 전이 판정부 (부적법 전이 거부) --------------------- */ + if (strcmp(h_action, "UNDERWRITE") == 0) { + if (strcmp(h_cur, "RECEIVED") == 0) { strcpy(h_new, "UNDERWRITING"); legal = 1; } + } else if (strcmp(h_action, "APPROVE") == 0) { + if (strcmp(h_cur, "UNDERWRITING") == 0) { strcpy(h_new, "APPROVED"); legal = 1; } + } else if (strcmp(h_action, "REJECT") == 0) { + if (strcmp(h_cur, "UNDERWRITING") == 0) { strcpy(h_new, "REJECTED"); legal = 1; } + } + if (!legal) { + setl(b, T_RC, 7010); + snprintf(h_msg, sizeof(h_msg), + "부적법 전이 거부: %s 상태에서 %s 불가", h_cur, h_action); + Bchg(b, T_MSG, 0, h_msg, 0L); + userlog("[MM_ONBOARD] %s", h_msg); + FAIL(b); + } + + /* [4] 본처리부: 상태별 UPDATE ------------------------------------- */ + if (strcmp(h_new, "UNDERWRITING") == 0) { + EXEC SQL UPDATE mm_application SET status = 'UNDERWRITING' + WHERE app_id = :h_app_id; + if (sqlca.sqlcode < 0) { userlog("[MM_ONBOARD] UNDERWRITING 갱신 실패"); FAIL(b); } + h_mid[0] = 0; /* 아직 MID 미발급 */ + } else if (strcmp(h_new, "APPROVED") == 0) { + /* merchant_id 발급: 'M' + app_id zero-padding (호스트변수 캐스팅 회피, C에서 조립) */ + snprintf(h_mid, sizeof(h_mid), "M%09ld", h_app_id); + EXEC SQL UPDATE mm_application + SET status = 'APPROVED', merchant_id = :h_mid, + reviewer = :h_reviewer, decision_at = now() + WHERE app_id = :h_app_id; + if (sqlca.sqlcode < 0) { userlog("[MM_ONBOARD] APPROVED 갱신 실패"); FAIL(b); } + userlog("[MM_ONBOARD] 승인 app_id=%ld mid=[%s] reviewer=[%s]", + h_app_id, h_mid, h_reviewer); + } else { /* REJECTED */ + if (reason[0] == 0) strcpy(reason, "심사 반려"); + strncpy(h_reason, reason, sizeof(h_reason)-1); h_reason[sizeof(h_reason)-1] = 0; + EXEC SQL UPDATE mm_application + SET status = 'REJECTED', reviewer = :h_reviewer, + reject_reason = :h_reason, decision_at = now() + WHERE app_id = :h_app_id; + if (sqlca.sqlcode < 0) { userlog("[MM_ONBOARD] REJECTED 갱신 실패"); FAIL(b); } + h_mid[0] = 0; + userlog("[MM_ONBOARD] 반려 app_id=%ld reason=[%s]", h_app_id, h_reason); + } + + /* [5] 이력/감사 적재부 (cm_log) ----------------------------------- */ + EXEC SQL SELECT nextval('cm_log_seq') INTO :h_logid; + if (sqlca.sqlcode < 0) { userlog("[MM_ONBOARD] 로그 시퀀스 실패"); FAIL(b); } + snprintf(h_msg, sizeof(h_msg), "MM_ONBOARD app=%ld %s: %s -> %s mid=%s", + h_app_id, h_action, h_cur, h_new, h_mid[0] ? h_mid : "-"); + EXEC SQL INSERT INTO cm_log (log_id, svc_name, log_level, msg, biz_date) + VALUES (:h_logid, :h_svc, 'I', :h_msg, current_date); + if (sqlca.sqlcode < 0) { userlog("[MM_ONBOARD] 감사 로그 적재 실패 [%d]", sqlca.sqlcode); FAIL(b); } + + /* [6] 응답부 (출력 필드 설정) ------------------------------------- */ + Bchg(b, T_STATUS, 0, h_new, 0L); + Bchg(b, T_STR2, 0, h_mid, 0L); /* 승인시 발급 MID, 그 외 빈값 */ + setl(b, T_RC, 0); + + /* [7] 완료 로깅 --------------------------------------------------- */ + userlog("[MM_ONBOARD] 전이 완료 app_id=%ld %s -> %s", h_app_id, h_cur, h_new); + OK(b); +} + +/* vim: set ts=4 sw=4 et smartindent: */ diff --git a/app/src/rc/svc/RC_3WAY.h b/app/src/rc/svc/RC_3WAY.h index 46509a4..9b05657 100644 --- a/app/src/rc/svc/RC_3WAY.h +++ b/app/src/rc/svc/RC_3WAY.h @@ -1,21 +1,15 @@ /* * RC_3WAY.h - rc 서비스 RC_3WAY 카피북 (copybook / record header). - * 3-way 대사: 승인+매입+원장 모두 존재 시 MATCHED. + * 3자 대사(카드망 정산파일 ↔ 내부원장 ↔ 은행입금): rc_3way UPSERT. + * 사용 UBF 필드: + * 입력 T_BIZDATE(영업일), T_KEY1(member_bin) + * 출력 T_AMT1(amt_network), T_ARG1(diff_ni), T_STATUS(status), T_RC */ #ifndef RC_3WAY_H #define RC_3WAY_H #include "rc_svc.h" -typedef struct { - long purchase_id; - char merchant_id[64]; - long amount; - long net; - char status[8]; - char biz_date[16]; -} rc_rc_3way_rec_t; - void RC_3WAY(TPSVCINFO *p); #endif /* RC_3WAY_H */ diff --git a/app/src/rc/svc/RC_3WAY.pgc b/app/src/rc/svc/RC_3WAY.pgc index 5e3d25e..cecf7f6 100644 --- a/app/src/rc/svc/RC_3WAY.pgc +++ b/app/src/rc/svc/RC_3WAY.pgc @@ -1,192 +1,147 @@ /* - * RC_3WAY.pgc - rc 모듈 서비스 RC_3WAY (대사 온라인 프로그램, 심화판). - * 업무: 3-way 대사: 승인+매입+원장 모두 존재 시 MATCHED. - * 처리단계: 입력검증->마스터/정책조회->업무규칙분기->본처리->이력적재->집계갱신->예외보상->응답. + * RC_3WAY.pgc - rc 모듈 서비스 RC_3WAY (3자 대사 온라인 프로그램). + * 업무: 카드망 정산파일(st_net_settlement) ↔ 내부원장(settlement/ledger) ↔ + * 은행실입금(st_funding_instr) 3자 대사. 차이 산출 후 rc_3way UPSERT. + * 입력: T_BIZDATE(영업일), T_KEY1(member_bin). + * 출력: T_AMT1=amt_network, T_ARG1=diff_ni, T_STATUS=status, T_RC. + * 처리단계: 입력검증->망/내부/은행 3자 조회->차이산출->상태판정->rc_3way UPSERT + * ->감사적재->응답. * 호출자 XA 브랜치에서 수행(EXEC SQL CONNECT 없음). rc_svr 가 tpsvrinit 에서 광고. */ #include "RC_3WAY.h" -#include "acq_common.h" -/* RC_3WAY - 3-way 대사: 승인+매입+원장 모두 존재 시 MATCHED. */ +/* RC_3WAY - 3자 대사(망·내부·은행) 차이 산출 및 rc_3way UPSERT. */ void RC_3WAY(TPSVCINFO *p) { UBFH *b = (UBFH *)p->data; - char bizdate[16], tmpin[64]; - char sbuf[300]; - long tol = 0, rc_code = 0, adiff = 0, out_cnt = 0, pctl = 0; - long scan_rows = 0, matched_rows = 0, unmatched_rows = 0, unmatched_amt = 0; + char bizin[16], binin[64]; + long diff_ni = 0, diff_nb = 0; /* 로컬 산출(호스트변수 아님) */ EXEC SQL BEGIN DECLARE SECTION; - long h_pid, h_amt, h_fee, h_net, h_act, h_exp, h_gross, h_cnt; - long h_mcnt, h_ecnt, h_ucnt, h_led, h_set, h_id, h_id2, h_mdr; - long h_limit, h_sum, h_val, h_n1, h_n2, h_prev, h_diff; - char h_bizdate[16], h_nbizdate[16], h_merch[64], h_status[16], h_pstat[16]; - char h_channel[16], h_issuer[40], h_category[16], h_ccy[8], h_reason[160]; - char h_msg[256], h_svc[40], h_lvl[16], h_key[64], h_dtype[8]; + char h_bizdate[16], h_bin[64], h_status[16], h_svc[24], h_reason[192]; + long h_net_amt, h_internal, h_bank, h_diff_ni, h_diff_nb; + long h_ncnt, h_icnt, h_bcnt, h_logid; EXEC SQL END DECLARE SECTION; /* 지역/호스트 변수 초기화 (DECLARE SECTION 밖) */ - h_pid = h_amt = h_fee = h_net = h_act = h_exp = h_gross = h_cnt = 0; - h_mcnt = h_ecnt = h_ucnt = h_led = h_set = h_id = h_id2 = h_mdr = 0; - h_limit = h_sum = h_val = h_n1 = h_n2 = h_prev = h_diff = 0; - bizdate[0] = tmpin[0] = 0; - h_bizdate[0] = h_nbizdate[0] = h_merch[0] = 0; - strcpy(h_status, "MATCHED"); strcpy(h_pstat, "A"); strcpy(h_ccy, "KRW"); - strcpy(h_channel, "POS"); strcpy(h_issuer, "UNKNOWN"); strcpy(h_category, "GEN"); - strcpy(h_reason, "3WAY_CHK"); strcpy(h_lvl, "I"); strcpy(h_dtype, "AMT"); + h_net_amt = h_internal = h_bank = h_diff_ni = h_diff_nb = 0; + h_ncnt = h_icnt = h_bcnt = h_logid = 0; + bizin[0] = binin[0] = 0; + h_bizdate[0] = h_bin[0] = 0; + strcpy(h_status, "PENDING"); strcpy(h_svc, "RC_3WAY"); - snprintf(h_msg, sizeof(h_msg), "[RC_3WAY] 3-way 대사: 승인+매입+원장 모두 존재 시 MATCHED."); - strcpy(h_key, "-"); - userlog("[RC_3WAY] 대사 진입: 3-way 대사: 승인+매입+원장 모두 존재 시 MATCHED."); + strcpy(h_reason, "3WAY_RECON"); + userlog("[RC_3WAY] 3자 대사 진입"); /* [1] 입력 검증부 -------------------------------------------------- */ - gets_(b, T_BIZDATE, bizdate, sizeof(bizdate)); - if (strlen(bizdate) < 8) { - setl(b, T_RC, 8001); Bchg(b, T_MSG, 0, "영업일자(biz_date) 형식 오류", 0L); - userlog("[RC_3WAY] 영업일자 검증 실패 val=[%s]", bizdate); FAIL(b); + gets_(b, T_BIZDATE, bizin, sizeof(bizin)); + if (strlen(bizin) < 8) { + setl(b, T_RC, 8001); + Bchg(b, T_MSG, 0, "영업일자(biz_date) 형식 오류", 0L); + userlog("[RC_3WAY] 영업일 검증 실패 val=[%s]", bizin); + FAIL(b); } - strncpy(h_bizdate, bizdate, sizeof(h_bizdate)-1); h_bizdate[sizeof(h_bizdate)-1] = 0; - strcpy(h_key, bizdate); - h_pid = getl(b, T_PURCHASE_ID); - if (h_pid <= 0) { - setl(b, T_RC, 8002); Bchg(b, T_MSG, 0, "매입 ID(purchase_id) 필수", 0L); - userlog("[RC_3WAY] 매입 ID 검증 실패 pid=%ld", h_pid); FAIL(b); + strncpy(h_bizdate, bizin, sizeof(h_bizdate)-1); h_bizdate[sizeof(h_bizdate)-1] = 0; + gets_(b, T_KEY1, binin, sizeof(binin)); + if (binin[0] == 0) { + setl(b, T_RC, 8002); + Bchg(b, T_MSG, 0, "회원사 BIN(member_bin) 필수", 0L); + userlog("[RC_3WAY] member_bin 미지정"); + FAIL(b); } - h_net = getl(b, T_NET); - if (h_net < -100000000000L || h_net > 100000000000L) { - setl(b, T_RC, 8003); Bchg(b, T_MSG, 0, "순액 범위 초과", 0L); - userlog("[RC_3WAY] 순액 범위 초과 net=%ld", h_net); FAIL(b); + strncpy(h_bin, binin, sizeof(h_bin)-1); h_bin[sizeof(h_bin)-1] = 0; + userlog("[RC_3WAY] 대사 대상 date=[%s] bin=[%s]", h_bizdate, h_bin); + + /* [2-1] 카드망(st_net_settlement) 순액 조회 — 망 레그 --------------- */ + EXEC SQL SELECT coalesce(sum(net_amt),0), count(*) + INTO :h_net_amt, :h_ncnt + FROM st_net_settlement + WHERE member_bin = :h_bin AND biz_date = :h_bizdate; + if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 망 정산 조회 오류 [%d]", sqlca.sqlcode); FAIL(b); } + if (h_ncnt == 0) + userlog("[RC_3WAY] 망 정산 데이터 없음 bin=[%s] date=[%s]", h_bin, h_bizdate); + + /* [2-2] 내부 원장(settlement 합, 없으면 ledger SETTLE 합) — 내부 레그 + * 내부원장은 member_bin 키가 없으므로 당일 순액 합으로 근사한다. */ + EXEC SQL SELECT coalesce(sum(net),0), count(*) + INTO :h_internal, :h_icnt + FROM settlement WHERE biz_date = :h_bizdate; + if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 정산원장 조회 오류 [%d]", sqlca.sqlcode); FAIL(b); } + if (h_icnt == 0) { + EXEC SQL SELECT coalesce(sum(amount),0) + INTO :h_internal + FROM ledger WHERE biz_date = :h_bizdate AND entry_type IN ('SETTLE','RECON'); + if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 원장 조회 오류 [%d]", sqlca.sqlcode); FAIL(b); } + userlog("[RC_3WAY] 내부 레그 ledger 근사 적용 internal=%ld", h_internal); } - /* [2] 마스터/정책/상태 조회부 ------------------------------------- */ - EXEC SQL SELECT amount, fee, net, status, merchant_id, channel, issuer, category, biz_date - INTO :h_amt, :h_fee, :h_net, :h_pstat, :h_merch, :h_channel, :h_issuer, :h_category, :h_bizdate - FROM purchase WHERE purchase_id = :h_pid; - if (sqlca.sqlcode == 100) { - setl(b, T_RC, 8004); Bchg(b, T_MSG, 0, "매입 원장 미존재", 0L); - userlog("[RC_3WAY] 매입 원장 미존재 pid=%ld", h_pid); FAIL(b); - } else if (sqlca.sqlcode < 0) { - userlog("[RC_3WAY] 매입 조회 오류 [%d]", sqlca.sqlcode); FAIL(b); - } - strncpy(bizdate, h_bizdate, sizeof(bizdate)-1); bizdate[sizeof(bizdate)-1] = 0; - EXEC SQL SELECT mdr_bps, daily_limit, status INTO :h_mdr, :h_limit, :h_status - FROM merchant WHERE merchant_id = :h_merch; - if (sqlca.sqlcode == 100) { - strcpy(h_status, "NOMERCH"); h_mdr = 25; h_limit = 100000000; - userlog("[RC_3WAY] 가맹점 마스터 미존재 mid=[%s] 기본정책 적용", h_merch); - } else if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 가맹점 조회 오류"); FAIL(b); } - EXEC SQL SELECT count(*), coalesce(sum(amount),0), coalesce(sum(net),0), coalesce(sum(fee),0) - INTO :h_cnt, :h_gross, :h_sum, :h_fee FROM purchase WHERE biz_date = :h_bizdate; - if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 당일 매입 집계 오류"); FAIL(b); } - EXEC SQL SELECT count(*) INTO :h_mcnt FROM rc_match_log - WHERE biz_date = :h_bizdate AND status = 'MATCHED'; - if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 대사 로그 집계 오류"); FAIL(b); } - EXEC SQL SELECT count(*) INTO :h_ecnt FROM rc_exception - WHERE biz_date = :h_bizdate AND resolved = false; - if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 예외 집계 오류"); FAIL(b); } + /* [2-3] 은행 실입금(st_funding_instr 합) — 은행 레그(근사) ---------- */ + EXEC SQL SELECT coalesce(sum(amount),0), count(*) + INTO :h_bank, :h_bcnt + FROM st_funding_instr + WHERE biz_date = :h_bizdate AND status IN ('SENT','CONFIRMED'); + if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 은행 입금 조회 오류 [%d]", sqlca.sqlcode); FAIL(b); } - /* [3] 거래집합 커서 순회 + 허용오차/매칭분류 --------------------- */ - EXEC SQL DECLARE cur_rc_3way CURSOR FOR - SELECT purchase_id, net, amount, fee, status - FROM purchase WHERE biz_date = :h_bizdate ORDER BY purchase_id; - EXEC SQL OPEN cur_rc_3way; - for (;;) { - EXEC SQL FETCH cur_rc_3way INTO :h_pid, :h_net, :h_amt, :h_fee, :h_pstat; - if (sqlca.sqlcode == 100) break; - if (sqlca.sqlcode < 0) { EXEC SQL CLOSE cur_rc_3way; userlog("[RC_3WAY] 커서 FETCH 오류"); FAIL(b); } - EXEC SQL SELECT coalesce(sum(amount),0) INTO :h_act FROM ledger - WHERE purchase_id = :h_pid AND entry_type IN ('RECON','SETTLE'); - if (sqlca.sqlcode < 0) { EXEC SQL CLOSE cur_rc_3way; FAIL(b); } - h_exp = h_net; adiff = (h_exp - h_act); if (adiff < 0) adiff = -adiff; - scan_rows++; - if (adiff <= (tol > 0 ? tol : 0)) matched_rows++; - else { unmatched_rows++; unmatched_amt += adiff; } - } - EXEC SQL CLOSE cur_rc_3way; - userlog("[RC_3WAY] 대사스캔 완료 scan=%ld match=%ld unmatch=%ld", scan_rows, matched_rows, unmatched_rows); + /* [3] 차이 산출부 (diff_ni = 망-내부, diff_nb = 망-은행) ----------- */ + diff_ni = h_net_amt - h_internal; + diff_nb = h_net_amt - h_bank; + h_diff_ni = diff_ni; + h_diff_nb = diff_nb; + userlog("[RC_3WAY] 산출 net=%ld internal=%ld bank=%ld diff_ni=%ld diff_nb=%ld", + h_net_amt, h_internal, h_bank, h_diff_ni, h_diff_nb); - /* [4] 업무규칙 분기부 (상태/금액/한도) ----------------------------- */ - if (h_gross <= 0 && scan_rows == 0) { - rc_code = 0; strcpy(h_status, "NODATA"); out_cnt = 0; - userlog("[RC_3WAY] 대상 없음 - 무처리 종료"); - } else if (unmatched_rows == 0) { - rc_code = 0; strcpy(h_status, "MATCHED"); out_cnt = matched_rows; - } else if (unmatched_rows * 100 <= (scan_rows > 0 ? scan_rows : 1) * 5) { - rc_code = 1; strcpy(h_status, "TOLERATED"); out_cnt = unmatched_rows; - userlog("[RC_3WAY] 경미 불일치 허용범위 내 unmatch=%ld", unmatched_rows); + /* [4] 상태 판정부 (차이 0 -> MATCHED, 그 외 -> DIFF, 망無 -> PENDING) */ + if (h_ncnt == 0) { + strcpy(h_status, "PENDING"); + userlog("[RC_3WAY] 망 데이터 부재 -> PENDING"); + } else if (h_diff_ni == 0 && h_diff_nb == 0) { + strcpy(h_status, "MATCHED"); } else { - rc_code = 2; strcpy(h_status, "EXCEPTION"); out_cnt = unmatched_rows; - userlog("[RC_3WAY] 대사 불일치 초과 unmatch=%ld amt=%ld", unmatched_rows, unmatched_amt); + strcpy(h_status, "DIFF"); + userlog("[RC_3WAY] 3자 불일치 diff_ni=%ld diff_nb=%ld", h_diff_ni, h_diff_nb); } - if (h_mdr > 0 && h_gross > 0) pctl = acq_fee(h_gross, h_mdr); /* 이론 수수료 */ - h_exp = h_net; h_diff = h_exp - h_act; - /* [5] 본처리부 (핵심 적재/갱신) ----------------------------------- */ - /* 대사 로그 적재 (rc_match_log) */ - h_id = rcdb_insert_match(h_pid, "3WAY", h_net, - (unmatched_rows == 0 ? "MATCHED" : "EXCEPTION"), bizdate); - if (h_id < 0) { userlog("[RC_3WAY] 대사 로그 적재 실패 pid=%ld", h_pid); FAIL(b); } - out_cnt = matched_rows > 0 ? matched_rows : 1; + /* [5] 본처리부: rc_3way UPSERT (biz_date, member_bin) --------------- */ + EXEC SQL INSERT INTO rc_3way + (recon_id, biz_date, member_bin, amt_network, amt_internal, amt_bank, + diff_ni, diff_nb, status) + VALUES (nextval('rc_3way_seq'), :h_bizdate, :h_bin, :h_net_amt, :h_internal, + :h_bank, :h_diff_ni, :h_diff_nb, :h_status) + ON CONFLICT (biz_date, member_bin) DO UPDATE SET + amt_network = EXCLUDED.amt_network, + amt_internal = EXCLUDED.amt_internal, + amt_bank = EXCLUDED.amt_bank, + diff_ni = EXCLUDED.diff_ni, + diff_nb = EXCLUDED.diff_nb, + status = EXCLUDED.status; + if (sqlca.sqlcode < 0) { + userlog("[RC_3WAY] rc_3way UPSERT 실패 [%d]", sqlca.sqlcode); + setl(b, T_RC, 8003); + Bchg(b, T_MSG, 0, "3자대사 결과 적재 실패", 0L); + FAIL(b); + } /* [6] 이력/감사 적재부 (cm_log) ----------------------------------- */ - EXEC SQL SELECT nextval('cm_log_seq') INTO :h_id2; + EXEC SQL SELECT nextval('cm_log_seq') INTO :h_logid; if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 로그 시퀀스 실패"); FAIL(b); } - snprintf(sbuf, sizeof(sbuf), "RC_3WAY scan=%ld match=%ld unmatch=%ld gross=%ld rc=%ld", - scan_rows, matched_rows, unmatched_rows, h_gross, rc_code); - strncpy(h_reason, sbuf, sizeof(h_reason)-1); h_reason[sizeof(h_reason)-1] = 0; - strcpy(h_lvl, rc_code >= 2 ? "E" : (rc_code == 1 ? "W" : "I")); + snprintf(h_reason, sizeof(h_reason), + "RC_3WAY bin=%s net=%ld internal=%ld bank=%ld dni=%ld dnb=%ld st=%s", + h_bin, h_net_amt, h_internal, h_bank, h_diff_ni, h_diff_nb, h_status); EXEC SQL INSERT INTO cm_log (log_id, svc_name, log_level, msg, biz_date) - VALUES (:h_id2, :h_svc, :h_lvl, :h_reason, :h_bizdate); + VALUES (:h_logid, :h_svc, + CASE WHEN :h_diff_ni = 0 AND :h_diff_nb = 0 THEN 'I' ELSE 'W' END, + :h_reason, :h_bizdate); if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 감사 로그 적재 실패 [%d]", sqlca.sqlcode); FAIL(b); } - /* [7] 집계/요약 재집계부 ------------------------------------------ */ - EXEC SQL SELECT count(*) INTO :h_ucnt FROM purchase p - WHERE p.biz_date = :h_bizdate - AND p.status IN ('A','H'); - if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 미결 재집계 오류"); FAIL(b); } - EXEC SQL SELECT coalesce(sum(net),0) INTO :h_set FROM settlement WHERE biz_date = :h_bizdate; - if (sqlca.sqlcode < 0) { userlog("[RC_3WAY] 정산 재집계 오류"); FAIL(b); } - if (h_val == 0) h_val = h_set; - if (h_n1 == 0) h_n1 = matched_rows; - if (h_n2 == 0) h_n2 = unmatched_rows; + /* [7] 응답부 (출력 필드 설정) ------------------------------------- */ + setl(b, T_AMT1, h_net_amt); /* 카드망 순액 */ + setl(b, T_ARG1, h_diff_ni); /* 망-내부 차이 */ + setl(b, T_AMT2, h_diff_nb); /* 망-은행 차이(참조) */ + Bchg(b, T_STATUS, 0, h_status, 0L); + setl(b, T_RC, 0); - /* [7-1] 후속 업무 체인 (tpcall) — CHAIN-BEGIN ----------------------- - * 하위 서비스는 별도 XA 브랜치라 이 브랜치의 미커밋 행이 보이지 않는다. - * 판단에 필요한 값은 전문(T_*)에 실어 전달하고, 응답 계약은 [8] 응답부가 - * 뒤에서 재확정한다(하위 결과코드가 기존 계약을 덮지 않도록 복원). */ - { - long ch_rlen = 0, ch_sub = 0, ch_keep = getl(b, T_RC); - long ch_pid = getl(b, T_PURCHASE_ID); - setl(b, T_AMOUNT, h_amt); setl(b, T_FEE, h_fee); setl(b, T_NET, h_net); - setl(b, T_GROSS, h_gross); setl(b, T_COUNT, scan_rows); - setl(b, T_ARG3, unmatched_rows); setl(b, T_AMT2, unmatched_amt); - setl(b, T_ARG4, rc_code); - Bchg(b, T_BIZDATE, 0, h_bizdate, 0L); - if (h_merch[0]) Bchg(b, T_MERCHANT, 0, h_merch, 0L); - Bchg(b, T_SVCNAME, 0, h_svc, 0L); - userlog("[RC_3WAY] 승인-매입 정합성 검증 연계 -> VL_APPR_ACQ pid=%ld date=[%s]", ch_pid, h_bizdate); - if (tpcall("VL_APPR_ACQ", (char *)b, 0L, (char **)&b, &ch_rlen, 0L) < 0) { - userlog("[RC_3WAY] tpcall(VL_APPR_ACQ) 실패: %s", tpstrerror(tperrno)); - setl(b, T_RC, 8811); Bchg(b, T_MSG, 0, "승인-매입 정합성 검증 연계 실패", 0L); - FAIL(b); - } - ch_sub = getl(b, T_RC); - if (ch_sub != 0) userlog("[RC_3WAY] VL_APPR_ACQ 이상 회신 rc=%ld", ch_sub); - userlog("[RC_3WAY] 원장 3-way 대조 연계 -> LG_THREEWAY pid=%ld date=[%s]", ch_pid, h_bizdate); - if (tpcall("LG_THREEWAY", (char *)b, 0L, (char **)&b, &ch_rlen, 0L) < 0) { - userlog("[RC_3WAY] tpcall(LG_THREEWAY) 실패: %s", tpstrerror(tperrno)); - setl(b, T_RC, 8812); Bchg(b, T_MSG, 0, "원장 3-way 대조 연계 실패", 0L); - FAIL(b); - } - ch_sub = getl(b, T_RC); - if (ch_sub != 0) userlog("[RC_3WAY] LG_THREEWAY 이상 회신 rc=%ld", ch_sub); - setl(b, T_RC, ch_keep); /* 기존 응답 계약 복원 — [8]에서 최종 확정 */ - } - - /* [8] 응답부 (출력 필드 설정) ------------------------------------- */ - setl(b, T_RC, rc_code); - - /* [9] 완료 로깅 --------------------------------------------------- */ - userlog("[RC_3WAY] 대사 정상 종료 rc=%ld out=%ld status=%s", rc_code, out_cnt, h_status); + /* [8] 완료 로깅 --------------------------------------------------- */ + userlog("[RC_3WAY] 3자 대사 종료 bin=[%s] status=%s diff_ni=%ld", + h_bin, h_status, h_diff_ni); OK(b); } diff --git a/app/ui/callgraph.js b/app/ui/callgraph.js index ac209cd..ccbd80f 100644 --- a/app/ui/callgraph.js +++ b/app/ui/callgraph.js @@ -1,2 +1,2 @@ /* 자동생성: tools/gen_callgraph.py — svc tpcall 호출그래프 (레이아웃 사전계산). 손대지 말 것. */ -window.CALLGRAPH = {"MODULES":[{"id":"ac","nm":"매입","svc":138,"in":2,"out":57},{"id":"au","nm":"승인/한도","svc":136,"in":30,"out":17},{"id":"cl","nm":"마감","svc":133,"in":1,"out":50},{"id":"cm","nm":"공통","svc":133,"in":73,"out":0},{"id":"lg","nm":"원장","svc":133,"in":71,"out":7},{"id":"mg","nm":"전문게이트웨이","svc":134,"in":16,"out":7},{"id":"mm","nm":"마스터","svc":133,"in":1,"out":28},{"id":"py","nm":"지급","svc":133,"in":9,"out":24},{"id":"rc","nm":"대사","svc":133,"in":16,"out":54},{"id":"st","nm":"정산/수수료","svc":137,"in":36,"out":27},{"id":"vl","nm":"정합성검증","svc":133,"in":81,"out":65}],"MODEDGES":[{"f":"ac","t":"rc","c":5},{"f":"ac","t":"vl","c":7},{"f":"ac","t":"au","c":6},{"f":"ac","t":"lg","c":10},{"f":"ac","t":"st","c":15},{"f":"ac","t":"mg","c":4},{"f":"ac","t":"py","c":5},{"f":"ac","t":"cm","c":4},{"f":"ac","t":"mm","c":1},{"f":"au","t":"ac","c":2},{"f":"au","t":"cm","c":7},{"f":"au","t":"mg","c":8},{"f":"cl","t":"vl","c":30},{"f":"cl","t":"lg","c":18},{"f":"cl","t":"st","c":2},{"f":"lg","t":"vl","c":6},{"f":"lg","t":"cl","c":1},{"f":"mg","t":"cm","c":6},{"f":"mg","t":"au","c":1},{"f":"mm","t":"cm","c":16},{"f":"mm","t":"vl","c":8},{"f":"mm","t":"au","c":2},{"f":"mm","t":"st","c":2},{"f":"py","t":"lg","c":11},{"f":"py","t":"st","c":6},{"f":"py","t":"mg","c":4},{"f":"py","t":"cm","c":3},{"f":"rc","t":"vl","c":25},{"f":"rc","t":"lg","c":8},{"f":"rc","t":"cm","c":13},{"f":"rc","t":"st","c":7},{"f":"rc","t":"au","c":1},{"f":"st","t":"lg","c":16},{"f":"st","t":"py","c":4},{"f":"st","t":"vl","c":5},{"f":"st","t":"cm","c":2},{"f":"vl","t":"cm","c":22},{"f":"vl","t":"au","c":20},{"f":"vl","t":"lg","c":8},{"f":"vl","t":"st","c":4},{"f":"vl","t":"rc","c":11}],"NODES":[{"id":"ACQUIRE","m":"ac","x":773.4,"y":130.8,"d":1},{"id":"ACQ_ALERTDUP","m":"ac","x":592.8,"y":203.7,"d":1},{"id":"ACQ_AMTFIX","m":"ac","x":947.0,"y":361.0,"d":1},{"id":"ACQ_APPRGAP","m":"ac","x":934.1,"y":850.2,"d":1},{"id":"ACQ_APPRLINK","m":"ac","x":940.0,"y":612.8,"d":1},{"id":"ACQ_APPRMAP","m":"ac","x":944.9,"y":347.6,"d":1},{"id":"ACQ_CANCEL","m":"ac","x":773.9,"y":443.1,"d":3},{"id":"ACQ_CB_OPEN","m":"ac","x":945.8,"y":349.9,"d":1},{"id":"ACQ_CB_REVERSE","m":"ac","x":904.8,"y":219.3,"d":1},{"id":"ACQ_CLAIMREG","m":"ac","x":882.8,"y":203.4,"d":1},{"id":"ACQ_CORRAPPR","m":"ac","x":947.0,"y":767.0,"d":1},{"id":"ACQ_CORRECT","m":"ac","x":731.7,"y":735.6,"d":1},{"id":"ACQ_DDC","m":"ac","x":710.8,"y":799.0,"d":1},{"id":"ACQ_DUPCHK","m":"ac","x":516.9,"y":305.5,"d":1},{"id":"ACQ_EDC","m":"ac","x":879.2,"y":773.7,"d":1},{"id":"ACQ_EDI","m":"ac","x":698.1,"y":674.6,"d":1},{"id":"ACQ_EDIRESEND","m":"ac","x":783.1,"y":259.1,"d":1},{"id":"ACQ_ESCROW","m":"ac","x":946.0,"y":242.5,"d":1},{"id":"ACQ_ESCROWREL","m":"ac","x":676.5,"y":372.6,"d":1},{"id":"ACQ_EXCHANGE","m":"ac","x":804.5,"y":831.6,"d":1},{"id":"ACQ_FEEADJ","m":"ac","x":367.9,"y":557.3,"d":1},{"id":"ACQ_FEERECALC","m":"ac","x":937.1,"y":461.5,"d":1},{"id":"ACQ_FOREIGN","m":"ac","x":469.8,"y":587.6,"d":1},{"id":"ACQ_FXCONVERT","m":"ac","x":434.6,"y":744.5,"d":1},{"id":"ACQ_FXRATE","m":"ac","x":519.0,"y":759.2,"d":1},{"id":"ACQ_GUARANTEE","m":"ac","x":283.6,"y":170.1,"d":1},{"id":"ACQ_HOLD","m":"ac","x":950.0,"y":166.4,"d":1},{"id":"ACQ_INSTALL","m":"ac","x":946.5,"y":357.3,"d":1},{"id":"ACQ_INSTCXL","m":"ac","x":947.2,"y":344.2,"d":1},{"id":"ACQ_LIMITCHK","m":"ac","x":943.2,"y":494.7,"d":1},{"id":"ACQ_LIMITEXC","m":"ac","x":945.1,"y":670.3,"d":1},{"id":"ACQ_MERCHSUM","m":"ac","x":516.7,"y":183.7,"d":1},{"id":"ACQ_NETCALC","m":"ac","x":668.2,"y":905.6,"d":1},{"id":"ACQ_PARTCXL","m":"ac","x":609.0,"y":649.2,"d":2},{"id":"ACQ_PARTRFND","m":"ac","x":942.6,"y":498.4,"d":1},{"id":"ACQ_PROMO","m":"ac","x":949.8,"y":117.6,"d":1},{"id":"ACQ_REFUND","m":"ac","x":776.8,"y":518.3,"d":2},{"id":"ACQ_RELEASE","m":"ac","x":777.3,"y":471.7,"d":1},{"id":"ACQ_REMATCH","m":"ac","x":943.7,"y":526.4,"d":1},{"id":"ACQ_REPROC","m":"ac","x":643.9,"y":437.4,"d":1},{"id":"ACQ_RESERVE","m":"ac","x":942.7,"y":508.5,"d":1},{"id":"ACQ_RESERVECXL","m":"ac","x":949.9,"y":656.1,"d":1},{"id":"ACQ_RETURN","m":"ac","x":897.8,"y":297.3,"d":1},{"id":"ACQ_SETTLELINK","m":"ac","x":564.7,"y":464.2,"d":2},{"id":"ACQ_SPLITPAY","m":"ac","x":118.1,"y":149.7,"d":1},{"id":"ACQ_TAXCXL","m":"ac","x":789.0,"y":138.4,"d":1},{"id":"ACQ_TAXINV","m":"ac","x":920.4,"y":470.1,"d":1},{"id":"ACQ_TAXREVERSE","m":"ac","x":776.3,"y":394.7,"d":1},{"id":"ACQ_UNMATCH","m":"ac","x":939.6,"y":648.0,"d":1},{"id":"ACQ_VELOCITY","m":"ac","x":947.6,"y":914.9,"d":1},{"id":"ACQ_VOID","m":"ac","x":946.0,"y":236.6,"d":1},{"id":"ACQ_WHT","m":"ac","x":719.9,"y":243.0,"d":2},{"id":"ACQ_XFERLINK","m":"ac","x":632.0,"y":224.3,"d":1},{"id":"AUTH","m":"au","x":626.4,"y":773.8,"d":3},{"id":"AUTH_AMT_ADJUST","m":"au","x":945.3,"y":931.3,"d":1},{"id":"AUTH_APPROVE","m":"au","x":901.7,"y":934.0,"d":1},{"id":"AUTH_CANCEL","m":"au","x":937.2,"y":641.7,"d":2},{"id":"AUTH_CAPTURE","m":"au","x":853.8,"y":939.2,"d":1},{"id":"AUTH_DECLINE","m":"au","x":780.3,"y":671.2,"d":1},{"id":"AUTH_DUP_CHK","m":"au","x":931.7,"y":856.5,"d":1},{"id":"AUTH_EXPIRE_CHK","m":"au","x":937.0,"y":790.9,"d":1},{"id":"AUTH_HISTORY","m":"au","x":918.4,"y":345.8,"d":3},{"id":"AUTH_HOLD","m":"au","x":942.7,"y":521.2,"d":1},{"id":"AUTH_PARTAPPR","m":"au","x":949.4,"y":882.4,"d":1},{"id":"AUTH_PARTCXL","m":"au","x":914.7,"y":937.2,"d":1},{"id":"AUTH_RELEASE","m":"au","x":937.8,"y":638.1,"d":1},{"id":"AUTH_RESEND","m":"au","x":723.5,"y":805.4,"d":1},{"id":"AUTH_RETRY","m":"au","x":696.6,"y":613.9,"d":1},{"id":"AUTH_REVERSE","m":"au","x":947.2,"y":828.4,"d":1},{"id":"AUTH_STATUS","m":"au","x":788.1,"y":208.8,"d":2},{"id":"AUTH_SUMMARY","m":"au","x":941.1,"y":686.9,"d":1},{"id":"AUTH_VOID","m":"au","x":946.7,"y":921.7,"d":1},{"id":"BIN_ROUTE_INQ","m":"au","x":878.2,"y":596.8,"d":1},{"id":"BLACKLIST_CHK","m":"au","x":942.0,"y":903.4,"d":1},{"id":"CANCEL_STATUS","m":"au","x":941.3,"y":546.0,"d":1},{"id":"CARD_EXPIRE_CHK","m":"au","x":765.2,"y":902.3,"d":1},{"id":"CARD_LOST_REG","m":"au","x":732.0,"y":755.3,"d":1},{"id":"CARD_STOLEN_REG","m":"au","x":656.3,"y":619.2,"d":1},{"id":"CARD_VALIDATE","m":"au","x":942.0,"y":701.6,"d":1},{"id":"CL_AMTXCHECK","m":"cl","x":889.7,"y":295.7,"d":1},{"id":"CL_APPRDELEG","m":"cl","x":803.8,"y":937.3,"d":1},{"id":"CL_APPRFINAL","m":"cl","x":789.4,"y":942.2,"d":1},{"id":"CL_APPRL1","m":"cl","x":381.5,"y":924.3,"d":1},{"id":"CL_APPRL2","m":"cl","x":607.8,"y":940.1,"d":4},{"id":"CL_APPROVE","m":"cl","x":580.0,"y":934.8,"d":1},{"id":"CL_APPRREJECT","m":"cl","x":550.0,"y":945.0,"d":1},{"id":"CL_APPRREQ","m":"cl","x":685.9,"y":944.2,"d":1},{"id":"CL_APPRSTAT","m":"cl","x":603.0,"y":940.2,"d":1},{"id":"CL_BALVERIFY","m":"cl","x":574.8,"y":815.1,"d":1},{"id":"CL_CANCEL","m":"cl","x":639.6,"y":448.2,"d":1},{"id":"CL_CHKALL","m":"cl","x":580.5,"y":661.2,"d":1},{"id":"CL_CHKPENDING","m":"cl","x":732.6,"y":512.6,"d":1},{"id":"CL_CHKUNMATCH","m":"cl","x":859.4,"y":536.0,"d":1},{"id":"CL_CHKVOID","m":"cl","x":663.9,"y":683.0,"d":1},{"id":"CL_CHNVERIFY","m":"cl","x":890.9,"y":690.3,"d":1},{"id":"CL_CNTVERIFY","m":"cl","x":848.4,"y":717.7,"d":1},{"id":"CL_CNTXCHECK","m":"cl","x":630.5,"y":727.8,"d":1},{"id":"CL_CORPCLOSE","m":"cl","x":706.3,"y":944.6,"d":1},{"id":"CL_CORPVERIFY","m":"cl","x":800.1,"y":324.7,"d":1},{"id":"CL_DAILY","m":"cl","x":527.1,"y":948.2,"d":2},{"id":"CL_DAYVERIFY","m":"cl","x":534.7,"y":944.9,"d":1},{"id":"CL_DIFFCHK","m":"cl","x":661.7,"y":257.3,"d":1},{"id":"CL_DIVCLOSE","m":"cl","x":427.7,"y":937.7,"d":1},{"id":"CL_DUPCHK","m":"cl","x":482.6,"y":408.4,"d":1},{"id":"CL_ESCALATE","m":"cl","x":826.0,"y":945.1,"d":1},{"id":"CL_FEECROSS","m":"cl","x":584.8,"y":713.3,"d":1},{"id":"CL_FEEVERIFY","m":"cl","x":505.0,"y":569.3,"d":1},{"id":"CL_FORCECLOSE","m":"cl","x":670.5,"y":949.9,"d":1},{"id":"CL_HALFCLOSE","m":"cl","x":556.8,"y":944.3,"d":1},{"id":"CL_HYVERIFY","m":"cl","x":842.7,"y":616.3,"d":1},{"id":"CL_LOCK","m":"cl","x":498.7,"y":945.2,"d":1},{"id":"CL_MAINCLOSE","m":"cl","x":655.4,"y":944.5,"d":1},{"id":"CL_MERCLOSE","m":"cl","x":420.7,"y":929.1,"d":1},{"id":"CL_MERXCHECK","m":"cl","x":701.9,"y":945.2,"d":1},{"id":"CL_MIDCLOSE","m":"cl","x":794.6,"y":941.6,"d":1},{"id":"CL_MONTHLY","m":"cl","x":166.2,"y":927.8,"d":1},{"id":"CL_MONVERIFY","m":"cl","x":792.8,"y":595.7,"d":1},{"id":"CL_NETCROSS","m":"cl","x":865.4,"y":235.8,"d":1},{"id":"CL_NETVERIFY","m":"cl","x":700.9,"y":528.3,"d":1},{"id":"CL_POSTTRIG","m":"cl","x":416.7,"y":694.2,"d":1},{"id":"CL_PRECHECK","m":"cl","x":773.1,"y":941.5,"d":1},{"id":"CL_QTRVERIFY","m":"cl","x":819.0,"y":938.2,"d":1},{"id":"CL_QUARTER","m":"cl","x":611.9,"y":940.1,"d":1},{"id":"CL_RECLOSE","m":"cl","x":637.8,"y":397.0,"d":1},{"id":"CL_RECON","m":"cl","x":712.1,"y":824.1,"d":1},{"id":"CL_ROLLBACK","m":"cl","x":679.7,"y":621.5,"d":1},{"id":"CL_SEGVERIFY","m":"cl","x":925.1,"y":558.5,"d":1},{"id":"CL_SEMIMONTH","m":"cl","x":319.5,"y":950.0,"d":1},{"id":"CL_SNAPSHOT","m":"cl","x":361.7,"y":929.3,"d":1},{"id":"CL_SNAPXCHECK","m":"cl","x":785.9,"y":943.0,"d":1},{"id":"CL_STCROSS","m":"cl","x":815.6,"y":593.4,"d":1},{"id":"CL_TENDAY","m":"cl","x":463.1,"y":936.7,"d":1},{"id":"CL_TRIGSETTLE","m":"cl","x":665.9,"y":582.9,"d":1},{"id":"CL_VERIFY","m":"cl","x":838.4,"y":906.7,"d":1},{"id":"CL_WEEKLY","m":"cl","x":173.1,"y":930.6,"d":1},{"id":"CL_WEEKVERIFY","m":"cl","x":409.6,"y":617.5,"d":1},{"id":"CL_YEAREND","m":"cl","x":618.7,"y":947.6,"d":1},{"id":"CL_YEARVERIFY","m":"cl","x":154.1,"y":266.8,"d":1},{"id":"CM_ADDDAYS","m":"cm","x":553.1,"y":944.7,"d":1},{"id":"CM_AMT_ROUND","m":"cm","x":494.5,"y":389.9,"d":3},{"id":"CM_BATDEP_CHK","m":"cm","x":330.0,"y":939.8,"d":1},{"id":"CM_BATDEP_SET","m":"cm","x":407.0,"y":940.9,"d":1},{"id":"CM_BATHIST_CNT","m":"cm","x":193.2,"y":948.7,"d":1},{"id":"CM_BATLAST","m":"cm","x":326.3,"y":907.9,"d":4},{"id":"CM_BATRERUN_REQ","m":"cm","x":414.1,"y":941.7,"d":1},{"id":"CM_BATSCHD_DEL","m":"cm","x":504.7,"y":698.2,"d":1},{"id":"CM_BATSCHD_REG","m":"cm","x":338.1,"y":607.1,"d":1},{"id":"CM_BIZDAY","m":"cm","x":243.4,"y":476.7,"d":8},{"id":"CM_BIZDAY_ADD","m":"cm","x":392.6,"y":938.7,"d":1},{"id":"CM_BIZDAY_CNT","m":"cm","x":614.3,"y":948.4,"d":1},{"id":"CM_CACHE_INV","m":"cm","x":285.5,"y":942.0,"d":1},{"id":"CM_CACHE_LOAD","m":"cm","x":278.6,"y":943.0,"d":1},{"id":"CM_CHECKDIGIT","m":"cm","x":290.1,"y":804.7,"d":1},{"id":"CM_CODE","m":"cm","x":601.4,"y":949.0,"d":2},{"id":"CM_CODEGRP_REG","m":"cm","x":364.4,"y":946.3,"d":1},{"id":"CM_CRC","m":"cm","x":116.9,"y":752.5,"d":2},{"id":"CM_ERRMSG","m":"cm","x":379.0,"y":637.7,"d":1},{"id":"CM_FX","m":"cm","x":327.1,"y":852.8,"d":6},{"id":"CM_FX_CONV","m":"cm","x":453.5,"y":533.2,"d":5},{"id":"CM_FX_CROSS","m":"cm","x":581.7,"y":949.2,"d":2},{"id":"CM_FX_INVERT","m":"cm","x":112.4,"y":946.9,"d":1},{"id":"CM_FX_MARGIN","m":"cm","x":166.3,"y":946.4,"d":1},{"id":"CM_FX_PUBLISH","m":"cm","x":543.0,"y":927.2,"d":1},{"id":"CM_FX_TRIANGLE","m":"cm","x":255.1,"y":949.4,"d":1},{"id":"CM_FX_VALID","m":"cm","x":516.4,"y":640.8,"d":2},{"id":"CM_HASH_DJB2","m":"cm","x":292.8,"y":939.8,"d":1},{"id":"CM_HASH_FNV","m":"cm","x":128.0,"y":532.1,"d":1},{"id":"CM_HASH_SUM","m":"cm","x":95.6,"y":933.8,"d":2},{"id":"CM_HOLIDAY_CHK","m":"cm","x":508.8,"y":948.0,"d":3},{"id":"CM_LOG","m":"cm","x":430.1,"y":524.3,"d":44},{"id":"CM_LUHN","m":"cm","x":739.4,"y":465.9,"d":8},{"id":"CM_MONTHEND","m":"cm","x":351.8,"y":689.7,"d":1},{"id":"CM_MSG_RENDER","m":"cm","x":386.5,"y":881.8,"d":1},{"id":"CM_NEXTBIZ","m":"cm","x":201.8,"y":656.9,"d":1},{"id":"CM_NOTI_HIST","m":"cm","x":404.4,"y":942.4,"d":1},{"id":"CM_NOTI_QUOTA","m":"cm","x":298.0,"y":789.8,"d":1},{"id":"CM_NOTI_RETRY","m":"cm","x":321.3,"y":568.3,"d":1},{"id":"CM_NOTI_SEND","m":"cm","x":231.4,"y":171.1,"d":4},{"id":"CM_NOTI_TMPL","m":"cm","x":384.8,"y":704.9,"d":1},{"id":"CM_PARAM","m":"cm","x":432.1,"y":943.4,"d":4},{"id":"CM_PREVBIZ","m":"cm","x":238.6,"y":759.1,"d":1},{"id":"CM_SEQ","m":"cm","x":133.1,"y":394.1,"d":7},{"id":"CM_SEQ_ALLOC","m":"cm","x":461.4,"y":872.1,"d":1},{"id":"CM_SEQ_DAILY","m":"cm","x":443.1,"y":940.6,"d":1},{"id":"CM_SEQ_MULTI","m":"cm","x":585.5,"y":834.8,"d":1},{"id":"CM_SEQ_RESET","m":"cm","x":405.7,"y":838.0,"d":1},{"id":"CM_SEQ_STAMP","m":"cm","x":418.1,"y":800.7,"d":1},{"id":"CM_SEQ_TYPED","m":"cm","x":365.2,"y":590.4,"d":1},{"id":"CM_STATUS","m":"cm","x":203.3,"y":419.2,"d":3},{"id":"FRAUD_DETECT","m":"au","x":857.2,"y":721.6,"d":8},{"id":"FRAUD_RULE_AMT","m":"au","x":930.5,"y":286.0,"d":1},{"id":"FRAUD_RULE_NIGHT","m":"au","x":941.5,"y":616.6,"d":1},{"id":"INSTALL_AUTH","m":"au","x":939.4,"y":824.4,"d":1},{"id":"LG_ACCRUEREV","m":"lg","x":247.1,"y":636.0,"d":1},{"id":"LG_ACCTSUM","m":"lg","x":140.1,"y":875.2,"d":3},{"id":"LG_ACQPOST","m":"lg","x":59.6,"y":663.4,"d":1},{"id":"LG_ADJUST","m":"lg","x":333.6,"y":508.1,"d":3},{"id":"LG_ALLOWANCE","m":"lg","x":296.8,"y":676.5,"d":1},{"id":"LG_ALLOWRECALC","m":"lg","x":67.2,"y":927.3,"d":1},{"id":"LG_BADDEBT","m":"lg","x":225.9,"y":576.6,"d":1},{"id":"LG_BADDEBTRCV","m":"lg","x":225.5,"y":459.5,"d":1},{"id":"LG_BALCERT","m":"lg","x":65.6,"y":940.4,"d":1},{"id":"LG_BALCHK","m":"lg","x":276.7,"y":671.8,"d":22},{"id":"LG_BALPROOF","m":"lg","x":290.0,"y":941.7,"d":1},{"id":"LG_BLACKENTRY","m":"lg","x":148.8,"y":776.7,"d":1},{"id":"LG_BSSUMMARY","m":"lg","x":59.3,"y":893.7,"d":1},{"id":"LG_CLOSE_LINK","m":"lg","x":592.4,"y":896.6,"d":4},{"id":"LG_CORPSUM","m":"lg","x":442.4,"y":866.3,"d":3},{"id":"LG_CORRECT","m":"lg","x":496.0,"y":744.8,"d":2},{"id":"LG_DEPTSUM","m":"lg","x":388.6,"y":867.4,"d":3},{"id":"LG_DOUBLE","m":"lg","x":179.1,"y":779.5,"d":1},{"id":"LG_DUPSCAN","m":"lg","x":264.3,"y":942.4,"d":1},{"id":"LG_FEEACCRUE","m":"lg","x":68.5,"y":726.0,"d":1},{"id":"LG_FEEPOST","m":"lg","x":92.5,"y":659.9,"d":2},{"id":"LG_HALFCLOSE","m":"lg","x":60.1,"y":932.9,"d":1},{"id":"LG_INQUIRY","m":"lg","x":799.3,"y":268.1,"d":3},{"id":"LG_JOURNAL","m":"lg","x":78.9,"y":945.3,"d":1},{"id":"LG_MERCHBAL","m":"lg","x":534.2,"y":802.3,"d":2},{"id":"LG_MERCHPROOF","m":"lg","x":238.0,"y":943.3,"d":2},{"id":"LG_MONTHCLOSE","m":"lg","x":122.3,"y":939.8,"d":1},{"id":"LG_MONTHLYSUM","m":"lg","x":59.6,"y":937.6,"d":2},{"id":"LG_NETPOS","m":"lg","x":235.6,"y":936.8,"d":1},{"id":"LG_PARTREVERSE","m":"lg","x":425.7,"y":501.9,"d":2},{"id":"LG_PERIODTB","m":"lg","x":370.4,"y":870.3,"d":2},{"id":"LG_PLSUMMARY","m":"lg","x":61.0,"y":836.2,"d":1},{"id":"LG_POST","m":"lg","x":352.6,"y":317.3,"d":28},{"id":"LG_PREPAIDAMORT","m":"lg","x":113.9,"y":917.0,"d":1},{"id":"LG_PREPAIDPOST","m":"lg","x":221.4,"y":893.4,"d":2},{"id":"LG_QTRCLOSE","m":"lg","x":62.1,"y":857.6,"d":1},{"id":"LG_RECALC","m":"lg","x":286.6,"y":878.3,"d":6},{"id":"LG_REDADJUST","m":"lg","x":271.3,"y":619.3,"d":1},{"id":"LG_REDBLACKNET","m":"lg","x":211.3,"y":847.1,"d":1},{"id":"LG_REDENTRY","m":"lg","x":204.3,"y":741.5,"d":2},{"id":"LG_REPOST","m":"lg","x":261.9,"y":705.9,"d":1},{"id":"LG_REVERSE","m":"lg","x":612.6,"y":273.5,"d":19},{"id":"LG_ROLLTB","m":"lg","x":311.3,"y":914.4,"d":2},{"id":"LG_SETTLEPOST","m":"lg","x":385.8,"y":456.8,"d":2},{"id":"LG_SPANTB","m":"lg","x":248.2,"y":941.3,"d":2},{"id":"LG_STATUS","m":"lg","x":597.5,"y":396.0,"d":2},{"id":"LG_SUSPENSE","m":"lg","x":105.6,"y":834.7,"d":1},{"id":"LG_THREEWAY","m":"lg","x":334.1,"y":178.8,"d":1},{"id":"LG_TRANSFER","m":"lg","x":199.7,"y":872.5,"d":1},{"id":"LG_TRIALBAL","m":"lg","x":155.8,"y":881.6,"d":7},{"id":"LG_UNEARNPOST","m":"lg","x":118.1,"y":870.1,"d":2},{"id":"LG_UNEARNRECOG","m":"lg","x":71.7,"y":936.6,"d":1},{"id":"LG_VOIDVOUCHER","m":"lg","x":731.3,"y":423.7,"d":1},{"id":"LG_VOUCHER","m":"lg","x":149.0,"y":650.0,"d":1},{"id":"LG_WEEKCLOSE","m":"lg","x":250.7,"y":940.5,"d":1},{"id":"LG_WRITEOFF","m":"lg","x":209.8,"y":473.2,"d":1},{"id":"LG_XFERPOST","m":"lg","x":171.8,"y":713.3,"d":1},{"id":"LG_YEARCLOSE","m":"lg","x":68.6,"y":720.1,"d":1},{"id":"LIMIT_CHK","m":"au","x":679.8,"y":470.6,"d":10},{"id":"LIMIT_DEC","m":"au","x":886.6,"y":824.1,"d":10},{"id":"LIMIT_EXHAUST_LST","m":"au","x":768.4,"y":641.6,"d":1},{"id":"LIMIT_FREEZE","m":"au","x":639.8,"y":566.9,"d":1},{"id":"LIMIT_OVER_ALERT","m":"au","x":444.2,"y":604.8,"d":1},{"id":"LIMIT_RST","m":"au","x":856.0,"y":729.8,"d":13},{"id":"MG_ACK","m":"mg","x":51.7,"y":682.5,"d":1},{"id":"MG_BITMAP","m":"mg","x":63.4,"y":511.6,"d":1},{"id":"MG_BMPPARSE","m":"mg","x":61.0,"y":735.4,"d":1},{"id":"MG_CHANFAILOVER","m":"mg","x":57.1,"y":493.8,"d":1},{"id":"MG_CHANHEALTH","m":"mg","x":52.6,"y":762.7,"d":1},{"id":"MG_CHANOPEN","m":"mg","x":52.9,"y":728.0,"d":1},{"id":"MG_CHANPING","m":"mg","x":58.7,"y":565.6,"d":2},{"id":"MG_CHANSTAT","m":"mg","x":64.6,"y":818.4,"d":1},{"id":"MG_CHANSWITCH","m":"mg","x":58.4,"y":652.9,"d":1},{"id":"MG_DECODE","m":"mg","x":59.4,"y":554.7,"d":1},{"id":"MG_ENCODE","m":"mg","x":52.6,"y":710.4,"d":1},{"id":"MG_ERRREQUEUE","m":"mg","x":58.5,"y":601.9,"d":1},{"id":"MG_ERRRETRY","m":"mg","x":106.0,"y":541.2,"d":1},{"id":"MG_FROMISO","m":"mg","x":50.0,"y":757.4,"d":1},{"id":"MG_ISO8583","m":"mg","x":64.9,"y":544.9,"d":1},{"id":"MG_KEYCHECK","m":"mg","x":56.2,"y":866.9,"d":1},{"id":"MG_KEYLOAD","m":"mg","x":56.5,"y":510.9,"d":1},{"id":"MG_LOADBAL","m":"mg","x":60.4,"y":592.3,"d":1},{"id":"MG_LOG","m":"mg","x":681.0,"y":778.5,"d":6},{"id":"MG_MAC","m":"mg","x":57.7,"y":871.5,"d":1},{"id":"MG_MACGEN","m":"mg","x":54.1,"y":708.0,"d":1},{"id":"MG_MACSESSION","m":"mg","x":55.4,"y":912.6,"d":1},{"id":"MG_MACVERIFY","m":"mg","x":57.1,"y":571.0,"d":1},{"id":"MG_NACK","m":"mg","x":58.5,"y":624.5,"d":1},{"id":"MG_PACK","m":"mg","x":58.3,"y":612.4,"d":1},{"id":"MG_PARSE","m":"mg","x":115.7,"y":705.3,"d":9},{"id":"MG_REASM","m":"mg","x":55.8,"y":917.5,"d":1},{"id":"MG_RECV","m":"mg","x":52.2,"y":805.9,"d":1},{"id":"MG_RESEND","m":"mg","x":466.6,"y":384.4,"d":2},{"id":"MG_RESNDONE","m":"mg","x":50.2,"y":781.9,"d":1},{"id":"MG_ROUTE","m":"mg","x":55.3,"y":743.4,"d":4},{"id":"MG_SEND","m":"mg","x":272.2,"y":574.9,"d":19},{"id":"MG_SEQFILL","m":"mg","x":54.5,"y":777.1,"d":1},{"id":"MG_SEQNEXT","m":"mg","x":54.8,"y":877.9,"d":1},{"id":"MG_STAN","m":"mg","x":96.0,"y":675.8,"d":3},{"id":"MG_TOISO","m":"mg","x":58.2,"y":583.6,"d":1},{"id":"MG_UNPACK","m":"mg","x":55.6,"y":739.1,"d":1},{"id":"MM_ACCT_REG","m":"mm","x":419.5,"y":424.8,"d":1},{"id":"MM_ACCT_VERIFY","m":"mm","x":439.0,"y":405.4,"d":1},{"id":"MM_APPLY_APPROVE","m":"mm","x":52.0,"y":327.7,"d":1},{"id":"MM_APPLY_REG","m":"mm","x":51.5,"y":313.6,"d":1},{"id":"MM_BIN_REG","m":"mm","x":488.6,"y":284.6,"d":1},{"id":"MM_BIZNO_CHECK","m":"mm","x":50.2,"y":678.0,"d":1},{"id":"MM_CHK_LIMIT","m":"mm","x":272.6,"y":409.4,"d":1},{"id":"MM_CODE_REG","m":"mm","x":168.0,"y":237.3,"d":1},{"id":"MM_CONTRACT_AMEND","m":"mm","x":56.6,"y":240.2,"d":1},{"id":"MM_CONTRACT_NEW","m":"mm","x":53.3,"y":290.2,"d":1},{"id":"MM_CONTRACT_RENEW","m":"mm","x":58.5,"y":573.3,"d":1},{"id":"MM_FEERATE_SET","m":"mm","x":333.2,"y":258.3,"d":1},{"id":"MM_GRADE_ADJUST","m":"mm","x":57.5,"y":245.0,"d":1},{"id":"MM_ISSUER_REG","m":"mm","x":265.6,"y":304.2,"d":1},{"id":"MM_LIMIT_SET","m":"mm","x":373.7,"y":414.5,"d":1},{"id":"MM_MCC_REG","m":"mm","x":335.4,"y":156.3,"d":1},{"id":"MM_MCC_UPD","m":"mm","x":318.6,"y":224.0,"d":1},{"id":"MM_MERCH_CLOSE","m":"mm","x":180.5,"y":513.0,"d":1},{"id":"MM_MERCH_DORMANT","m":"mm","x":54.0,"y":236.4,"d":1},{"id":"MM_MERCH_GRADE","m":"mm","x":59.6,"y":405.5,"d":1},{"id":"MM_MERCH_INQ","m":"mm","x":316.6,"y":188.3,"d":1},{"id":"MM_MERCH_PAUSE","m":"mm","x":85.9,"y":219.5,"d":1},{"id":"MM_MERCH_REG","m":"mm","x":60.1,"y":370.1,"d":1},{"id":"MM_MERCH_RESUME","m":"mm","x":200.7,"y":484.9,"d":1},{"id":"MM_MERCH_STATUS","m":"mm","x":65.1,"y":298.3,"d":1},{"id":"MM_MERCH_UPD","m":"mm","x":59.3,"y":356.7,"d":1},{"id":"MM_RATE_APPROVE","m":"mm","x":232.9,"y":78.2,"d":1},{"id":"MM_RATE_REQ","m":"mm","x":278.1,"y":508.2,"d":1},{"id":"MM_RISK_SCORE","m":"mm","x":179.2,"y":419.0,"d":1},{"id":"MM_RISK_SET","m":"mm","x":59.3,"y":163.9,"d":1},{"id":"MM_TERMINAL_REG","m":"mm","x":57.1,"y":388.3,"d":1},{"id":"MM_TERM_INSTALL","m":"mm","x":60.5,"y":447.7,"d":1},{"id":"MM_VALIDATE","m":"mm","x":112.4,"y":369.0,"d":5},{"id":"NOAUTH_CAPTURE","m":"au","x":934.9,"y":885.0,"d":1},{"id":"PAY_ACCTCHK","m":"py","x":137.6,"y":111.7,"d":11},{"id":"PAY_ACCTVERIFY","m":"py","x":65.3,"y":190.9,"d":1},{"id":"PAY_ADJUST","m":"py","x":434.6,"y":99.2,"d":1},{"id":"PAY_APPRBULK","m":"py","x":302.5,"y":60.5,"d":1},{"id":"PAY_APPROVE","m":"py","x":232.4,"y":57.6,"d":1},{"id":"PAY_BANKFILE","m":"py","x":175.4,"y":303.5,"d":1},{"id":"PAY_BANKVERIFY","m":"py","x":67.3,"y":62.7,"d":1},{"id":"PAY_CANCEL","m":"py","x":316.3,"y":132.9,"d":2},{"id":"PAY_CHARGEBACK","m":"py","x":432.2,"y":89.6,"d":1},{"id":"PAY_CLOSE","m":"py","x":192.8,"y":137.4,"d":1},{"id":"PAY_COMBINE","m":"py","x":74.0,"y":54.6,"d":1},{"id":"PAY_CONFIRM","m":"py","x":179.8,"y":217.7,"d":1},{"id":"PAY_FAILRSN","m":"py","x":71.6,"y":102.5,"d":3},{"id":"PAY_FILEGEN","m":"py","x":467.5,"y":87.4,"d":7},{"id":"PAY_FILEREBUILD","m":"py","x":59.9,"y":249.1,"d":1},{"id":"PAY_HOLD","m":"py","x":720.3,"y":290.0,"d":3},{"id":"PAY_MERGE","m":"py","x":60.4,"y":65.1,"d":1},{"id":"PAY_NETOFF","m":"py","x":200.1,"y":167.0,"d":1},{"id":"PAY_RECLAIM","m":"py","x":389.7,"y":111.7,"d":2},{"id":"PAY_REFUND","m":"py","x":296.5,"y":60.9,"d":1},{"id":"PAY_RELEASE","m":"py","x":517.0,"y":437.6,"d":3},{"id":"PAY_REMIT","m":"py","x":64.9,"y":133.4,"d":1},{"id":"PAY_REPROC","m":"py","x":66.5,"y":57.1,"d":1},{"id":"PAY_REQUEUE","m":"py","x":76.3,"y":455.6,"d":1},{"id":"PAY_RESULT","m":"py","x":139.7,"y":203.7,"d":1},{"id":"PAY_RESVMODIFY","m":"py","x":98.5,"y":370.6,"d":1},{"id":"PAY_RETRY","m":"py","x":66.4,"y":142.0,"d":1},{"id":"PAY_RETRYONE","m":"py","x":100.8,"y":57.7,"d":1},{"id":"PAY_REVERSE","m":"py","x":410.8,"y":83.9,"d":2},{"id":"PAY_ROLLFWD","m":"py","x":84.4,"y":442.5,"d":1},{"id":"PAY_SCHEDULE","m":"py","x":60.5,"y":348.5,"d":1},{"id":"PAY_SPLIT","m":"py","x":65.8,"y":135.7,"d":1},{"id":"PAY_SPLITEVEN","m":"py","x":56.0,"y":66.3,"d":1},{"id":"PAY_SPLITRATIO","m":"py","x":236.2,"y":57.1,"d":1},{"id":"PAY_URGENT","m":"py","x":95.5,"y":51.5,"d":1},{"id":"PAY_VOIDONE","m":"py","x":383.4,"y":134.7,"d":1},{"id":"PAY_XFERLINK","m":"py","x":355.5,"y":359.0,"d":2},{"id":"PREAUTH","m":"au","x":942.1,"y":896.3,"d":1},{"id":"PREAUTH_CANCEL","m":"au","x":654.1,"y":864.8,"d":1},{"id":"PREAUTH_COMPLETE","m":"au","x":928.2,"y":932.0,"d":1},{"id":"PREAUTH_EXTEND","m":"au","x":870.3,"y":552.0,"d":1},{"id":"PREAUTH_INQ","m":"au","x":940.3,"y":620.8,"d":1},{"id":"PREAUTH_PARTUSE","m":"au","x":941.2,"y":933.6,"d":1},{"id":"RC_3WAY","m":"rc","x":450.1,"y":134.6,"d":2},{"id":"RC_4WAY","m":"rc","x":207.1,"y":50.7,"d":1},{"id":"RC_ACQMATCH","m":"rc","x":606.5,"y":53.7,"d":1},{"id":"RC_ACQ_DEP","m":"rc","x":156.3,"y":361.5,"d":1},{"id":"RC_ALERT","m":"rc","x":210.7,"y":50.2,"d":1},{"id":"RC_AMTDIFF","m":"rc","x":479.5,"y":57.2,"d":1},{"id":"RC_APPRGAP","m":"rc","x":762.5,"y":53.1,"d":1},{"id":"RC_APPRMATCH","m":"rc","x":602.4,"y":55.4,"d":1},{"id":"RC_APPR_ACQ","m":"rc","x":404.1,"y":57.8,"d":1},{"id":"RC_AUTOFIX","m":"rc","x":515.0,"y":52.8,"d":1},{"id":"RC_CLOSEDAY","m":"rc","x":569.9,"y":57.6,"d":1},{"id":"RC_CNTDIFF","m":"rc","x":318.2,"y":151.9,"d":1},{"id":"RC_CONFIRM","m":"rc","x":499.1,"y":52.5,"d":1},{"id":"RC_DEPGAP","m":"rc","x":134.7,"y":100.0,"d":1},{"id":"RC_DEPMATCH","m":"rc","x":382.7,"y":229.6,"d":1},{"id":"RC_DUPCHK","m":"rc","x":634.5,"y":331.0,"d":3},{"id":"RC_ESCALATE","m":"rc","x":650.4,"y":663.8,"d":2},{"id":"RC_EXCEPTION","m":"rc","x":711.5,"y":322.7,"d":7},{"id":"RC_EXCNOTIFY","m":"rc","x":91.6,"y":119.1,"d":1},{"id":"RC_FEEDIFF","m":"rc","x":457.1,"y":307.4,"d":1},{"id":"RC_FEERECON","m":"rc","x":473.1,"y":195.5,"d":1},{"id":"RC_FIXFEE","m":"rc","x":337.5,"y":52.0,"d":1},{"id":"RC_FIXFX","m":"rc","x":328.8,"y":535.9,"d":1},{"id":"RC_FIXROUND","m":"rc","x":444.1,"y":340.6,"d":1},{"id":"RC_FXDIFF","m":"rc","x":575.4,"y":116.9,"d":1},{"id":"RC_FXRECON","m":"rc","x":709.1,"y":50.3,"d":1},{"id":"RC_HOLDCLR","m":"rc","x":495.5,"y":52.5,"d":1},{"id":"RC_HOLDSET","m":"rc","x":409.4,"y":50.0,"d":1},{"id":"RC_LEDGERBAL","m":"rc","x":212.5,"y":354.5,"d":1},{"id":"RC_LEDGERLINK","m":"rc","x":396.7,"y":64.5,"d":1},{"id":"RC_LIMITCHK","m":"rc","x":493.5,"y":100.0,"d":1},{"id":"RC_MANUAL","m":"rc","x":411.9,"y":58.6,"d":1},{"id":"RC_NOTIFY","m":"rc","x":314.8,"y":61.7,"d":1},{"id":"RC_ORPHAN","m":"rc","x":635.1,"y":190.0,"d":1},{"id":"RC_OVERAMT","m":"rc","x":546.0,"y":56.7,"d":1},{"id":"RC_PAYLEDGER","m":"rc","x":168.4,"y":62.6,"d":1},{"id":"RC_PAYMATCH","m":"rc","x":310.8,"y":61.3,"d":1},{"id":"RC_PROGRESS","m":"rc","x":97.4,"y":435.6,"d":1},{"id":"RC_RECORR","m":"rc","x":398.9,"y":342.0,"d":1},{"id":"RC_REDIFF","m":"rc","x":615.5,"y":55.6,"d":1},{"id":"RC_REFULL","m":"rc","x":688.3,"y":261.8,"d":1},{"id":"RC_REFUNDREC","m":"rc","x":723.7,"y":72.5,"d":1},{"id":"RC_RELEASE","m":"rc","x":397.0,"y":57.7,"d":1},{"id":"RC_REMATCH","m":"rc","x":719.0,"y":287.1,"d":2},{"id":"RC_REPROC","m":"rc","x":496.3,"y":449.7,"d":2},{"id":"RC_RERUN","m":"rc","x":508.4,"y":55.0,"d":1},{"id":"RC_ROUNDDIFF","m":"rc","x":473.6,"y":213.1,"d":1},{"id":"RC_SNAPSHOT","m":"rc","x":166.6,"y":660.9,"d":1},{"id":"RC_STATUS","m":"rc","x":300.7,"y":165.0,"d":1},{"id":"RC_SUMCHK","m":"rc","x":501.8,"y":53.1,"d":1},{"id":"RC_TOLERANCE","m":"rc","x":625.3,"y":50.2,"d":1},{"id":"RC_UNDERAMT","m":"rc","x":651.4,"y":50.3,"d":1},{"id":"RC_UNMATCH","m":"rc","x":755.6,"y":408.0,"d":4},{"id":"RECONCILE","m":"rc","x":657.7,"y":91.9,"d":2},{"id":"RISK_SCORE_INQ","m":"au","x":772.5,"y":162.6,"d":1},{"id":"SETTLE","m":"st","x":644.4,"y":290.3,"d":3},{"id":"STANDIN","m":"au","x":701.9,"y":698.7,"d":2},{"id":"STANDIN_SETTLE","m":"au","x":930.7,"y":876.2,"d":1},{"id":"ST_ADJREVERSE","m":"st","x":725.5,"y":53.1,"d":1},{"id":"ST_ADJUST","m":"st","x":585.4,"y":166.0,"d":10},{"id":"ST_APPROVE","m":"st","x":849.9,"y":55.4,"d":1},{"id":"ST_APPROVEALL","m":"st","x":656.0,"y":51.0,"d":1},{"id":"ST_CANCEL","m":"st","x":747.5,"y":327.6,"d":2},{"id":"ST_CAPCHECK","m":"st","x":721.6,"y":54.4,"d":1},{"id":"ST_CHARGEBACK","m":"st","x":858.4,"y":216.2,"d":2},{"id":"ST_COLLATERAL","m":"st","x":200.8,"y":84.7,"d":1},{"id":"ST_CONFIRM","m":"st","x":425.9,"y":64.1,"d":1},{"id":"ST_CXLRECALC","m":"st","x":804.4,"y":50.6,"d":1},{"id":"ST_DAILYCLOSE","m":"st","x":357.4,"y":523.1,"d":2},{"id":"ST_DIFFCHK","m":"st","x":690.7,"y":58.0,"d":1},{"id":"ST_DISPUTE","m":"st","x":647.7,"y":50.9,"d":1},{"id":"ST_GRPSETTLE","m":"st","x":503.3,"y":162.4,"d":1},{"id":"ST_HOLD","m":"st","x":672.6,"y":361.7,"d":3},{"id":"ST_HOLDAMT","m":"st","x":729.0,"y":54.9,"d":1},{"id":"ST_INSTANTPAY","m":"st","x":712.1,"y":59.4,"d":1},{"id":"ST_LEDGERLINK","m":"st","x":732.3,"y":51.4,"d":1},{"id":"ST_LIMITCHK","m":"st","x":781.5,"y":56.7,"d":1},{"id":"ST_LOCKBATCH","m":"st","x":556.0,"y":59.8,"d":1},{"id":"ST_MDR","m":"st","x":592.0,"y":216.7,"d":9},{"id":"ST_MERCHRATE","m":"st","x":433.6,"y":65.2,"d":1},{"id":"ST_NETTING","m":"st","x":519.6,"y":175.1,"d":1},{"id":"ST_NEXTPAYDT","m":"st","x":413.6,"y":437.5,"d":1},{"id":"ST_OFFSET","m":"st","x":772.6,"y":101.5,"d":1},{"id":"ST_PAYDATE","m":"st","x":543.2,"y":121.2,"d":1},{"id":"ST_PAYSTATUS","m":"st","x":764.6,"y":52.9,"d":1},{"id":"ST_PRECONFIRM","m":"st","x":831.3,"y":52.2,"d":1},{"id":"ST_PROMOAPPLY","m":"st","x":709.7,"y":59.7,"d":1},{"id":"ST_RATEAPPLY","m":"st","x":795.3,"y":57.4,"d":1},{"id":"ST_RATECARD","m":"st","x":815.5,"y":56.9,"d":1},{"id":"ST_RECALC","m":"st","x":846.7,"y":284.5,"d":2},{"id":"ST_REFUNDCALC","m":"st","x":878.2,"y":245.8,"d":2},{"id":"ST_RELEASE","m":"st","x":604.7,"y":492.9,"d":3},{"id":"ST_RERUN","m":"st","x":786.6,"y":55.8,"d":1},{"id":"ST_SPLIT","m":"st","x":203.2,"y":66.1,"d":1},{"id":"ST_STATUS","m":"st","x":654.0,"y":189.8,"d":3},{"id":"ST_TAXINVCHK","m":"st","x":679.9,"y":59.0,"d":1},{"id":"ST_UNLOCK","m":"st","x":841.9,"y":52.7,"d":1},{"id":"ST_VAT","m":"st","x":835.9,"y":53.2,"d":1},{"id":"ST_VATADJUST","m":"st","x":208.4,"y":200.8,"d":1},{"id":"ST_VATDETAIL","m":"st","x":704.4,"y":61.1,"d":1},{"id":"ST_VOIDRECALC","m":"st","x":820.0,"y":98.9,"d":1},{"id":"ST_WHT","m":"st","x":709.9,"y":147.4,"d":2},{"id":"ST_XFERLINK","m":"st","x":232.8,"y":298.6,"d":1},{"id":"TOKEN_VERIFY","m":"au","x":866.3,"y":668.2,"d":1},{"id":"VELOCITY_CHK","m":"au","x":941.3,"y":937.2,"d":1},{"id":"VELOCITY_DAY","m":"au","x":780.4,"y":940.1,"d":1},{"id":"VL_AMOUNT","m":"vl","x":618.9,"y":165.8,"d":8},{"id":"VL_ANOMALY","m":"vl","x":852.5,"y":549.9,"d":1},{"id":"VL_APPRAMT","m":"vl","x":406.7,"y":271.2,"d":2},{"id":"VL_APPRNOPUR","m":"vl","x":943.1,"y":246.8,"d":2},{"id":"VL_APPR_ACQ","m":"vl","x":622.6,"y":274.2,"d":2},{"id":"VL_AXLEDGDC","m":"vl","x":851.8,"y":761.5,"d":1},{"id":"VL_AXPURAPPR","m":"vl","x":713.3,"y":227.4,"d":2},{"id":"VL_AXPURSETT","m":"vl","x":945.2,"y":129.3,"d":1},{"id":"VL_AXSETTPAY","m":"vl","x":370.3,"y":379.1,"d":4},{"id":"VL_BALANCE","m":"vl","x":739.8,"y":612.2,"d":2},{"id":"VL_BATCH_CHK","m":"vl","x":421.5,"y":249.9,"d":2},{"id":"VL_BIN","m":"vl","x":593.5,"y":417.8,"d":4},{"id":"VL_CANCELMIS","m":"vl","x":720.1,"y":569.4,"d":1},{"id":"VL_CARD","m":"vl","x":931.6,"y":114.7,"d":1},{"id":"VL_CHANSPLIT","m":"vl","x":918.0,"y":617.7,"d":1},{"id":"VL_CODEVAL","m":"vl","x":389.0,"y":191.7,"d":3},{"id":"VL_CROSSCHK","m":"vl","x":565.0,"y":294.3,"d":5},{"id":"VL_DAYLIMIT","m":"vl","x":887.7,"y":474.2,"d":1},{"id":"VL_DUP","m":"vl","x":542.3,"y":343.2,"d":3},{"id":"VL_DUPAPPR","m":"vl","x":939.3,"y":431.1,"d":1},{"id":"VL_DUPAUTH","m":"vl","x":629.8,"y":375.1,"d":1},{"id":"VL_DUPLEDGR","m":"vl","x":298.4,"y":737.5,"d":1},{"id":"VL_DUPPAY","m":"vl","x":894.6,"y":160.3,"d":1},{"id":"VL_DUPPURCH","m":"vl","x":564.9,"y":317.7,"d":3},{"id":"VL_DUPSETTLE","m":"vl","x":945.5,"y":112.9,"d":1},{"id":"VL_EXPIRY","m":"vl","x":727.2,"y":735.8,"d":2},{"id":"VL_FEE","m":"vl","x":459.5,"y":474.8,"d":3},{"id":"VL_FEERECALC","m":"vl","x":543.9,"y":500.3,"d":1},{"id":"VL_FORMAT","m":"vl","x":943.6,"y":228.3,"d":1},{"id":"VL_FXCHK","m":"vl","x":529.2,"y":368.4,"d":2},{"id":"VL_INSTCHK","m":"vl","x":940.5,"y":434.1,"d":1},{"id":"VL_LEDGBAL","m":"vl","x":440.1,"y":686.1,"d":2},{"id":"VL_LEDGENTRY","m":"vl","x":935.3,"y":174.9,"d":1},{"id":"VL_LEDGER","m":"vl","x":214.3,"y":772.3,"d":8},{"id":"VL_LIMIT","m":"vl","x":869.3,"y":497.8,"d":2},{"id":"VL_LONGOPEN","m":"vl","x":833.6,"y":485.7,"d":1},{"id":"VL_MDRRATE","m":"vl","x":925.6,"y":57.6,"d":1},{"id":"VL_MERCH","m":"vl","x":107.1,"y":249.4,"d":3},{"id":"VL_NEGBAL","m":"vl","x":705.4,"y":161.6,"d":1},{"id":"VL_NEGFEE","m":"vl","x":802.4,"y":192.2,"d":1},{"id":"VL_NEGNET","m":"vl","x":721.0,"y":414.3,"d":2},{"id":"VL_NIGHTTXN","m":"vl","x":874.1,"y":603.5,"d":1},{"id":"VL_OUTLIER","m":"vl","x":793.1,"y":592.4,"d":1},{"id":"VL_OVERLIMIT","m":"vl","x":943.2,"y":478.5,"d":2},{"id":"VL_PURNOAPPR","m":"vl","x":935.1,"y":418.5,"d":3},{"id":"VL_REFINTEG","m":"vl","x":943.3,"y":486.6,"d":1},{"id":"VL_REPORT","m":"vl","x":848.5,"y":302.4,"d":1},{"id":"VL_REQUIRED","m":"vl","x":905.8,"y":840.6,"d":1},{"id":"VL_RIAPPR","m":"vl","x":842.8,"y":92.8,"d":2},{"id":"VL_RICANCEL","m":"vl","x":940.2,"y":413.1,"d":1},{"id":"VL_RIFX","m":"vl","x":410.5,"y":600.9,"d":1},{"id":"VL_RIINSTALL","m":"vl","x":939.1,"y":405.7,"d":1},{"id":"VL_RILEDGER","m":"vl","x":853.4,"y":384.3,"d":1},{"id":"VL_RIMERCH","m":"vl","x":704.3,"y":877.6,"d":2},{"id":"VL_RIPAY","m":"vl","x":510.5,"y":130.7,"d":2},{"id":"VL_RIPURCH","m":"vl","x":817.1,"y":372.3,"d":1},{"id":"VL_RISETTLE","m":"vl","x":810.7,"y":359.8,"d":2},{"id":"VL_RITAXINV","m":"vl","x":942.3,"y":62.3,"d":1},{"id":"VL_RULECOUNT","m":"vl","x":936.3,"y":439.9,"d":1},{"id":"VL_SALES","m":"vl","x":589.5,"y":769.8,"d":3},{"id":"VL_SETTLE","m":"vl","x":767.6,"y":108.5,"d":7},{"id":"VL_SPIKEAMT","m":"vl","x":944.8,"y":146.6,"d":1},{"id":"VL_STATUS_CHK","m":"vl","x":301.9,"y":424.3,"d":2},{"id":"VL_SUMFEE","m":"vl","x":937.1,"y":458.2,"d":1},{"id":"VL_SUMFEECHK","m":"vl","x":505.0,"y":495.8,"d":3},{"id":"VL_SUMGROSS","m":"vl","x":326.5,"y":275.2,"d":3},{"id":"VL_SUMMARY","m":"vl","x":939.5,"y":334.9,"d":1},{"id":"VL_SUMNETCHK","m":"vl","x":935.5,"y":450.8,"d":1},{"id":"VL_SUMRECON","m":"vl","x":669.7,"y":653.8,"d":4},{"id":"VL_SUMTXNCNT","m":"vl","x":364.0,"y":430.6,"d":3},{"id":"VL_SUSPACT","m":"vl","x":911.1,"y":66.4,"d":1},{"id":"VL_SUSPESCAL","m":"vl","x":944.1,"y":484.1,"d":1},{"id":"VL_THRESHOLD","m":"vl","x":936.4,"y":374.9,"d":1},{"id":"VL_VELOCITY","m":"vl","x":845.5,"y":828.7,"d":2},{"id":"VL_ZERONET","m":"vl","x":905.4,"y":110.1,"d":1}],"EDGES":[["ACQUIRE","RECONCILE"],["ACQ_ALERTDUP","VL_DUPPURCH"],["ACQ_AMTFIX","VL_AMOUNT"],["ACQ_APPRLINK","LIMIT_DEC"],["ACQ_APPRMAP","AUTH_CANCEL"],["ACQ_CANCEL","LIMIT_RST"],["ACQ_CANCEL","LG_REVERSE"],["ACQ_CANCEL","ST_CANCEL"],["ACQ_CB_OPEN","ST_CHARGEBACK"],["ACQ_CB_REVERSE","LG_REVERSE"],["ACQ_CLAIMREG","ST_DISPUTE"],["ACQ_CORRECT","LG_CORRECT"],["ACQ_DDC","MG_LOG"],["ACQ_DUPCHK","VL_DUP"],["ACQ_EDC","MG_LOG"],["ACQ_EDI","MG_SEND"],["ACQ_EDIRESEND","MG_RESEND"],["ACQ_ESCROW","PAY_HOLD"],["ACQ_ESCROWREL","PAY_RELEASE"],["ACQ_EXCHANGE","CM_FX_CROSS"],["ACQ_FEEADJ","LG_ADJUST"],["ACQ_FEERECALC","ST_RECALC"],["ACQ_FOREIGN","CM_FX_CONV"],["ACQ_FXCONVERT","CM_FX"],["ACQ_FXRATE","CM_FX_VALID"],["ACQ_GUARANTEE","ST_COLLATERAL"],["ACQ_HOLD","PAY_HOLD"],["ACQ_INSTALL","VL_INSTCHK"],["ACQ_INSTCXL","LIMIT_RST"],["ACQ_LIMITCHK","VL_LIMIT"],["ACQ_LIMITEXC","VL_OVERLIMIT"],["ACQ_MERCHSUM","MM_MERCH_INQ"],["ACQ_NETCALC","LG_NETPOS"],["ACQ_PARTCXL","LIMIT_RST"],["ACQ_PARTCXL","LG_PARTREVERSE"],["ACQ_PARTRFND","ST_REFUNDCALC"],["ACQ_PROMO","ST_PROMOAPPLY"],["ACQ_REFUND","LIMIT_RST"],["ACQ_REFUND","LG_REVERSE"],["ACQ_RELEASE","PAY_RELEASE"],["ACQ_REMATCH","RC_REMATCH"],["ACQ_REPROC","RC_REPROC"],["ACQ_RESERVE","ST_HOLD"],["ACQ_RESERVECXL","ST_RELEASE"],["ACQ_RETURN","RC_REFUNDREC"],["ACQ_SETTLELINK","ST_MDR"],["ACQ_SETTLELINK","LG_BALCHK"],["ACQ_SPLITPAY","ST_SPLIT"],["ACQ_TAXCXL","ST_ADJUST"],["ACQ_TAXINV","ST_ADJUST"],["ACQ_TAXREVERSE","LG_REVERSE"],["ACQ_UNMATCH","RC_UNMATCH"],["ACQ_VELOCITY","VL_VELOCITY"],["ACQ_VOID","LG_VOIDVOUCHER"],["ACQ_WHT","ST_WHT"],["ACQ_WHT","ST_ADJUST"],["ACQ_XFERLINK","PAY_XFERLINK"],["AUTH","LIMIT_DEC"],["AUTH","FRAUD_DETECT"],["AUTH_AMT_ADJUST","LIMIT_DEC"],["AUTH_APPROVE","LIMIT_DEC"],["AUTH_CANCEL","LIMIT_RST"],["AUTH_CAPTURE","ACQ_APPRGAP"],["AUTH_DECLINE","CM_LOG"],["AUTH_DUP_CHK","FRAUD_DETECT"],["AUTH_EXPIRE_CHK","LIMIT_RST"],["AUTH_HOLD","LIMIT_CHK"],["AUTH_PARTAPPR","LIMIT_DEC"],["AUTH_PARTCXL","LIMIT_RST"],["AUTH_RELEASE","LIMIT_RST"],["AUTH_RESEND","MG_SEND"],["AUTH_RETRY","MG_SEND"],["AUTH_REVERSE","LIMIT_RST"],["AUTH_VOID","LIMIT_RST"],["BLACKLIST_CHK","FRAUD_DETECT"],["CARD_LOST_REG","MG_SEND"],["CARD_STOLEN_REG","MG_SEND"],["CARD_VALIDATE","CM_LUHN"],["FRAUD_DETECT","MG_LOG"],["INSTALL_AUTH","LIMIT_DEC"],["LIMIT_CHK","CM_LOG"],["LIMIT_DEC","MG_LOG"],["LIMIT_EXHAUST_LST","CM_LOG"],["LIMIT_FREEZE","CM_LOG"],["LIMIT_OVER_ALERT","CM_LOG"],["LIMIT_RST","MG_LOG"],["NOAUTH_CAPTURE","ACQ_CORRAPPR"],["PREAUTH","LIMIT_DEC"],["PREAUTH_CANCEL","LIMIT_RST"],["PREAUTH_COMPLETE","LIMIT_DEC"],["PREAUTH_EXTEND","LIMIT_CHK"],["PREAUTH_PARTUSE","LIMIT_RST"],["STANDIN","LIMIT_CHK"],["STANDIN","MG_LOG"],["STANDIN_SETTLE","LIMIT_DEC"],["TOKEN_VERIFY","CM_LUHN"],["VELOCITY_CHK","FRAUD_DETECT"],["CL_AMTXCHECK","VL_AXPURSETT"],["CL_APPRDELEG","CL_APPRSTAT"],["CL_APPRL1","CL_APPRL2"],["CL_APPRL2","CL_APPRFINAL"],["CL_APPROVE","CL_APPRL2"],["CL_APPRREJECT","CL_ESCALATE"],["CL_APPRREQ","CL_APPRL2"],["CL_BALVERIFY","VL_LEDGBAL"],["CL_CANCEL","LG_REVERSE"],["CL_CHKALL","VL_CROSSCHK"],["CL_CHKPENDING","VL_LONGOPEN"],["CL_CHKUNMATCH","VL_PURNOAPPR"],["CL_CHKVOID","VL_CANCELMIS"],["CL_CHNVERIFY","VL_CHANSPLIT"],["CL_CNTVERIFY","VL_RULECOUNT"],["CL_CNTXCHECK","VL_AXSETTPAY"],["CL_CORPCLOSE","LG_CORPSUM"],["CL_CORPVERIFY","VL_REPORT"],["CL_DAILY","VL_SALES"],["CL_DAILY","LG_CLOSE_LINK"],["CL_DAYVERIFY","VL_SALES"],["CL_DIFFCHK","VL_AMOUNT"],["CL_DIVCLOSE","LG_DEPTSUM"],["CL_DUPCHK","VL_DUP"],["CL_FEECROSS","VL_SUMFEECHK"],["CL_FEEVERIFY","VL_FEE"],["CL_FORCECLOSE","LG_CLOSE_LINK"],["CL_HALFCLOSE","LG_ROLLTB"],["CL_HYVERIFY","VL_SUMFEE"],["CL_MAINCLOSE","LG_CLOSE_LINK"],["CL_MERCLOSE","LG_MERCHPROOF"],["CL_MERXCHECK","VL_RIMERCH"],["CL_MIDCLOSE","LG_MERCHBAL"],["CL_MONTHLY","LG_MONTHLYSUM"],["CL_MONVERIFY","VL_SUMMARY"],["CL_NETCROSS","VL_SETTLE"],["CL_NETVERIFY","VL_NEGNET"],["CL_POSTTRIG","ST_DAILYCLOSE"],["CL_PRECHECK","VL_REQUIRED"],["CL_QTRVERIFY","VL_SUMRECON"],["CL_QUARTER","LG_PERIODTB"],["CL_RECLOSE","LG_REVERSE"],["CL_RECON","VL_SUMRECON"],["CL_ROLLBACK","LG_REVERSE"],["CL_SEGVERIFY","VL_SUMNETCHK"],["CL_SEMIMONTH","LG_CORPSUM"],["CL_SNAPSHOT","LG_TRIALBAL"],["CL_SNAPXCHECK","VL_AXLEDGDC"],["CL_STCROSS","VL_RISETTLE"],["CL_TENDAY","LG_DEPTSUM"],["CL_TRIGSETTLE","SETTLE"],["CL_VERIFY","VL_BALANCE"],["CL_WEEKLY","LG_ACCTSUM"],["CL_WEEKVERIFY","VL_SUMTXNCNT"],["CL_YEAREND","LG_SPANTB"],["CL_YEARVERIFY","VL_SUMGROSS"],["CM_ADDDAYS","CM_HOLIDAY_CHK"],["CM_BATDEP_CHK","CM_BATLAST"],["CM_BATDEP_SET","CM_BATLAST"],["CM_BATHIST_CNT","CM_BATLAST"],["CM_BATRERUN_REQ","CM_BATLAST"],["CM_BATSCHD_DEL","CM_LOG"],["CM_BATSCHD_REG","CM_LOG"],["CM_BIZDAY_ADD","CM_HOLIDAY_CHK"],["CM_BIZDAY_CNT","CM_HOLIDAY_CHK"],["CM_CACHE_INV","CM_PARAM"],["CM_CACHE_LOAD","CM_PARAM"],["CM_CODE","CM_PARAM"],["CM_CODEGRP_REG","CM_PARAM"],["CM_ERRMSG","CM_LOG"],["CM_FX_CONV","CM_FX"],["CM_FX_CROSS","CM_FX"],["CM_FX_INVERT","CM_FX"],["CM_FX_MARGIN","CM_FX"],["CM_FX_PUBLISH","CM_LOG"],["CM_FX_TRIANGLE","CM_FX"],["CM_MONTHEND","CM_BIZDAY"],["CM_MSG_RENDER","CM_LOG"],["CM_NEXTBIZ","CM_BIZDAY"],["CM_NOTI_QUOTA","CM_LOG"],["CM_NOTI_RETRY","CM_LOG"],["CM_NOTI_SEND","CM_LOG"],["CM_NOTI_TMPL","CM_LOG"],["CM_PREVBIZ","CM_BIZDAY"],["CM_SEQ","CM_LOG"],["CM_SEQ_ALLOC","CM_LOG"],["CM_SEQ_DAILY","CM_LOG"],["CM_SEQ_MULTI","CM_LOG"],["CM_SEQ_RESET","CM_LOG"],["CM_SEQ_STAMP","CM_LOG"],["CM_SEQ_TYPED","CM_LOG"],["LG_ACCRUEREV","LG_POST"],["LG_ACCTSUM","LG_RECALC"],["LG_ACQPOST","LG_BALCHK"],["LG_ADJUST","LG_BALCHK"],["LG_ALLOWANCE","LG_POST"],["LG_ALLOWRECALC","LG_ACCTSUM"],["LG_BADDEBT","LG_POST"],["LG_BADDEBTRCV","LG_POST"],["LG_BALCERT","LG_BALCHK"],["LG_BALPROOF","LG_BALCHK"],["LG_BLACKENTRY","LG_BALCHK"],["LG_BSSUMMARY","VL_LEDGER"],["LG_CLOSE_LINK","CL_LOCK"],["LG_CORPSUM","LG_RECALC"],["LG_CORRECT","LG_BALCHK"],["LG_DEPTSUM","LG_RECALC"],["LG_DOUBLE","LG_BALCHK"],["LG_FEEACCRUE","LG_FEEPOST"],["LG_FEEPOST","LG_BALCHK"],["LG_HALFCLOSE","LG_TRIALBAL"],["LG_MERCHBAL","LG_RECALC"],["LG_MERCHPROOF","LG_RECALC"],["LG_MONTHCLOSE","LG_TRIALBAL"],["LG_MONTHLYSUM","LG_RECALC"],["LG_PARTREVERSE","LG_POST"],["LG_PERIODTB","VL_LEDGER"],["LG_PLSUMMARY","VL_LEDGER"],["LG_POST","LG_BALCHK"],["LG_PREPAIDAMORT","LG_PREPAIDPOST"],["LG_PREPAIDPOST","LG_BALCHK"],["LG_QTRCLOSE","LG_TRIALBAL"],["LG_REDADJUST","LG_POST"],["LG_REDBLACKNET","LG_REDENTRY"],["LG_REDENTRY","LG_BALCHK"],["LG_REPOST","LG_POST"],["LG_REVERSE","LG_BALCHK"],["LG_ROLLTB","VL_LEDGER"],["LG_SETTLEPOST","LG_BALCHK"],["LG_SPANTB","VL_LEDGER"],["LG_SUSPENSE","LG_BALCHK"],["LG_TRANSFER","LG_BALCHK"],["LG_TRIALBAL","VL_LEDGER"],["LG_UNEARNPOST","LG_BALCHK"],["LG_UNEARNRECOG","LG_UNEARNPOST"],["LG_VOUCHER","LG_BALCHK"],["LG_WEEKCLOSE","LG_TRIALBAL"],["LG_WRITEOFF","LG_POST"],["LG_XFERPOST","LG_BALCHK"],["LG_YEARCLOSE","LG_TRIALBAL"],["MG_ACK","MG_SEND"],["MG_BITMAP","MG_PARSE"],["MG_BMPPARSE","MG_PARSE"],["MG_CHANFAILOVER","MG_ROUTE"],["MG_CHANHEALTH","MG_CHANPING"],["MG_CHANOPEN","MG_ROUTE"],["MG_CHANSWITCH","MG_ROUTE"],["MG_DECODE","MG_PARSE"],["MG_ENCODE","MG_SEND"],["MG_ERRREQUEUE","MG_SEND"],["MG_ERRRETRY","MG_SEND"],["MG_FROMISO","MG_PARSE"],["MG_ISO8583","MG_PARSE"],["MG_KEYCHECK","CM_HASH_DJB2"],["MG_KEYLOAD","CM_HASH_FNV"],["MG_LOADBAL","MG_CHANPING"],["MG_MAC","CM_CRC"],["MG_MACGEN","CM_HASH_SUM"],["MG_MACSESSION","CM_HASH_SUM"],["MG_MACVERIFY","CM_CRC"],["MG_NACK","MG_SEND"],["MG_PACK","MG_SEND"],["MG_PARSE","AUTH"],["MG_REASM","MG_PARSE"],["MG_RECV","MG_PARSE"],["MG_RESEND","MG_SEND"],["MG_RESNDONE","MG_SEND"],["MG_ROUTE","MG_CHANSTAT"],["MG_SEND","MG_STAN"],["MG_SEQFILL","MG_STAN"],["MG_SEQNEXT","MG_STAN"],["MG_TOISO","MG_SEND"],["MG_UNPACK","MG_PARSE"],["MM_ACCT_REG","CM_LUHN"],["MM_ACCT_VERIFY","CM_LUHN"],["MM_APPLY_APPROVE","MM_VALIDATE"],["MM_APPLY_REG","CM_SEQ"],["MM_BIN_REG","VL_BIN"],["MM_BIZNO_CHECK","CM_CHECKDIGIT"],["MM_CHK_LIMIT","LIMIT_CHK"],["MM_CODE_REG","VL_CODEVAL"],["MM_CONTRACT_AMEND","CM_SEQ"],["MM_CONTRACT_NEW","CM_SEQ"],["MM_CONTRACT_RENEW","CM_SEQ"],["MM_FEERATE_SET","ST_MDR"],["MM_GRADE_ADJUST","VL_MERCH"],["MM_ISSUER_REG","VL_BIN"],["MM_LIMIT_SET","LIMIT_CHK"],["MM_MCC_REG","VL_CODEVAL"],["MM_MCC_UPD","VL_CODEVAL"],["MM_MERCH_CLOSE","CM_LOG"],["MM_MERCH_DORMANT","CM_LOG"],["MM_MERCH_GRADE","VL_MERCH"],["MM_MERCH_PAUSE","CM_LOG"],["MM_MERCH_REG","MM_VALIDATE"],["MM_MERCH_RESUME","CM_LOG"],["MM_MERCH_STATUS","MM_VALIDATE"],["MM_MERCH_UPD","MM_VALIDATE"],["MM_RATE_APPROVE","ST_MDR"],["MM_RATE_REQ","CM_LOG"],["MM_RISK_SCORE","CM_LOG"],["MM_RISK_SET","VL_MERCH"],["MM_TERMINAL_REG","CM_SEQ"],["MM_TERM_INSTALL","CM_SEQ"],["MM_VALIDATE","CM_LOG"],["PAY_ACCTCHK","LG_POST"],["PAY_ACCTVERIFY","PAY_ACCTCHK"],["PAY_ADJUST","ST_ADJUST"],["PAY_APPRBULK","PAY_FILEGEN"],["PAY_APPROVE","PAY_FILEGEN"],["PAY_BANKFILE","MG_SEND"],["PAY_BANKVERIFY","PAY_ACCTCHK"],["PAY_CANCEL","LG_REVERSE"],["PAY_CANCEL","ST_ADJUST"],["PAY_CHARGEBACK","LG_REVERSE"],["PAY_CLOSE","LG_POST"],["PAY_COMBINE","PAY_ACCTCHK"],["PAY_CONFIRM","LG_POST"],["PAY_FILEGEN","PAY_ACCTCHK"],["PAY_FILEREBUILD","PAY_ACCTCHK"],["PAY_HOLD","ST_HOLD"],["PAY_MERGE","PAY_ACCTCHK"],["PAY_NETOFF","LG_POST"],["PAY_RECLAIM","LG_REVERSE"],["PAY_RECLAIM","ST_ADJUST"],["PAY_REFUND","LG_REVERSE"],["PAY_RELEASE","ST_RELEASE"],["PAY_REMIT","MG_SEND"],["PAY_REPROC","PAY_FAILRSN"],["PAY_REQUEUE","MG_SEND"],["PAY_RESULT","LG_POST"],["PAY_RESVMODIFY","CM_BIZDAY"],["PAY_RETRY","PAY_FAILRSN"],["PAY_RETRYONE","PAY_FAILRSN"],["PAY_REVERSE","LG_REVERSE"],["PAY_REVERSE","ST_ADJUST"],["PAY_ROLLFWD","CM_BIZDAY"],["PAY_SCHEDULE","CM_BIZDAY"],["PAY_SPLIT","PAY_ACCTCHK"],["PAY_SPLITEVEN","PAY_ACCTCHK"],["PAY_SPLITRATIO","PAY_ACCTCHK"],["PAY_URGENT","PAY_ACCTCHK"],["PAY_VOIDONE","LG_REVERSE"],["PAY_XFERLINK","MG_SEND"],["RC_3WAY","VL_APPR_ACQ"],["RC_3WAY","LG_THREEWAY"],["RC_4WAY","VL_CROSSCHK"],["RC_ACQMATCH","VL_AXPURAPPR"],["RC_ACQ_DEP","VL_LEDGER"],["RC_ALERT","CM_NOTI_SEND"],["RC_AMTDIFF","VL_AMOUNT"],["RC_APPRGAP","VL_APPRNOPUR"],["RC_APPRMATCH","VL_RIAPPR"],["RC_APPR_ACQ","VL_APPRAMT"],["RC_AUTOFIX","LG_POST"],["RC_CLOSEDAY","ST_LOCKBATCH"],["RC_CNTDIFF","VL_SUMTXNCNT"],["RC_CONFIRM","ST_STATUS"],["RC_DEPGAP","VL_AXSETTPAY"],["RC_DEPMATCH","VL_AXSETTPAY"],["RC_DUPCHK","CM_LOG"],["RC_ESCALATE","CM_NOTI_HIST"],["RC_EXCEPTION","CM_LOG"],["RC_EXCNOTIFY","CM_NOTI_SEND"],["RC_FEEDIFF","VL_FEE"],["RC_FEERECON","VL_SUMFEECHK"],["RC_FIXFEE","ST_MERCHRATE"],["RC_FIXFX","CM_FX_CONV"],["RC_FIXROUND","CM_AMT_ROUND"],["RC_FXDIFF","VL_FXCHK"],["RC_FXRECON","CM_FX_CONV"],["RC_HOLDCLR","ST_UNLOCK"],["RC_HOLDSET","ST_HOLDAMT"],["RC_LEDGERBAL","LG_BALCHK"],["RC_LEDGERLINK","LG_POST"],["RC_LIMITCHK","LIMIT_CHK"],["RC_MANUAL","LG_POST"],["RC_NOTIFY","CM_NOTI_SEND"],["RC_ORPHAN","VL_PURNOAPPR"],["RC_OVERAMT","VL_AMOUNT"],["RC_PAYLEDGER","LG_POST"],["RC_PAYMATCH","VL_RIPAY"],["RC_PROGRESS","CM_STATUS"],["RC_RECORR","LG_ADJUST"],["RC_REDIFF","VL_AMOUNT"],["RC_REFULL","VL_SUMRECON"],["RC_RELEASE","ST_PAYSTATUS"],["RC_REMATCH","VL_DUPPURCH"],["RC_REPROC","VL_STATUS_CHK"],["RC_RERUN","VL_BATCH_CHK"],["RC_ROUNDDIFF","CM_AMT_ROUND"],["RC_SNAPSHOT","LG_JOURNAL"],["RC_STATUS","CM_STATUS"],["RC_SUMCHK","VL_SUMGROSS"],["RC_TOLERANCE","VL_AMOUNT"],["RC_UNDERAMT","VL_AMOUNT"],["RC_UNMATCH","CM_LOG"],["RECONCILE","SETTLE"],["SETTLE","ST_MDR"],["ST_ADJREVERSE","LG_REVERSE"],["ST_ADJUST","LG_POST"],["ST_APPROVE","PAY_FILEGEN"],["ST_APPROVEALL","PAY_FILEGEN"],["ST_CANCEL","LG_REVERSE"],["ST_CAPCHECK","VL_SETTLE"],["ST_CHARGEBACK","LG_REVERSE"],["ST_CONFIRM","PAY_FILEGEN"],["ST_CXLRECALC","ST_MDR"],["ST_DAILYCLOSE","LG_POST"],["ST_DIFFCHK","VL_SETTLE"],["ST_GRPSETTLE","LG_POST"],["ST_HOLD","LG_POST"],["ST_INSTANTPAY","PAY_FILEGEN"],["ST_LEDGERLINK","LG_POST"],["ST_LIMITCHK","VL_SETTLE"],["ST_MDR","LG_SETTLEPOST"],["ST_NETTING","LG_POST"],["ST_NEXTPAYDT","CM_BIZDAY"],["ST_OFFSET","LG_POST"],["ST_PAYDATE","CM_BIZDAY"],["ST_PRECONFIRM","VL_SETTLE"],["ST_RATEAPPLY","ST_MDR"],["ST_RECALC","ST_MDR"],["ST_REFUNDCALC","LG_REVERSE"],["ST_RELEASE","LG_POST"],["ST_RERUN","ST_MDR"],["ST_TAXINVCHK","VL_SETTLE"],["ST_VAT","ST_ADJUST"],["ST_VATADJUST","LG_POST"],["ST_VOIDRECALC","LG_REVERSE"],["ST_WHT","ST_ADJUST"],["ST_XFERLINK","LG_POST"],["VL_AMOUNT","CM_LOG"],["VL_ANOMALY","FRAUD_DETECT"],["VL_APPRAMT","CM_LOG"],["VL_APPRNOPUR","AUTH_HISTORY"],["VL_APPR_ACQ","CM_LOG"],["VL_AXPURAPPR","CM_LOG"],["VL_AXSETTPAY","CM_LOG"],["VL_BALANCE","LG_BALCHK"],["VL_BATCH_CHK","CM_LOG"],["VL_BIN","CM_LUHN"],["VL_BIN","BIN_ROUTE_INQ"],["VL_CARD","CM_LUHN"],["VL_CROSSCHK","AUTH_STATUS"],["VL_CROSSCHK","ST_STATUS"],["VL_CROSSCHK","LG_STATUS"],["VL_DAYLIMIT","LIMIT_CHK"],["VL_DUP","RC_DUPCHK"],["VL_DUPAPPR","AUTH_SUMMARY"],["VL_DUPAUTH","RC_UNMATCH"],["VL_DUPLEDGR","LG_DUPSCAN"],["VL_DUPPAY","RC_DUPCHK"],["VL_DUPPURCH","CM_LOG"],["VL_DUPSETTLE","RC_UNMATCH"],["VL_EXPIRY","CM_LUHN"],["VL_EXPIRY","CARD_EXPIRE_CHK"],["VL_FEE","CM_LOG"],["VL_FEERECALC","CM_AMT_ROUND"],["VL_FORMAT","CM_LUHN"],["VL_FXCHK","CM_FX_VALID"],["VL_LEDGBAL","LG_BALCHK"],["VL_LEDGENTRY","LG_INQUIRY"],["VL_LEDGER","CM_LOG"],["VL_LIMIT","LIMIT_CHK"],["VL_MDRRATE","ST_RATECARD"],["VL_NEGBAL","RC_EXCEPTION"],["VL_NEGFEE","RC_EXCEPTION"],["VL_NEGNET","RC_EXCEPTION"],["VL_NIGHTTXN","FRAUD_RULE_NIGHT"],["VL_OUTLIER","FRAUD_DETECT"],["VL_OVERLIMIT","LIMIT_CHK"],["VL_PURNOAPPR","AUTH_HISTORY"],["VL_REFINTEG","LG_INQUIRY"],["VL_RIAPPR","AUTH_STATUS"],["VL_RICANCEL","CANCEL_STATUS"],["VL_RIFX","CM_FX_CONV"],["VL_RIINSTALL","PREAUTH_INQ"],["VL_RILEDGER","LG_STATUS"],["VL_RIMERCH","CM_CODE"],["VL_RIPAY","LG_INQUIRY"],["VL_RIPURCH","AUTH_HISTORY"],["VL_RISETTLE","ST_STATUS"],["VL_RITAXINV","ST_VATDETAIL"],["VL_SALES","RC_EXCEPTION"],["VL_SETTLE","RC_EXCEPTION"],["VL_SPIKEAMT","FRAUD_RULE_AMT"],["VL_STATUS_CHK","CM_STATUS"],["VL_SUMFEECHK","CM_LOG"],["VL_SUMGROSS","CM_LOG"],["VL_SUMRECON","CM_LOG"],["VL_SUMTXNCNT","CM_LOG"],["VL_SUSPACT","RISK_SCORE_INQ"],["VL_SUSPESCAL","RC_ESCALATE"],["VL_THRESHOLD","FRAUD_DETECT"],["VL_VELOCITY","VELOCITY_DAY"],["VL_ZERONET","RC_EXCEPTION"]],"CHAINS":[["ACQUIRE","RECONCILE","SETTLE","ST_MDR","LG_SETTLEPOST","LG_BALCHK"],["ACQ_SETTLELINK","ST_MDR","LG_SETTLEPOST","LG_BALCHK"],["MG_RECV","MG_PARSE","AUTH","FRAUD_DETECT","MG_LOG"],["CL_DAILY","VL_SALES","RC_EXCEPTION","CM_LOG"],["PAY_APPROVE","PAY_FILEGEN","PAY_ACCTCHK","LG_POST","LG_BALCHK"]],"STAT":{"nodes":552,"edges":494,"callees":168,"modxedge":41,"maxdepth":6}}; +window.CALLGRAPH = {"MODULES":[{"id":"ac","nm":"매입","svc":138,"in":2,"out":57},{"id":"au","nm":"승인/한도","svc":136,"in":30,"out":17},{"id":"cl","nm":"마감","svc":133,"in":1,"out":50},{"id":"cm","nm":"공통","svc":133,"in":73,"out":0},{"id":"lg","nm":"원장","svc":133,"in":70,"out":7},{"id":"mg","nm":"전문게이트웨이","svc":134,"in":16,"out":7},{"id":"mm","nm":"마스터","svc":135,"in":1,"out":28},{"id":"py","nm":"지급","svc":133,"in":9,"out":24},{"id":"rc","nm":"대사","svc":133,"in":16,"out":52},{"id":"st","nm":"정산/수수료","svc":137,"in":36,"out":27},{"id":"vl","nm":"정합성검증","svc":133,"in":80,"out":65}],"MODEDGES":[{"f":"ac","t":"rc","c":5},{"f":"ac","t":"vl","c":7},{"f":"ac","t":"au","c":6},{"f":"ac","t":"lg","c":10},{"f":"ac","t":"st","c":15},{"f":"ac","t":"mg","c":4},{"f":"ac","t":"py","c":5},{"f":"ac","t":"cm","c":4},{"f":"ac","t":"mm","c":1},{"f":"au","t":"ac","c":2},{"f":"au","t":"cm","c":7},{"f":"au","t":"mg","c":8},{"f":"cl","t":"vl","c":30},{"f":"cl","t":"lg","c":18},{"f":"cl","t":"st","c":2},{"f":"lg","t":"vl","c":6},{"f":"lg","t":"cl","c":1},{"f":"mg","t":"cm","c":6},{"f":"mg","t":"au","c":1},{"f":"mm","t":"cm","c":16},{"f":"mm","t":"vl","c":8},{"f":"mm","t":"au","c":2},{"f":"mm","t":"st","c":2},{"f":"py","t":"lg","c":11},{"f":"py","t":"st","c":6},{"f":"py","t":"mg","c":4},{"f":"py","t":"cm","c":3},{"f":"rc","t":"vl","c":24},{"f":"rc","t":"cm","c":13},{"f":"rc","t":"lg","c":7},{"f":"rc","t":"st","c":7},{"f":"rc","t":"au","c":1},{"f":"st","t":"lg","c":16},{"f":"st","t":"py","c":4},{"f":"st","t":"vl","c":5},{"f":"st","t":"cm","c":2},{"f":"vl","t":"cm","c":22},{"f":"vl","t":"au","c":20},{"f":"vl","t":"lg","c":8},{"f":"vl","t":"st","c":4},{"f":"vl","t":"rc","c":11}],"NODES":[{"id":"ACQUIRE","m":"ac","x":914.8,"y":122.0,"d":1},{"id":"ACQ_ALERTDUP","m":"ac","x":938.8,"y":459.3,"d":1},{"id":"ACQ_AMTFIX","m":"ac","x":911.3,"y":475.9,"d":1},{"id":"ACQ_APPRGAP","m":"ac","x":933.6,"y":838.2,"d":1},{"id":"ACQ_APPRLINK","m":"ac","x":939.1,"y":800.6,"d":1},{"id":"ACQ_APPRMAP","m":"ac","x":944.2,"y":500.6,"d":1},{"id":"ACQ_CANCEL","m":"ac","x":795.9,"y":448.4,"d":3},{"id":"ACQ_CB_OPEN","m":"ac","x":945.1,"y":221.2,"d":1},{"id":"ACQ_CB_REVERSE","m":"ac","x":876.1,"y":220.8,"d":1},{"id":"ACQ_CLAIMREG","m":"ac","x":464.1,"y":197.9,"d":1},{"id":"ACQ_CORRAPPR","m":"ac","x":946.3,"y":745.1,"d":1},{"id":"ACQ_CORRECT","m":"ac","x":360.6,"y":836.6,"d":1},{"id":"ACQ_DDC","m":"ac","x":939.1,"y":707.1,"d":1},{"id":"ACQ_DUPCHK","m":"ac","x":716.9,"y":281.6,"d":1},{"id":"ACQ_EDC","m":"ac","x":945.0,"y":679.0,"d":1},{"id":"ACQ_EDI","m":"ac","x":731.8,"y":603.0,"d":1},{"id":"ACQ_EDIRESEND","m":"ac","x":642.2,"y":575.9,"d":1},{"id":"ACQ_ESCROW","m":"ac","x":786.1,"y":280.5,"d":1},{"id":"ACQ_ESCROWREL","m":"ac","x":945.3,"y":504.6,"d":1},{"id":"ACQ_EXCHANGE","m":"ac","x":892.6,"y":777.3,"d":1},{"id":"ACQ_FEEADJ","m":"ac","x":397.1,"y":506.8,"d":1},{"id":"ACQ_FEERECALC","m":"ac","x":913.8,"y":322.5,"d":1},{"id":"ACQ_FOREIGN","m":"ac","x":367.9,"y":531.5,"d":1},{"id":"ACQ_FXCONVERT","m":"ac","x":299.0,"y":848.1,"d":1},{"id":"ACQ_FXRATE","m":"ac","x":909.0,"y":554.6,"d":1},{"id":"ACQ_GUARANTEE","m":"ac","x":926.2,"y":361.5,"d":1},{"id":"ACQ_HOLD","m":"ac","x":895.1,"y":99.0,"d":1},{"id":"ACQ_INSTALL","m":"ac","x":945.9,"y":432.1,"d":1},{"id":"ACQ_INSTCXL","m":"ac","x":946.5,"y":430.0,"d":1},{"id":"ACQ_LIMITCHK","m":"ac","x":931.9,"y":311.4,"d":1},{"id":"ACQ_LIMITEXC","m":"ac","x":944.4,"y":780.3,"d":1},{"id":"ACQ_MERCHSUM","m":"ac","x":727.8,"y":317.5,"d":1},{"id":"ACQ_NETCALC","m":"ac","x":675.2,"y":799.6,"d":1},{"id":"ACQ_PARTCXL","m":"ac","x":645.7,"y":664.2,"d":2},{"id":"ACQ_PARTRFND","m":"ac","x":933.2,"y":354.8,"d":1},{"id":"ACQ_PROMO","m":"ac","x":949.1,"y":82.7,"d":1},{"id":"ACQ_REFUND","m":"ac","x":830.1,"y":544.4,"d":2},{"id":"ACQ_RELEASE","m":"ac","x":943.4,"y":517.7,"d":1},{"id":"ACQ_REMATCH","m":"ac","x":943.0,"y":527.5,"d":1},{"id":"ACQ_REPROC","m":"ac","x":558.8,"y":240.7,"d":1},{"id":"ACQ_RESERVE","m":"ac","x":836.0,"y":345.0,"d":1},{"id":"ACQ_RESERVECXL","m":"ac","x":949.3,"y":442.7,"d":1},{"id":"ACQ_RETURN","m":"ac","x":752.9,"y":280.1,"d":1},{"id":"ACQ_SETTLELINK","m":"ac","x":502.7,"y":471.9,"d":2},{"id":"ACQ_SPLITPAY","m":"ac","x":603.1,"y":125.1,"d":1},{"id":"ACQ_TAXCXL","m":"ac","x":801.7,"y":166.0,"d":1},{"id":"ACQ_TAXINV","m":"ac","x":621.3,"y":349.6,"d":1},{"id":"ACQ_TAXREVERSE","m":"ac","x":872.4,"y":341.0,"d":1},{"id":"ACQ_UNMATCH","m":"ac","x":943.2,"y":536.3,"d":1},{"id":"ACQ_VELOCITY","m":"ac","x":947.0,"y":920.3,"d":1},{"id":"ACQ_VOID","m":"ac","x":681.1,"y":422.5,"d":1},{"id":"ACQ_WHT","m":"ac","x":433.3,"y":273.8,"d":2},{"id":"ACQ_XFERLINK","m":"ac","x":871.4,"y":267.5,"d":1},{"id":"AUTH","m":"au","x":598.1,"y":766.3,"d":3},{"id":"AUTH_AMT_ADJUST","m":"au","x":944.7,"y":931.3,"d":1},{"id":"AUTH_APPROVE","m":"au","x":884.9,"y":933.3,"d":1},{"id":"AUTH_CANCEL","m":"au","x":936.1,"y":728.4,"d":2},{"id":"AUTH_CAPTURE","m":"au","x":870.9,"y":939.8,"d":1},{"id":"AUTH_DECLINE","m":"au","x":844.2,"y":701.2,"d":1},{"id":"AUTH_DUP_CHK","m":"au","x":935.0,"y":856.7,"d":1},{"id":"AUTH_EXPIRE_CHK","m":"au","x":932.5,"y":886.5,"d":1},{"id":"AUTH_HISTORY","m":"au","x":738.1,"y":491.9,"d":3},{"id":"AUTH_HOLD","m":"au","x":931.4,"y":506.4,"d":1},{"id":"AUTH_PARTAPPR","m":"au","x":948.7,"y":916.9,"d":1},{"id":"AUTH_PARTCXL","m":"au","x":920.2,"y":936.0,"d":1},{"id":"AUTH_RELEASE","m":"au","x":897.6,"y":710.8,"d":1},{"id":"AUTH_RESEND","m":"au","x":782.0,"y":846.6,"d":1},{"id":"AUTH_RETRY","m":"au","x":722.8,"y":558.7,"d":1},{"id":"AUTH_REVERSE","m":"au","x":946.5,"y":906.6,"d":1},{"id":"AUTH_STATUS","m":"au","x":731.9,"y":189.6,"d":2},{"id":"AUTH_SUMMARY","m":"au","x":940.4,"y":848.5,"d":1},{"id":"AUTH_VOID","m":"au","x":946.1,"y":926.5,"d":1},{"id":"BIN_ROUTE_INQ","m":"au","x":670.5,"y":559.5,"d":1},{"id":"BLACKLIST_CHK","m":"au","x":931.8,"y":931.7,"d":1},{"id":"CANCEL_STATUS","m":"au","x":936.7,"y":723.4,"d":1},{"id":"CARD_EXPIRE_CHK","m":"au","x":739.3,"y":939.1,"d":1},{"id":"CARD_LOST_REG","m":"au","x":664.3,"y":649.9,"d":1},{"id":"CARD_STOLEN_REG","m":"au","x":520.1,"y":606.8,"d":1},{"id":"CARD_VALIDATE","m":"au","x":880.7,"y":720.1,"d":1},{"id":"CL_AMTXCHECK","m":"cl","x":783.0,"y":697.4,"d":1},{"id":"CL_APPRDELEG","m":"cl","x":744.4,"y":937.3,"d":1},{"id":"CL_APPRFINAL","m":"cl","x":755.9,"y":942.2,"d":1},{"id":"CL_APPRL1","m":"cl","x":565.5,"y":924.3,"d":1},{"id":"CL_APPRL2","m":"cl","x":679.9,"y":934.5,"d":4},{"id":"CL_APPROVE","m":"cl","x":733.9,"y":934.8,"d":1},{"id":"CL_APPRREJECT","m":"cl","x":553.8,"y":945.0,"d":1},{"id":"CL_APPRREQ","m":"cl","x":658.5,"y":944.2,"d":1},{"id":"CL_APPRSTAT","m":"cl","x":534.3,"y":940.2,"d":1},{"id":"CL_BALVERIFY","m":"cl","x":466.3,"y":912.8,"d":1},{"id":"CL_CANCEL","m":"cl","x":631.6,"y":680.2,"d":1},{"id":"CL_CHKALL","m":"cl","x":759.8,"y":742.3,"d":1},{"id":"CL_CHKPENDING","m":"cl","x":367.8,"y":939.7,"d":1},{"id":"CL_CHKUNMATCH","m":"cl","x":814.9,"y":790.2,"d":1},{"id":"CL_CHKVOID","m":"cl","x":538.7,"y":941.1,"d":1},{"id":"CL_CHNVERIFY","m":"cl","x":879.5,"y":439.4,"d":1},{"id":"CL_CNTVERIFY","m":"cl","x":820.2,"y":526.2,"d":1},{"id":"CL_CNTXCHECK","m":"cl","x":669.6,"y":689.7,"d":1},{"id":"CL_CORPCLOSE","m":"cl","x":671.9,"y":944.6,"d":1},{"id":"CL_CORPVERIFY","m":"cl","x":836.4,"y":421.5,"d":1},{"id":"CL_DAILY","m":"cl","x":626.4,"y":772.1,"d":2},{"id":"CL_DAYVERIFY","m":"cl","x":614.4,"y":595.2,"d":1},{"id":"CL_DIFFCHK","m":"cl","x":508.6,"y":280.4,"d":1},{"id":"CL_DIVCLOSE","m":"cl","x":382.1,"y":938.4,"d":1},{"id":"CL_DUPCHK","m":"cl","x":625.0,"y":519.5,"d":1},{"id":"CL_ESCALATE","m":"cl","x":782.7,"y":945.1,"d":1},{"id":"CL_FEECROSS","m":"cl","x":696.2,"y":941.1,"d":1},{"id":"CL_FEEVERIFY","m":"cl","x":741.3,"y":699.2,"d":1},{"id":"CL_FORCECLOSE","m":"cl","x":640.0,"y":949.9,"d":1},{"id":"CL_HALFCLOSE","m":"cl","x":563.4,"y":944.3,"d":1},{"id":"CL_HYVERIFY","m":"cl","x":877.9,"y":373.8,"d":1},{"id":"CL_LOCK","m":"cl","x":491.3,"y":945.2,"d":1},{"id":"CL_MAINCLOSE","m":"cl","x":609.6,"y":943.6,"d":1},{"id":"CL_MERCLOSE","m":"cl","x":504.7,"y":930.4,"d":1},{"id":"CL_MERXCHECK","m":"cl","x":667.4,"y":945.2,"d":1},{"id":"CL_MIDCLOSE","m":"cl","x":761.9,"y":941.6,"d":1},{"id":"CL_MONTHLY","m":"cl","x":243.8,"y":929.4,"d":1},{"id":"CL_MONVERIFY","m":"cl","x":647.5,"y":825.3,"d":1},{"id":"CL_NETCROSS","m":"cl","x":821.8,"y":229.5,"d":1},{"id":"CL_NETVERIFY","m":"cl","x":520.1,"y":842.0,"d":1},{"id":"CL_POSTTRIG","m":"cl","x":432.5,"y":697.0,"d":1},{"id":"CL_PRECHECK","m":"cl","x":817.6,"y":614.2,"d":1},{"id":"CL_QTRVERIFY","m":"cl","x":770.5,"y":926.0,"d":1},{"id":"CL_QUARTER","m":"cl","x":568.1,"y":935.4,"d":1},{"id":"CL_RECLOSE","m":"cl","x":604.5,"y":691.5,"d":1},{"id":"CL_RECON","m":"cl","x":550.4,"y":745.3,"d":1},{"id":"CL_ROLLBACK","m":"cl","x":632.8,"y":593.6,"d":1},{"id":"CL_SEGVERIFY","m":"cl","x":797.9,"y":927.7,"d":1},{"id":"CL_SEMIMONTH","m":"cl","x":243.9,"y":950.0,"d":1},{"id":"CL_SNAPSHOT","m":"cl","x":333.7,"y":930.1,"d":1},{"id":"CL_SNAPXCHECK","m":"cl","x":897.4,"y":714.2,"d":1},{"id":"CL_STCROSS","m":"cl","x":694.4,"y":877.2,"d":1},{"id":"CL_TENDAY","m":"cl","x":427.5,"y":936.7,"d":1},{"id":"CL_TRIGSETTLE","m":"cl","x":787.1,"y":698.8,"d":1},{"id":"CL_VERIFY","m":"cl","x":678.1,"y":829.1,"d":1},{"id":"CL_WEEKLY","m":"cl","x":307.6,"y":921.3,"d":1},{"id":"CL_WEEKVERIFY","m":"cl","x":421.2,"y":571.9,"d":1},{"id":"CL_YEAREND","m":"cl","x":603.3,"y":947.6,"d":1},{"id":"CL_YEARVERIFY","m":"cl","x":153.4,"y":415.1,"d":1},{"id":"CM_ADDDAYS","m":"cm","x":557.5,"y":944.8,"d":1},{"id":"CM_AMT_ROUND","m":"cm","x":384.9,"y":405.4,"d":3},{"id":"CM_BATDEP_CHK","m":"cm","x":299.9,"y":939.8,"d":1},{"id":"CM_BATDEP_SET","m":"cm","x":309.5,"y":940.9,"d":1},{"id":"CM_BATHIST_CNT","m":"cm","x":178.9,"y":948.7,"d":1},{"id":"CM_BATLAST","m":"cm","x":236.7,"y":907.1,"d":4},{"id":"CM_BATRERUN_REQ","m":"cm","x":321.5,"y":941.8,"d":1},{"id":"CM_BATSCHD_DEL","m":"cm","x":526.2,"y":670.9,"d":1},{"id":"CM_BATSCHD_REG","m":"cm","x":340.2,"y":579.2,"d":1},{"id":"CM_BIZDAY","m":"cm","x":247.2,"y":387.6,"d":8},{"id":"CM_BIZDAY_ADD","m":"cm","x":363.0,"y":938.7,"d":1},{"id":"CM_BIZDAY_CNT","m":"cm","x":597.3,"y":948.4,"d":1},{"id":"CM_CACHE_INV","m":"cm","x":282.2,"y":942.0,"d":1},{"id":"CM_CACHE_LOAD","m":"cm","x":288.7,"y":943.0,"d":1},{"id":"CM_CHECKDIGIT","m":"cm","x":282.6,"y":763.3,"d":1},{"id":"CM_CODE","m":"cm","x":587.6,"y":949.0,"d":2},{"id":"CM_CODEGRP_REG","m":"cm","x":209.8,"y":946.3,"d":1},{"id":"CM_CRC","m":"cm","x":126.1,"y":746.1,"d":2},{"id":"CM_ERRMSG","m":"cm","x":427.8,"y":825.7,"d":1},{"id":"CM_FX","m":"cm","x":301.9,"y":865.9,"d":6},{"id":"CM_FX_CONV","m":"cm","x":426.9,"y":467.3,"d":5},{"id":"CM_FX_CROSS","m":"cm","x":581.7,"y":949.2,"d":2},{"id":"CM_FX_INVERT","m":"cm","x":152.0,"y":946.9,"d":1},{"id":"CM_FX_MARGIN","m":"cm","x":168.7,"y":946.4,"d":1},{"id":"CM_FX_PUBLISH","m":"cm","x":476.5,"y":767.2,"d":1},{"id":"CM_FX_TRIANGLE","m":"cm","x":218.0,"y":949.4,"d":1},{"id":"CM_FX_VALID","m":"cm","x":740.6,"y":456.5,"d":2},{"id":"CM_HASH_DJB2","m":"cm","x":204.1,"y":814.1,"d":1},{"id":"CM_HASH_FNV","m":"cm","x":134.8,"y":934.2,"d":1},{"id":"CM_HASH_SUM","m":"cm","x":87.4,"y":869.9,"d":2},{"id":"CM_HOLIDAY_CHK","m":"cm","x":502.4,"y":948.0,"d":3},{"id":"CM_LOG","m":"cm","x":465.8,"y":543.6,"d":44},{"id":"CM_LUHN","m":"cm","x":567.9,"y":456.5,"d":8},{"id":"CM_MONTHEND","m":"cm","x":372.6,"y":651.3,"d":1},{"id":"CM_MSG_RENDER","m":"cm","x":288.6,"y":838.7,"d":1},{"id":"CM_NEXTBIZ","m":"cm","x":197.3,"y":578.5,"d":1},{"id":"CM_NOTI_HIST","m":"cm","x":462.4,"y":364.3,"d":1},{"id":"CM_NOTI_QUOTA","m":"cm","x":389.4,"y":720.6,"d":1},{"id":"CM_NOTI_RETRY","m":"cm","x":349.1,"y":535.1,"d":1},{"id":"CM_NOTI_SEND","m":"cm","x":310.7,"y":204.3,"d":4},{"id":"CM_NOTI_TMPL","m":"cm","x":419.9,"y":674.2,"d":1},{"id":"CM_PARAM","m":"cm","x":399.3,"y":943.4,"d":4},{"id":"CM_PREVBIZ","m":"cm","x":171.3,"y":498.4,"d":1},{"id":"CM_SEQ","m":"cm","x":109.2,"y":330.7,"d":7},{"id":"CM_SEQ_ALLOC","m":"cm","x":395.3,"y":943.2,"d":1},{"id":"CM_SEQ_DAILY","m":"cm","x":466.9,"y":829.8,"d":1},{"id":"CM_SEQ_MULTI","m":"cm","x":594.6,"y":868.2,"d":1},{"id":"CM_SEQ_RESET","m":"cm","x":417.9,"y":899.9,"d":1},{"id":"CM_SEQ_STAMP","m":"cm","x":378.7,"y":900.5,"d":1},{"id":"CM_SEQ_TYPED","m":"cm","x":425.3,"y":631.9,"d":1},{"id":"CM_STATUS","m":"cm","x":467.5,"y":371.8,"d":3},{"id":"FRAUD_DETECT","m":"au","x":845.9,"y":695.0,"d":8},{"id":"FRAUD_RULE_AMT","m":"au","x":934.9,"y":866.6,"d":1},{"id":"FRAUD_RULE_NIGHT","m":"au","x":938.8,"y":825.0,"d":1},{"id":"INSTALL_AUTH","m":"au","x":938.7,"y":845.0,"d":1},{"id":"LG_ACCRUEREV","m":"lg","x":321.4,"y":633.8,"d":1},{"id":"LG_ACCTSUM","m":"lg","x":137.5,"y":810.3,"d":3},{"id":"LG_ACQPOST","m":"lg","x":60.1,"y":753.4,"d":1},{"id":"LG_ADJUST","m":"lg","x":304.4,"y":472.4,"d":3},{"id":"LG_ALLOWANCE","m":"lg","x":337.1,"y":690.2,"d":1},{"id":"LG_ALLOWRECALC","m":"lg","x":67.8,"y":911.4,"d":1},{"id":"LG_BADDEBT","m":"lg","x":267.7,"y":541.3,"d":1},{"id":"LG_BADDEBTRCV","m":"lg","x":275.3,"y":474.2,"d":1},{"id":"LG_BALCERT","m":"lg","x":65.7,"y":940.4,"d":1},{"id":"LG_BALCHK","m":"lg","x":214.9,"y":697.8,"d":22},{"id":"LG_BALPROOF","m":"lg","x":292.8,"y":941.7,"d":1},{"id":"LG_BLACKENTRY","m":"lg","x":66.4,"y":801.7,"d":1},{"id":"LG_BSSUMMARY","m":"lg","x":60.0,"y":873.9,"d":1},{"id":"LG_CLOSE_LINK","m":"lg","x":594.7,"y":902.6,"d":4},{"id":"LG_CORPSUM","m":"lg","x":399.7,"y":825.5,"d":3},{"id":"LG_CORRECT","m":"lg","x":248.7,"y":794.4,"d":2},{"id":"LG_DEPTSUM","m":"lg","x":352.0,"y":861.6,"d":3},{"id":"LG_DOUBLE","m":"lg","x":80.2,"y":918.1,"d":1},{"id":"LG_DUPSCAN","m":"lg","x":274.0,"y":942.4,"d":1},{"id":"LG_FEEACCRUE","m":"lg","x":69.2,"y":786.6,"d":1},{"id":"LG_FEEPOST","m":"lg","x":68.8,"y":733.2,"d":2},{"id":"LG_HALFCLOSE","m":"lg","x":60.8,"y":934.3,"d":1},{"id":"LG_INQUIRY","m":"lg","x":805.9,"y":255.6,"d":3},{"id":"LG_JOURNAL","m":"lg","x":107.9,"y":895.7,"d":1},{"id":"LG_MERCHBAL","m":"lg","x":520.2,"y":818.7,"d":2},{"id":"LG_MERCHPROOF","m":"lg","x":270.1,"y":943.3,"d":2},{"id":"LG_MONTHCLOSE","m":"lg","x":65.8,"y":930.0,"d":1},{"id":"LG_MONTHLYSUM","m":"lg","x":60.3,"y":937.6,"d":2},{"id":"LG_NETPOS","m":"lg","x":301.1,"y":894.2,"d":1},{"id":"LG_PARTREVERSE","m":"lg","x":463.8,"y":488.6,"d":2},{"id":"LG_PERIODTB","m":"lg","x":415.2,"y":883.9,"d":2},{"id":"LG_PLSUMMARY","m":"lg","x":69.6,"y":816.9,"d":1},{"id":"LG_POST","m":"lg","x":409.3,"y":303.5,"d":28},{"id":"LG_PREPAIDAMORT","m":"lg","x":69.4,"y":903.9,"d":1},{"id":"LG_PREPAIDPOST","m":"lg","x":132.5,"y":867.7,"d":2},{"id":"LG_QTRCLOSE","m":"lg","x":62.8,"y":852.4,"d":1},{"id":"LG_RECALC","m":"lg","x":266.0,"y":855.6,"d":6},{"id":"LG_REDADJUST","m":"lg","x":359.2,"y":617.3,"d":1},{"id":"LG_REDBLACKNET","m":"lg","x":106.1,"y":937.6,"d":1},{"id":"LG_REDENTRY","m":"lg","x":104.8,"y":772.9,"d":2},{"id":"LG_REPOST","m":"lg","x":274.2,"y":624.1,"d":1},{"id":"LG_REVERSE","m":"lg","x":607.2,"y":326.3,"d":19},{"id":"LG_ROLLTB","m":"lg","x":428.6,"y":906.0,"d":2},{"id":"LG_SETTLEPOST","m":"lg","x":359.4,"y":454.7,"d":2},{"id":"LG_SPANTB","m":"lg","x":265.0,"y":941.3,"d":2},{"id":"LG_STATUS","m":"lg","x":464.0,"y":524.0,"d":2},{"id":"LG_SUSPENSE","m":"lg","x":59.3,"y":864.3,"d":1},{"id":"LG_TRANSFER","m":"lg","x":80.7,"y":690.7,"d":1},{"id":"LG_TRIALBAL","m":"lg","x":124.3,"y":856.0,"d":7},{"id":"LG_UNEARNPOST","m":"lg","x":57.5,"y":910.7,"d":2},{"id":"LG_UNEARNRECOG","m":"lg","x":73.4,"y":939.9,"d":1},{"id":"LG_VOIDVOUCHER","m":"lg","x":523.6,"y":438.8,"d":1},{"id":"LG_VOUCHER","m":"lg","x":142.9,"y":901.1,"d":1},{"id":"LG_WEEKCLOSE","m":"lg","x":71.6,"y":758.7,"d":1},{"id":"LG_WRITEOFF","m":"lg","x":202.6,"y":582.5,"d":1},{"id":"LG_XFERPOST","m":"lg","x":148.4,"y":760.5,"d":1},{"id":"LG_YEARCLOSE","m":"lg","x":70.5,"y":780.4,"d":1},{"id":"LIMIT_CHK","m":"au","x":652.9,"y":456.8,"d":10},{"id":"LIMIT_DEC","m":"au","x":863.3,"y":868.4,"d":10},{"id":"LIMIT_EXHAUST_LST","m":"au","x":780.2,"y":598.3,"d":1},{"id":"LIMIT_FREEZE","m":"au","x":624.6,"y":627.8,"d":1},{"id":"LIMIT_OVER_ALERT","m":"au","x":716.8,"y":534.3,"d":1},{"id":"LIMIT_RST","m":"au","x":879.3,"y":747.1,"d":13},{"id":"MG_ACK","m":"mg","x":57.5,"y":560.0,"d":1},{"id":"MG_BITMAP","m":"mg","x":52.4,"y":575.4,"d":1},{"id":"MG_BMPPARSE","m":"mg","x":63.6,"y":499.3,"d":1},{"id":"MG_CHANFAILOVER","m":"mg","x":61.7,"y":767.5,"d":1},{"id":"MG_CHANHEALTH","m":"mg","x":57.7,"y":465.7,"d":1},{"id":"MG_CHANOPEN","m":"mg","x":53.3,"y":688.2,"d":1},{"id":"MG_CHANPING","m":"mg","x":53.6,"y":628.9,"d":2},{"id":"MG_CHANSTAT","m":"mg","x":59.4,"y":550.9,"d":1},{"id":"MG_CHANSWITCH","m":"mg","x":65.3,"y":792.2,"d":1},{"id":"MG_DECODE","m":"mg","x":59.0,"y":664.5,"d":1},{"id":"MG_ENCODE","m":"mg","x":74.0,"y":547.8,"d":1},{"id":"MG_ERRREQUEUE","m":"mg","x":53.3,"y":625.0,"d":1},{"id":"MG_ERRRETRY","m":"mg","x":93.0,"y":633.4,"d":1},{"id":"MG_FROMISO","m":"mg","x":60.6,"y":596.5,"d":1},{"id":"MG_ISO8583","m":"mg","x":50.7,"y":589.2,"d":1},{"id":"MG_KEYCHECK","m":"mg","x":67.0,"y":723.6,"d":1},{"id":"MG_KEYLOAD","m":"mg","x":58.9,"y":842.5,"d":1},{"id":"MG_LOADBAL","m":"mg","x":57.2,"y":508.9,"d":1},{"id":"MG_LOG","m":"mg","x":716.0,"y":739.3,"d":6},{"id":"MG_MAC","m":"mg","x":54.9,"y":622.2,"d":1},{"id":"MG_MACGEN","m":"mg","x":58.4,"y":859.3,"d":1},{"id":"MG_MACSESSION","m":"mg","x":54.8,"y":617.5,"d":1},{"id":"MG_MACVERIFY","m":"mg","x":56.0,"y":880.4,"d":1},{"id":"MG_NACK","m":"mg","x":57.8,"y":517.8,"d":1},{"id":"MG_PACK","m":"mg","x":135.2,"y":536.8,"d":1},{"id":"MG_PARSE","m":"mg","x":111.5,"y":620.1,"d":9},{"id":"MG_REASM","m":"mg","x":52.3,"y":450.7,"d":1},{"id":"MG_RECV","m":"mg","x":56.5,"y":886.6,"d":1},{"id":"MG_RESEND","m":"mg","x":399.5,"y":590.4,"d":2},{"id":"MG_RESNDONE","m":"mg","x":57.1,"y":643.5,"d":1},{"id":"MG_ROUTE","m":"mg","x":50.9,"y":704.2,"d":4},{"id":"MG_SEND","m":"mg","x":288.8,"y":549.6,"d":19},{"id":"MG_SEQFILL","m":"mg","x":57.2,"y":746.4,"d":1},{"id":"MG_SEQNEXT","m":"mg","x":55.2,"y":808.5,"d":1},{"id":"MG_STAN","m":"mg","x":55.5,"y":812.4,"d":3},{"id":"MG_TOISO","m":"mg","x":109.0,"y":551.8,"d":1},{"id":"MG_UNPACK","m":"mg","x":58.9,"y":533.6,"d":1},{"id":"MM_ACCT_REG","m":"mm","x":232.8,"y":369.2,"d":1},{"id":"MM_ACCT_VERIFY","m":"mm","x":316.0,"y":406.8,"d":1},{"id":"MM_APPLY_APPROVE","m":"mm","x":63.6,"y":261.3,"d":1},{"id":"MM_APPLY_REG","m":"mm","x":52.7,"y":310.8,"d":1},{"id":"MM_BIN_REG","m":"mm","x":172.0,"y":168.7,"d":1},{"id":"MM_BIZNO_CHECK","m":"mm","x":65.1,"y":475.1,"d":1},{"id":"MM_CHK_LIMIT","m":"mm","x":256.6,"y":417.5,"d":1},{"id":"MM_CODE_REG","m":"mm","x":126.1,"y":270.4,"d":1},{"id":"MM_CONTRACT_AMEND","m":"mm","x":54.4,"y":292.2,"d":1},{"id":"MM_CONTRACT_NEW","m":"mm","x":57.2,"y":143.8,"d":1},{"id":"MM_CONTRACT_RENEW","m":"mm","x":54.0,"y":273.4,"d":1},{"id":"MM_FEERATE_SET","m":"mm","x":370.1,"y":261.7,"d":1},{"id":"MM_GRADE_ADJUST","m":"mm","x":240.2,"y":206.9,"d":1},{"id":"MM_ISSUER_REG","m":"mm","x":179.7,"y":223.6,"d":1},{"id":"MM_LIMIT_SET","m":"mm","x":257.9,"y":374.6,"d":1},{"id":"MM_MCC_REG","m":"mm","x":114.0,"y":168.3,"d":1},{"id":"MM_MCC_UPD","m":"mm","x":282.1,"y":167.1,"d":1},{"id":"MM_MERCH_CLOSE","m":"mm","x":258.2,"y":532.6,"d":1},{"id":"MM_MERCH_DORMANT","m":"mm","x":231.6,"y":533.9,"d":1},{"id":"MM_MERCH_GRADE","m":"mm","x":55.5,"y":81.3,"d":1},{"id":"MM_MERCH_INQ","m":"mm","x":426.2,"y":324.3,"d":1},{"id":"MM_MERCH_PAUSE","m":"mm","x":189.6,"y":429.2,"d":1},{"id":"MM_MERCH_REG","m":"mm","x":61.8,"y":169.7,"d":1},{"id":"MM_MERCH_RESUME","m":"mm","x":298.0,"y":534.0,"d":1},{"id":"MM_MERCH_STATUS","m":"mm","x":59.2,"y":357.8,"d":1},{"id":"MM_MERCH_UPD","m":"mm","x":65.8,"y":478.0,"d":1},{"id":"MM_RATE_APPROVE","m":"mm","x":302.2,"y":184.9,"d":1},{"id":"MM_RATE_REQ","m":"mm","x":324.3,"y":365.1,"d":1},{"id":"MM_RISK_SCORE","m":"mm","x":213.3,"y":501.8,"d":1},{"id":"MM_RISK_SET","m":"mm","x":226.0,"y":128.0,"d":1},{"id":"MM_TERMINAL_REG","m":"mm","x":60.0,"y":158.4,"d":1},{"id":"MM_TERM_INSTALL","m":"mm","x":57.7,"y":330.0,"d":1},{"id":"MM_VALIDATE","m":"mm","x":99.9,"y":360.9,"d":5},{"id":"NOAUTH_CAPTURE","m":"au","x":835.5,"y":908.3,"d":1},{"id":"PAY_ACCTCHK","m":"py","x":166.7,"y":108.4,"d":11},{"id":"PAY_ACCTVERIFY","m":"py","x":59.6,"y":70.1,"d":1},{"id":"PAY_ADJUST","m":"py","x":199.6,"y":175.5,"d":1},{"id":"PAY_APPRBULK","m":"py","x":343.2,"y":76.8,"d":1},{"id":"PAY_APPROVE","m":"py","x":368.0,"y":61.9,"d":1},{"id":"PAY_BANKFILE","m":"py","x":194.2,"y":308.4,"d":1},{"id":"PAY_BANKVERIFY","m":"py","x":181.2,"y":63.4,"d":1},{"id":"PAY_CANCEL","m":"py","x":450.2,"y":249.4,"d":2},{"id":"PAY_CHARGEBACK","m":"py","x":172.7,"y":90.4,"d":1},{"id":"PAY_CLOSE","m":"py","x":277.9,"y":239.6,"d":1},{"id":"PAY_COMBINE","m":"py","x":146.8,"y":60.8,"d":1},{"id":"PAY_CONFIRM","m":"py","x":248.0,"y":56.8,"d":1},{"id":"PAY_FAILRSN","m":"py","x":70.4,"y":73.7,"d":3},{"id":"PAY_FILEGEN","m":"py","x":534.5,"y":80.4,"d":7},{"id":"PAY_FILEREBUILD","m":"py","x":66.1,"y":210.7,"d":1},{"id":"PAY_HOLD","m":"py","x":595.3,"y":168.3,"d":3},{"id":"PAY_MERGE","m":"py","x":138.1,"y":67.6,"d":1},{"id":"PAY_NETOFF","m":"py","x":114.0,"y":79.4,"d":1},{"id":"PAY_RECLAIM","m":"py","x":525.7,"y":241.0,"d":2},{"id":"PAY_REFUND","m":"py","x":292.9,"y":107.6,"d":1},{"id":"PAY_RELEASE","m":"py","x":738.9,"y":448.7,"d":3},{"id":"PAY_REMIT","m":"py","x":122.9,"y":180.6,"d":1},{"id":"PAY_REPROC","m":"py","x":65.6,"y":64.3,"d":1},{"id":"PAY_REQUEUE","m":"py","x":126.9,"y":209.8,"d":1},{"id":"PAY_RESULT","m":"py","x":214.9,"y":260.5,"d":1},{"id":"PAY_RESVMODIFY","m":"py","x":63.9,"y":208.2,"d":1},{"id":"PAY_RETRY","m":"py","x":151.8,"y":62.1,"d":1},{"id":"PAY_RETRYONE","m":"py","x":67.1,"y":84.8,"d":1},{"id":"PAY_REVERSE","m":"py","x":437.2,"y":213.8,"d":2},{"id":"PAY_ROLLFWD","m":"py","x":209.7,"y":226.3,"d":1},{"id":"PAY_SCHEDULE","m":"py","x":159.8,"y":355.4,"d":1},{"id":"PAY_SPLIT","m":"py","x":61.2,"y":174.2,"d":1},{"id":"PAY_SPLITEVEN","m":"py","x":110.5,"y":68.3,"d":1},{"id":"PAY_SPLITRATIO","m":"py","x":56.7,"y":67.7,"d":1},{"id":"PAY_URGENT","m":"py","x":163.9,"y":62.4,"d":1},{"id":"PAY_VOIDONE","m":"py","x":312.0,"y":94.1,"d":1},{"id":"PAY_XFERLINK","m":"py","x":594.9,"y":383.6,"d":2},{"id":"PREAUTH","m":"au","x":946.6,"y":900.1,"d":1},{"id":"PREAUTH_CANCEL","m":"au","x":941.5,"y":879.1,"d":1},{"id":"PREAUTH_COMPLETE","m":"au","x":728.9,"y":933.8,"d":1},{"id":"PREAUTH_EXTEND","m":"au","x":845.9,"y":790.3,"d":1},{"id":"PREAUTH_INQ","m":"au","x":930.1,"y":618.4,"d":1},{"id":"PREAUTH_PARTUSE","m":"au","x":939.6,"y":806.9,"d":1},{"id":"RC_4WAY","m":"rc","x":794.6,"y":51.5,"d":1},{"id":"RC_ACQMATCH","m":"rc","x":389.1,"y":54.6,"d":1},{"id":"RC_ACQ_DEP","m":"rc","x":137.0,"y":283.6,"d":1},{"id":"RC_ALERT","m":"rc","x":464.6,"y":55.1,"d":1},{"id":"RC_AMTDIFF","m":"rc","x":372.1,"y":71.5,"d":1},{"id":"RC_APPRGAP","m":"rc","x":275.4,"y":51.5,"d":1},{"id":"RC_APPRMATCH","m":"rc","x":399.3,"y":56.1,"d":1},{"id":"RC_APPR_ACQ","m":"rc","x":810.8,"y":54.5,"d":1},{"id":"RC_AUTOFIX","m":"rc","x":450.2,"y":56.8,"d":1},{"id":"RC_CLOSEDAY","m":"rc","x":575.3,"y":68.1,"d":1},{"id":"RC_CNTDIFF","m":"rc","x":458.2,"y":54.2,"d":1},{"id":"RC_CONFIRM","m":"rc","x":657.2,"y":62.5,"d":1},{"id":"RC_DEPGAP","m":"rc","x":406.7,"y":50.9,"d":1},{"id":"RC_DEPMATCH","m":"rc","x":401.9,"y":53.9,"d":1},{"id":"RC_DUPCHK","m":"rc","x":401.7,"y":402.1,"d":3},{"id":"RC_ESCALATE","m":"rc","x":524.2,"y":150.3,"d":2},{"id":"RC_EXCEPTION","m":"rc","x":712.7,"y":307.7,"d":7},{"id":"RC_EXCNOTIFY","m":"rc","x":100.1,"y":202.5,"d":1},{"id":"RC_FEEDIFF","m":"rc","x":864.3,"y":149.6,"d":1},{"id":"RC_FEERECON","m":"rc","x":544.1,"y":587.1,"d":1},{"id":"RC_FIXFEE","m":"rc","x":532.9,"y":55.7,"d":1},{"id":"RC_FIXFX","m":"rc","x":355.4,"y":205.2,"d":1},{"id":"RC_FIXROUND","m":"rc","x":260.4,"y":216.8,"d":1},{"id":"RC_FXDIFF","m":"rc","x":528.5,"y":59.1,"d":1},{"id":"RC_FXRECON","m":"rc","x":298.7,"y":447.1,"d":1},{"id":"RC_HOLDCLR","m":"rc","x":756.7,"y":55.9,"d":1},{"id":"RC_HOLDSET","m":"rc","x":849.2,"y":51.7,"d":1},{"id":"RC_LEDGERBAL","m":"rc","x":144.8,"y":308.0,"d":1},{"id":"RC_LEDGERLINK","m":"rc","x":286.3,"y":51.4,"d":1},{"id":"RC_LIMITCHK","m":"rc","x":451.2,"y":148.7,"d":1},{"id":"RC_MANUAL","m":"rc","x":328.9,"y":171.5,"d":1},{"id":"RC_NOTIFY","m":"rc","x":310.4,"y":50.0,"d":1},{"id":"RC_ORPHAN","m":"rc","x":618.3,"y":559.2,"d":1},{"id":"RC_OVERAMT","m":"rc","x":508.6,"y":60.8,"d":1},{"id":"RC_PAYLEDGER","m":"rc","x":428.2,"y":55.3,"d":1},{"id":"RC_PAYMATCH","m":"rc","x":445.3,"y":58.1,"d":1},{"id":"RC_PROGRESS","m":"rc","x":305.7,"y":159.7,"d":1},{"id":"RC_RECORR","m":"rc","x":356.4,"y":232.1,"d":1},{"id":"RC_REDIFF","m":"rc","x":483.5,"y":62.0,"d":1},{"id":"RC_REFULL","m":"rc","x":533.6,"y":217.9,"d":1},{"id":"RC_REFUNDREC","m":"rc","x":705.0,"y":57.0,"d":1},{"id":"RC_RELEASE","m":"rc","x":744.9,"y":51.9,"d":1},{"id":"RC_REMATCH","m":"rc","x":832.1,"y":416.3,"d":2},{"id":"RC_REPROC","m":"rc","x":557.3,"y":187.5,"d":2},{"id":"RC_RERUN","m":"rc","x":412.0,"y":51.5,"d":1},{"id":"RC_ROUNDDIFF","m":"rc","x":508.4,"y":106.3,"d":1},{"id":"RC_SNAPSHOT","m":"rc","x":179.3,"y":484.5,"d":1},{"id":"RC_STATUS","m":"rc","x":446.3,"y":68.8,"d":1},{"id":"RC_SUMCHK","m":"rc","x":265.0,"y":315.8,"d":1},{"id":"RC_TOLERANCE","m":"rc","x":304.4,"y":50.7,"d":1},{"id":"RC_UNDERAMT","m":"rc","x":421.4,"y":54.5,"d":1},{"id":"RC_UNMATCH","m":"rc","x":794.7,"y":334.0,"d":4},{"id":"RECONCILE","m":"rc","x":862.7,"y":171.9,"d":2},{"id":"RISK_SCORE_INQ","m":"au","x":939.2,"y":814.4,"d":1},{"id":"SETTLE","m":"st","x":768.3,"y":368.2,"d":3},{"id":"STANDIN","m":"au","x":671.5,"y":609.7,"d":2},{"id":"STANDIN_SETTLE","m":"au","x":945.1,"y":775.7,"d":1},{"id":"ST_ADJREVERSE","m":"st","x":915.0,"y":108.3,"d":1},{"id":"ST_ADJUST","m":"st","x":475.1,"y":220.3,"d":10},{"id":"ST_APPROVE","m":"st","x":765.9,"y":54.4,"d":1},{"id":"ST_APPROVEALL","m":"st","x":683.7,"y":63.5,"d":1},{"id":"ST_CANCEL","m":"st","x":764.8,"y":287.0,"d":2},{"id":"ST_CAPCHECK","m":"st","x":838.6,"y":52.4,"d":1},{"id":"ST_CHARGEBACK","m":"st","x":731.1,"y":179.8,"d":2},{"id":"ST_COLLATERAL","m":"st","x":786.7,"y":55.8,"d":1},{"id":"ST_CONFIRM","m":"st","x":816.1,"y":56.2,"d":1},{"id":"ST_CXLRECALC","m":"st","x":357.0,"y":65.2,"d":1},{"id":"ST_DAILYCLOSE","m":"st","x":412.2,"y":545.6,"d":2},{"id":"ST_DIFFCHK","m":"st","x":863.1,"y":52.0,"d":1},{"id":"ST_DISPUTE","m":"st","x":541.6,"y":56.5,"d":1},{"id":"ST_GRPSETTLE","m":"st","x":549.9,"y":59.4,"d":1},{"id":"ST_HOLD","m":"st","x":619.0,"y":254.4,"d":3},{"id":"ST_HOLDAMT","m":"st","x":918.2,"y":65.0,"d":1},{"id":"ST_INSTANTPAY","m":"st","x":590.0,"y":56.8,"d":1},{"id":"ST_LEDGERLINK","m":"st","x":687.4,"y":139.5,"d":1},{"id":"ST_LIMITCHK","m":"st","x":786.1,"y":60.7,"d":1},{"id":"ST_LOCKBATCH","m":"st","x":852.1,"y":52.8,"d":1},{"id":"ST_MDR","m":"st","x":583.4,"y":225.1,"d":9},{"id":"ST_MERCHRATE","m":"st","x":497.6,"y":61.1,"d":1},{"id":"ST_NETTING","m":"st","x":631.8,"y":112.1,"d":1},{"id":"ST_NEXTPAYDT","m":"st","x":256.8,"y":336.2,"d":1},{"id":"ST_OFFSET","m":"st","x":604.4,"y":185.9,"d":1},{"id":"ST_PAYDATE","m":"st","x":592.4,"y":249.4,"d":1},{"id":"ST_PAYSTATUS","m":"st","x":805.4,"y":58.2,"d":1},{"id":"ST_PRECONFIRM","m":"st","x":762.0,"y":54.6,"d":1},{"id":"ST_PROMOAPPLY","m":"st","x":902.7,"y":59.7,"d":1},{"id":"ST_RATEAPPLY","m":"st","x":867.0,"y":53.6,"d":1},{"id":"ST_RATECARD","m":"st","x":673.7,"y":61.1,"d":1},{"id":"ST_RECALC","m":"st","x":798.0,"y":203.1,"d":2},{"id":"ST_REFUNDCALC","m":"st","x":847.5,"y":292.9,"d":2},{"id":"ST_RELEASE","m":"st","x":717.9,"y":390.9,"d":3},{"id":"ST_RERUN","m":"st","x":922.5,"y":55.8,"d":1},{"id":"ST_SPLIT","m":"st","x":677.7,"y":62.0,"d":1},{"id":"ST_STATUS","m":"st","x":703.0,"y":333.0,"d":3},{"id":"ST_TAXINVCHK","m":"st","x":640.6,"y":65.0,"d":1},{"id":"ST_UNLOCK","m":"st","x":878.4,"y":55.3,"d":1},{"id":"ST_VAT","m":"st","x":426.0,"y":94.6,"d":1},{"id":"ST_VATADJUST","m":"st","x":887.3,"y":54.1,"d":1},{"id":"ST_VATDETAIL","m":"st","x":884.0,"y":54.6,"d":1},{"id":"ST_VOIDRECALC","m":"st","x":651.6,"y":154.4,"d":1},{"id":"ST_WHT","m":"st","x":442.4,"y":233.1,"d":2},{"id":"ST_XFERLINK","m":"st","x":734.1,"y":117.9,"d":1},{"id":"TOKEN_VERIFY","m":"au","x":602.4,"y":478.7,"d":1},{"id":"VELOCITY_CHK","m":"au","x":725.6,"y":850.0,"d":1},{"id":"VELOCITY_DAY","m":"au","x":922.3,"y":904.4,"d":1},{"id":"VL_AMOUNT","m":"vl","x":495.9,"y":186.4,"d":8},{"id":"VL_ANOMALY","m":"vl","x":947.2,"y":414.1,"d":1},{"id":"VL_APPRAMT","m":"vl","x":688.0,"y":244.6,"d":2},{"id":"VL_APPRNOPUR","m":"vl","x":480.1,"y":259.3,"d":2},{"id":"VL_APPR_ACQ","m":"vl","x":750.3,"y":317.8,"d":1},{"id":"VL_AXLEDGDC","m":"vl","x":942.4,"y":377.8,"d":1},{"id":"VL_AXPURAPPR","m":"vl","x":646.7,"y":240.2,"d":2},{"id":"VL_AXPURSETT","m":"vl","x":787.6,"y":672.9,"d":1},{"id":"VL_AXSETTPAY","m":"vl","x":513.9,"y":333.8,"d":4},{"id":"VL_BALANCE","m":"vl","x":519.2,"y":551.9,"d":2},{"id":"VL_BATCH_CHK","m":"vl","x":384.2,"y":278.3,"d":2},{"id":"VL_BIN","m":"vl","x":458.2,"y":338.0,"d":4},{"id":"VL_CANCELMIS","m":"vl","x":505.2,"y":703.0,"d":1},{"id":"VL_CARD","m":"vl","x":805.7,"y":264.1,"d":1},{"id":"VL_CHANSPLIT","m":"vl","x":936.9,"y":299.4,"d":1},{"id":"VL_CODEVAL","m":"vl","x":377.7,"y":167.8,"d":3},{"id":"VL_CROSSCHK","m":"vl","x":691.3,"y":370.6,"d":5},{"id":"VL_DAYLIMIT","m":"vl","x":926.3,"y":241.1,"d":1},{"id":"VL_DUP","m":"vl","x":588.3,"y":403.4,"d":3},{"id":"VL_DUPAPPR","m":"vl","x":929.3,"y":616.2,"d":1},{"id":"VL_DUPAUTH","m":"vl","x":905.8,"y":186.6,"d":1},{"id":"VL_DUPLEDGR","m":"vl","x":281.4,"y":761.3,"d":1},{"id":"VL_DUPPAY","m":"vl","x":230.5,"y":318.3,"d":1},{"id":"VL_DUPPURCH","m":"vl","x":781.9,"y":474.9,"d":3},{"id":"VL_DUPSETTLE","m":"vl","x":947.7,"y":78.8,"d":1},{"id":"VL_EXPIRY","m":"vl","x":702.6,"y":666.5,"d":2},{"id":"VL_FEE","m":"vl","x":700.4,"y":462.0,"d":3},{"id":"VL_FEERECALC","m":"vl","x":378.2,"y":494.0,"d":1},{"id":"VL_FORMAT","m":"vl","x":538.5,"y":410.1,"d":1},{"id":"VL_FXCHK","m":"vl","x":640.7,"y":271.7,"d":2},{"id":"VL_INSTCHK","m":"vl","x":941.4,"y":218.2,"d":1},{"id":"VL_LEDGBAL","m":"vl","x":346.6,"y":822.3,"d":2},{"id":"VL_LEDGENTRY","m":"vl","x":907.1,"y":297.3,"d":1},{"id":"VL_LEDGER","m":"vl","x":233.3,"y":763.1,"d":8},{"id":"VL_LIMIT","m":"vl","x":862.7,"y":346.1,"d":2},{"id":"VL_LONGOPEN","m":"vl","x":273.3,"y":708.7,"d":1},{"id":"VL_MDRRATE","m":"vl","x":854.4,"y":236.8,"d":1},{"id":"VL_MERCH","m":"vl","x":405.3,"y":116.1,"d":3},{"id":"VL_NEGBAL","m":"vl","x":933.5,"y":158.8,"d":1},{"id":"VL_NEGFEE","m":"vl","x":650.6,"y":90.3,"d":1},{"id":"VL_NEGNET","m":"vl","x":573.8,"y":629.1,"d":2},{"id":"VL_NIGHTTXN","m":"vl","x":810.5,"y":781.5,"d":1},{"id":"VL_OUTLIER","m":"vl","x":917.0,"y":512.5,"d":1},{"id":"VL_OVERLIMIT","m":"vl","x":852.9,"y":621.9,"d":2},{"id":"VL_PURNOAPPR","m":"vl","x":725.1,"y":623.4,"d":3},{"id":"VL_REFINTEG","m":"vl","x":942.5,"y":380.5,"d":1},{"id":"VL_REPORT","m":"vl","x":942.0,"y":390.3,"d":1},{"id":"VL_REQUIRED","m":"vl","x":942.7,"y":487.9,"d":1},{"id":"VL_RIAPPR","m":"vl","x":716.4,"y":65.8,"d":2},{"id":"VL_RICANCEL","m":"vl","x":934.5,"y":715.0,"d":1},{"id":"VL_RIFX","m":"vl","x":829.0,"y":324.8,"d":1},{"id":"VL_RIINSTALL","m":"vl","x":939.5,"y":354.9,"d":1},{"id":"VL_RILEDGER","m":"vl","x":329.1,"y":611.5,"d":1},{"id":"VL_RIMERCH","m":"vl","x":656.7,"y":730.7,"d":2},{"id":"VL_RIPAY","m":"vl","x":629.8,"y":148.2,"d":2},{"id":"VL_RIPURCH","m":"vl","x":931.8,"y":573.0,"d":1},{"id":"VL_RISETTLE","m":"vl","x":746.1,"y":592.4,"d":2},{"id":"VL_RITAXINV","m":"vl","x":713.8,"y":65.8,"d":1},{"id":"VL_RULECOUNT","m":"vl","x":941.6,"y":365.1,"d":1},{"id":"VL_SALES","m":"vl","x":659.1,"y":514.8,"d":3},{"id":"VL_SETTLE","m":"vl","x":788.4,"y":106.0,"d":7},{"id":"VL_SPIKEAMT","m":"vl","x":935.8,"y":689.4,"d":1},{"id":"VL_STATUS_CHK","m":"vl","x":632.2,"y":252.4,"d":2},{"id":"VL_SUMFEE","m":"vl","x":941.0,"y":261.2,"d":1},{"id":"VL_SUMFEECHK","m":"vl","x":567.0,"y":687.8,"d":3},{"id":"VL_SUMGROSS","m":"vl","x":264.5,"y":425.1,"d":3},{"id":"VL_SUMMARY","m":"vl","x":793.1,"y":668.3,"d":1},{"id":"VL_SUMNETCHK","m":"vl","x":735.7,"y":840.8,"d":1},{"id":"VL_SUMRECON","m":"vl","x":576.7,"y":615.2,"d":4},{"id":"VL_SUMTXNCNT","m":"vl","x":429.4,"y":387.7,"d":3},{"id":"VL_SUSPACT","m":"vl","x":932.8,"y":700.1,"d":1},{"id":"VL_SUSPESCAL","m":"vl","x":588.9,"y":78.8,"d":1},{"id":"VL_THRESHOLD","m":"vl","x":920.9,"y":533.5,"d":1},{"id":"VL_VELOCITY","m":"vl","x":938.8,"y":658.7,"d":2},{"id":"VL_ZERONET","m":"vl","x":941.3,"y":180.1,"d":1}],"EDGES":[["ACQUIRE","RECONCILE"],["ACQ_ALERTDUP","VL_DUPPURCH"],["ACQ_AMTFIX","VL_AMOUNT"],["ACQ_APPRLINK","LIMIT_DEC"],["ACQ_APPRMAP","AUTH_CANCEL"],["ACQ_CANCEL","LIMIT_RST"],["ACQ_CANCEL","LG_REVERSE"],["ACQ_CANCEL","ST_CANCEL"],["ACQ_CB_OPEN","ST_CHARGEBACK"],["ACQ_CB_REVERSE","LG_REVERSE"],["ACQ_CLAIMREG","ST_DISPUTE"],["ACQ_CORRECT","LG_CORRECT"],["ACQ_DDC","MG_LOG"],["ACQ_DUPCHK","VL_DUP"],["ACQ_EDC","MG_LOG"],["ACQ_EDI","MG_SEND"],["ACQ_EDIRESEND","MG_RESEND"],["ACQ_ESCROW","PAY_HOLD"],["ACQ_ESCROWREL","PAY_RELEASE"],["ACQ_EXCHANGE","CM_FX_CROSS"],["ACQ_FEEADJ","LG_ADJUST"],["ACQ_FEERECALC","ST_RECALC"],["ACQ_FOREIGN","CM_FX_CONV"],["ACQ_FXCONVERT","CM_FX"],["ACQ_FXRATE","CM_FX_VALID"],["ACQ_GUARANTEE","ST_COLLATERAL"],["ACQ_HOLD","PAY_HOLD"],["ACQ_INSTALL","VL_INSTCHK"],["ACQ_INSTCXL","LIMIT_RST"],["ACQ_LIMITCHK","VL_LIMIT"],["ACQ_LIMITEXC","VL_OVERLIMIT"],["ACQ_MERCHSUM","MM_MERCH_INQ"],["ACQ_NETCALC","LG_NETPOS"],["ACQ_PARTCXL","LIMIT_RST"],["ACQ_PARTCXL","LG_PARTREVERSE"],["ACQ_PARTRFND","ST_REFUNDCALC"],["ACQ_PROMO","ST_PROMOAPPLY"],["ACQ_REFUND","LIMIT_RST"],["ACQ_REFUND","LG_REVERSE"],["ACQ_RELEASE","PAY_RELEASE"],["ACQ_REMATCH","RC_REMATCH"],["ACQ_REPROC","RC_REPROC"],["ACQ_RESERVE","ST_HOLD"],["ACQ_RESERVECXL","ST_RELEASE"],["ACQ_RETURN","RC_REFUNDREC"],["ACQ_SETTLELINK","ST_MDR"],["ACQ_SETTLELINK","LG_BALCHK"],["ACQ_SPLITPAY","ST_SPLIT"],["ACQ_TAXCXL","ST_ADJUST"],["ACQ_TAXINV","ST_ADJUST"],["ACQ_TAXREVERSE","LG_REVERSE"],["ACQ_UNMATCH","RC_UNMATCH"],["ACQ_VELOCITY","VL_VELOCITY"],["ACQ_VOID","LG_VOIDVOUCHER"],["ACQ_WHT","ST_WHT"],["ACQ_WHT","ST_ADJUST"],["ACQ_XFERLINK","PAY_XFERLINK"],["AUTH","LIMIT_DEC"],["AUTH","FRAUD_DETECT"],["AUTH_AMT_ADJUST","LIMIT_DEC"],["AUTH_APPROVE","LIMIT_DEC"],["AUTH_CANCEL","LIMIT_RST"],["AUTH_CAPTURE","ACQ_APPRGAP"],["AUTH_DECLINE","CM_LOG"],["AUTH_DUP_CHK","FRAUD_DETECT"],["AUTH_EXPIRE_CHK","LIMIT_RST"],["AUTH_HOLD","LIMIT_CHK"],["AUTH_PARTAPPR","LIMIT_DEC"],["AUTH_PARTCXL","LIMIT_RST"],["AUTH_RELEASE","LIMIT_RST"],["AUTH_RESEND","MG_SEND"],["AUTH_RETRY","MG_SEND"],["AUTH_REVERSE","LIMIT_RST"],["AUTH_VOID","LIMIT_RST"],["BLACKLIST_CHK","FRAUD_DETECT"],["CARD_LOST_REG","MG_SEND"],["CARD_STOLEN_REG","MG_SEND"],["CARD_VALIDATE","CM_LUHN"],["FRAUD_DETECT","MG_LOG"],["INSTALL_AUTH","LIMIT_DEC"],["LIMIT_CHK","CM_LOG"],["LIMIT_DEC","MG_LOG"],["LIMIT_EXHAUST_LST","CM_LOG"],["LIMIT_FREEZE","CM_LOG"],["LIMIT_OVER_ALERT","CM_LOG"],["LIMIT_RST","MG_LOG"],["NOAUTH_CAPTURE","ACQ_CORRAPPR"],["PREAUTH","LIMIT_DEC"],["PREAUTH_CANCEL","LIMIT_RST"],["PREAUTH_COMPLETE","LIMIT_DEC"],["PREAUTH_EXTEND","LIMIT_CHK"],["PREAUTH_PARTUSE","LIMIT_RST"],["STANDIN","LIMIT_CHK"],["STANDIN","MG_LOG"],["STANDIN_SETTLE","LIMIT_DEC"],["TOKEN_VERIFY","CM_LUHN"],["VELOCITY_CHK","FRAUD_DETECT"],["CL_AMTXCHECK","VL_AXPURSETT"],["CL_APPRDELEG","CL_APPRSTAT"],["CL_APPRL1","CL_APPRL2"],["CL_APPRL2","CL_APPRFINAL"],["CL_APPROVE","CL_APPRL2"],["CL_APPRREJECT","CL_ESCALATE"],["CL_APPRREQ","CL_APPRL2"],["CL_BALVERIFY","VL_LEDGBAL"],["CL_CANCEL","LG_REVERSE"],["CL_CHKALL","VL_CROSSCHK"],["CL_CHKPENDING","VL_LONGOPEN"],["CL_CHKUNMATCH","VL_PURNOAPPR"],["CL_CHKVOID","VL_CANCELMIS"],["CL_CHNVERIFY","VL_CHANSPLIT"],["CL_CNTVERIFY","VL_RULECOUNT"],["CL_CNTXCHECK","VL_AXSETTPAY"],["CL_CORPCLOSE","LG_CORPSUM"],["CL_CORPVERIFY","VL_REPORT"],["CL_DAILY","VL_SALES"],["CL_DAILY","LG_CLOSE_LINK"],["CL_DAYVERIFY","VL_SALES"],["CL_DIFFCHK","VL_AMOUNT"],["CL_DIVCLOSE","LG_DEPTSUM"],["CL_DUPCHK","VL_DUP"],["CL_FEECROSS","VL_SUMFEECHK"],["CL_FEEVERIFY","VL_FEE"],["CL_FORCECLOSE","LG_CLOSE_LINK"],["CL_HALFCLOSE","LG_ROLLTB"],["CL_HYVERIFY","VL_SUMFEE"],["CL_MAINCLOSE","LG_CLOSE_LINK"],["CL_MERCLOSE","LG_MERCHPROOF"],["CL_MERXCHECK","VL_RIMERCH"],["CL_MIDCLOSE","LG_MERCHBAL"],["CL_MONTHLY","LG_MONTHLYSUM"],["CL_MONVERIFY","VL_SUMMARY"],["CL_NETCROSS","VL_SETTLE"],["CL_NETVERIFY","VL_NEGNET"],["CL_POSTTRIG","ST_DAILYCLOSE"],["CL_PRECHECK","VL_REQUIRED"],["CL_QTRVERIFY","VL_SUMRECON"],["CL_QUARTER","LG_PERIODTB"],["CL_RECLOSE","LG_REVERSE"],["CL_RECON","VL_SUMRECON"],["CL_ROLLBACK","LG_REVERSE"],["CL_SEGVERIFY","VL_SUMNETCHK"],["CL_SEMIMONTH","LG_CORPSUM"],["CL_SNAPSHOT","LG_TRIALBAL"],["CL_SNAPXCHECK","VL_AXLEDGDC"],["CL_STCROSS","VL_RISETTLE"],["CL_TENDAY","LG_DEPTSUM"],["CL_TRIGSETTLE","SETTLE"],["CL_VERIFY","VL_BALANCE"],["CL_WEEKLY","LG_ACCTSUM"],["CL_WEEKVERIFY","VL_SUMTXNCNT"],["CL_YEAREND","LG_SPANTB"],["CL_YEARVERIFY","VL_SUMGROSS"],["CM_ADDDAYS","CM_HOLIDAY_CHK"],["CM_BATDEP_CHK","CM_BATLAST"],["CM_BATDEP_SET","CM_BATLAST"],["CM_BATHIST_CNT","CM_BATLAST"],["CM_BATRERUN_REQ","CM_BATLAST"],["CM_BATSCHD_DEL","CM_LOG"],["CM_BATSCHD_REG","CM_LOG"],["CM_BIZDAY_ADD","CM_HOLIDAY_CHK"],["CM_BIZDAY_CNT","CM_HOLIDAY_CHK"],["CM_CACHE_INV","CM_PARAM"],["CM_CACHE_LOAD","CM_PARAM"],["CM_CODE","CM_PARAM"],["CM_CODEGRP_REG","CM_PARAM"],["CM_ERRMSG","CM_LOG"],["CM_FX_CONV","CM_FX"],["CM_FX_CROSS","CM_FX"],["CM_FX_INVERT","CM_FX"],["CM_FX_MARGIN","CM_FX"],["CM_FX_PUBLISH","CM_LOG"],["CM_FX_TRIANGLE","CM_FX"],["CM_MONTHEND","CM_BIZDAY"],["CM_MSG_RENDER","CM_LOG"],["CM_NEXTBIZ","CM_BIZDAY"],["CM_NOTI_QUOTA","CM_LOG"],["CM_NOTI_RETRY","CM_LOG"],["CM_NOTI_SEND","CM_LOG"],["CM_NOTI_TMPL","CM_LOG"],["CM_PREVBIZ","CM_BIZDAY"],["CM_SEQ","CM_LOG"],["CM_SEQ_ALLOC","CM_LOG"],["CM_SEQ_DAILY","CM_LOG"],["CM_SEQ_MULTI","CM_LOG"],["CM_SEQ_RESET","CM_LOG"],["CM_SEQ_STAMP","CM_LOG"],["CM_SEQ_TYPED","CM_LOG"],["LG_ACCRUEREV","LG_POST"],["LG_ACCTSUM","LG_RECALC"],["LG_ACQPOST","LG_BALCHK"],["LG_ADJUST","LG_BALCHK"],["LG_ALLOWANCE","LG_POST"],["LG_ALLOWRECALC","LG_ACCTSUM"],["LG_BADDEBT","LG_POST"],["LG_BADDEBTRCV","LG_POST"],["LG_BALCERT","LG_BALCHK"],["LG_BALPROOF","LG_BALCHK"],["LG_BLACKENTRY","LG_BALCHK"],["LG_BSSUMMARY","VL_LEDGER"],["LG_CLOSE_LINK","CL_LOCK"],["LG_CORPSUM","LG_RECALC"],["LG_CORRECT","LG_BALCHK"],["LG_DEPTSUM","LG_RECALC"],["LG_DOUBLE","LG_BALCHK"],["LG_FEEACCRUE","LG_FEEPOST"],["LG_FEEPOST","LG_BALCHK"],["LG_HALFCLOSE","LG_TRIALBAL"],["LG_MERCHBAL","LG_RECALC"],["LG_MERCHPROOF","LG_RECALC"],["LG_MONTHCLOSE","LG_TRIALBAL"],["LG_MONTHLYSUM","LG_RECALC"],["LG_PARTREVERSE","LG_POST"],["LG_PERIODTB","VL_LEDGER"],["LG_PLSUMMARY","VL_LEDGER"],["LG_POST","LG_BALCHK"],["LG_PREPAIDAMORT","LG_PREPAIDPOST"],["LG_PREPAIDPOST","LG_BALCHK"],["LG_QTRCLOSE","LG_TRIALBAL"],["LG_REDADJUST","LG_POST"],["LG_REDBLACKNET","LG_REDENTRY"],["LG_REDENTRY","LG_BALCHK"],["LG_REPOST","LG_POST"],["LG_REVERSE","LG_BALCHK"],["LG_ROLLTB","VL_LEDGER"],["LG_SETTLEPOST","LG_BALCHK"],["LG_SPANTB","VL_LEDGER"],["LG_SUSPENSE","LG_BALCHK"],["LG_TRANSFER","LG_BALCHK"],["LG_TRIALBAL","VL_LEDGER"],["LG_UNEARNPOST","LG_BALCHK"],["LG_UNEARNRECOG","LG_UNEARNPOST"],["LG_VOUCHER","LG_BALCHK"],["LG_WEEKCLOSE","LG_TRIALBAL"],["LG_WRITEOFF","LG_POST"],["LG_XFERPOST","LG_BALCHK"],["LG_YEARCLOSE","LG_TRIALBAL"],["MG_ACK","MG_SEND"],["MG_BITMAP","MG_PARSE"],["MG_BMPPARSE","MG_PARSE"],["MG_CHANFAILOVER","MG_ROUTE"],["MG_CHANHEALTH","MG_CHANPING"],["MG_CHANOPEN","MG_ROUTE"],["MG_CHANSWITCH","MG_ROUTE"],["MG_DECODE","MG_PARSE"],["MG_ENCODE","MG_SEND"],["MG_ERRREQUEUE","MG_SEND"],["MG_ERRRETRY","MG_SEND"],["MG_FROMISO","MG_PARSE"],["MG_ISO8583","MG_PARSE"],["MG_KEYCHECK","CM_HASH_DJB2"],["MG_KEYLOAD","CM_HASH_FNV"],["MG_LOADBAL","MG_CHANPING"],["MG_MAC","CM_CRC"],["MG_MACGEN","CM_HASH_SUM"],["MG_MACSESSION","CM_HASH_SUM"],["MG_MACVERIFY","CM_CRC"],["MG_NACK","MG_SEND"],["MG_PACK","MG_SEND"],["MG_PARSE","AUTH"],["MG_REASM","MG_PARSE"],["MG_RECV","MG_PARSE"],["MG_RESEND","MG_SEND"],["MG_RESNDONE","MG_SEND"],["MG_ROUTE","MG_CHANSTAT"],["MG_SEND","MG_STAN"],["MG_SEQFILL","MG_STAN"],["MG_SEQNEXT","MG_STAN"],["MG_TOISO","MG_SEND"],["MG_UNPACK","MG_PARSE"],["MM_ACCT_REG","CM_LUHN"],["MM_ACCT_VERIFY","CM_LUHN"],["MM_APPLY_APPROVE","MM_VALIDATE"],["MM_APPLY_REG","CM_SEQ"],["MM_BIN_REG","VL_BIN"],["MM_BIZNO_CHECK","CM_CHECKDIGIT"],["MM_CHK_LIMIT","LIMIT_CHK"],["MM_CODE_REG","VL_CODEVAL"],["MM_CONTRACT_AMEND","CM_SEQ"],["MM_CONTRACT_NEW","CM_SEQ"],["MM_CONTRACT_RENEW","CM_SEQ"],["MM_FEERATE_SET","ST_MDR"],["MM_GRADE_ADJUST","VL_MERCH"],["MM_ISSUER_REG","VL_BIN"],["MM_LIMIT_SET","LIMIT_CHK"],["MM_MCC_REG","VL_CODEVAL"],["MM_MCC_UPD","VL_CODEVAL"],["MM_MERCH_CLOSE","CM_LOG"],["MM_MERCH_DORMANT","CM_LOG"],["MM_MERCH_GRADE","VL_MERCH"],["MM_MERCH_PAUSE","CM_LOG"],["MM_MERCH_REG","MM_VALIDATE"],["MM_MERCH_RESUME","CM_LOG"],["MM_MERCH_STATUS","MM_VALIDATE"],["MM_MERCH_UPD","MM_VALIDATE"],["MM_RATE_APPROVE","ST_MDR"],["MM_RATE_REQ","CM_LOG"],["MM_RISK_SCORE","CM_LOG"],["MM_RISK_SET","VL_MERCH"],["MM_TERMINAL_REG","CM_SEQ"],["MM_TERM_INSTALL","CM_SEQ"],["MM_VALIDATE","CM_LOG"],["PAY_ACCTCHK","LG_POST"],["PAY_ACCTVERIFY","PAY_ACCTCHK"],["PAY_ADJUST","ST_ADJUST"],["PAY_APPRBULK","PAY_FILEGEN"],["PAY_APPROVE","PAY_FILEGEN"],["PAY_BANKFILE","MG_SEND"],["PAY_BANKVERIFY","PAY_ACCTCHK"],["PAY_CANCEL","LG_REVERSE"],["PAY_CANCEL","ST_ADJUST"],["PAY_CHARGEBACK","LG_REVERSE"],["PAY_CLOSE","LG_POST"],["PAY_COMBINE","PAY_ACCTCHK"],["PAY_CONFIRM","LG_POST"],["PAY_FILEGEN","PAY_ACCTCHK"],["PAY_FILEREBUILD","PAY_ACCTCHK"],["PAY_HOLD","ST_HOLD"],["PAY_MERGE","PAY_ACCTCHK"],["PAY_NETOFF","LG_POST"],["PAY_RECLAIM","LG_REVERSE"],["PAY_RECLAIM","ST_ADJUST"],["PAY_REFUND","LG_REVERSE"],["PAY_RELEASE","ST_RELEASE"],["PAY_REMIT","MG_SEND"],["PAY_REPROC","PAY_FAILRSN"],["PAY_REQUEUE","MG_SEND"],["PAY_RESULT","LG_POST"],["PAY_RESVMODIFY","CM_BIZDAY"],["PAY_RETRY","PAY_FAILRSN"],["PAY_RETRYONE","PAY_FAILRSN"],["PAY_REVERSE","LG_REVERSE"],["PAY_REVERSE","ST_ADJUST"],["PAY_ROLLFWD","CM_BIZDAY"],["PAY_SCHEDULE","CM_BIZDAY"],["PAY_SPLIT","PAY_ACCTCHK"],["PAY_SPLITEVEN","PAY_ACCTCHK"],["PAY_SPLITRATIO","PAY_ACCTCHK"],["PAY_URGENT","PAY_ACCTCHK"],["PAY_VOIDONE","LG_REVERSE"],["PAY_XFERLINK","MG_SEND"],["RC_4WAY","VL_CROSSCHK"],["RC_ACQMATCH","VL_AXPURAPPR"],["RC_ACQ_DEP","VL_LEDGER"],["RC_ALERT","CM_NOTI_SEND"],["RC_AMTDIFF","VL_AMOUNT"],["RC_APPRGAP","VL_APPRNOPUR"],["RC_APPRMATCH","VL_RIAPPR"],["RC_APPR_ACQ","VL_APPRAMT"],["RC_AUTOFIX","LG_POST"],["RC_CLOSEDAY","ST_LOCKBATCH"],["RC_CNTDIFF","VL_SUMTXNCNT"],["RC_CONFIRM","ST_STATUS"],["RC_DEPGAP","VL_AXSETTPAY"],["RC_DEPMATCH","VL_AXSETTPAY"],["RC_DUPCHK","CM_LOG"],["RC_ESCALATE","CM_NOTI_HIST"],["RC_EXCEPTION","CM_LOG"],["RC_EXCNOTIFY","CM_NOTI_SEND"],["RC_FEEDIFF","VL_FEE"],["RC_FEERECON","VL_SUMFEECHK"],["RC_FIXFEE","ST_MERCHRATE"],["RC_FIXFX","CM_FX_CONV"],["RC_FIXROUND","CM_AMT_ROUND"],["RC_FXDIFF","VL_FXCHK"],["RC_FXRECON","CM_FX_CONV"],["RC_HOLDCLR","ST_UNLOCK"],["RC_HOLDSET","ST_HOLDAMT"],["RC_LEDGERBAL","LG_BALCHK"],["RC_LEDGERLINK","LG_POST"],["RC_LIMITCHK","LIMIT_CHK"],["RC_MANUAL","LG_POST"],["RC_NOTIFY","CM_NOTI_SEND"],["RC_ORPHAN","VL_PURNOAPPR"],["RC_OVERAMT","VL_AMOUNT"],["RC_PAYLEDGER","LG_POST"],["RC_PAYMATCH","VL_RIPAY"],["RC_PROGRESS","CM_STATUS"],["RC_RECORR","LG_ADJUST"],["RC_REDIFF","VL_AMOUNT"],["RC_REFULL","VL_SUMRECON"],["RC_RELEASE","ST_PAYSTATUS"],["RC_REMATCH","VL_DUPPURCH"],["RC_REPROC","VL_STATUS_CHK"],["RC_RERUN","VL_BATCH_CHK"],["RC_ROUNDDIFF","CM_AMT_ROUND"],["RC_SNAPSHOT","LG_JOURNAL"],["RC_STATUS","CM_STATUS"],["RC_SUMCHK","VL_SUMGROSS"],["RC_TOLERANCE","VL_AMOUNT"],["RC_UNDERAMT","VL_AMOUNT"],["RC_UNMATCH","CM_LOG"],["RECONCILE","SETTLE"],["SETTLE","ST_MDR"],["ST_ADJREVERSE","LG_REVERSE"],["ST_ADJUST","LG_POST"],["ST_APPROVE","PAY_FILEGEN"],["ST_APPROVEALL","PAY_FILEGEN"],["ST_CANCEL","LG_REVERSE"],["ST_CAPCHECK","VL_SETTLE"],["ST_CHARGEBACK","LG_REVERSE"],["ST_CONFIRM","PAY_FILEGEN"],["ST_CXLRECALC","ST_MDR"],["ST_DAILYCLOSE","LG_POST"],["ST_DIFFCHK","VL_SETTLE"],["ST_GRPSETTLE","LG_POST"],["ST_HOLD","LG_POST"],["ST_INSTANTPAY","PAY_FILEGEN"],["ST_LEDGERLINK","LG_POST"],["ST_LIMITCHK","VL_SETTLE"],["ST_MDR","LG_SETTLEPOST"],["ST_NETTING","LG_POST"],["ST_NEXTPAYDT","CM_BIZDAY"],["ST_OFFSET","LG_POST"],["ST_PAYDATE","CM_BIZDAY"],["ST_PRECONFIRM","VL_SETTLE"],["ST_RATEAPPLY","ST_MDR"],["ST_RECALC","ST_MDR"],["ST_REFUNDCALC","LG_REVERSE"],["ST_RELEASE","LG_POST"],["ST_RERUN","ST_MDR"],["ST_TAXINVCHK","VL_SETTLE"],["ST_VAT","ST_ADJUST"],["ST_VATADJUST","LG_POST"],["ST_VOIDRECALC","LG_REVERSE"],["ST_WHT","ST_ADJUST"],["ST_XFERLINK","LG_POST"],["VL_AMOUNT","CM_LOG"],["VL_ANOMALY","FRAUD_DETECT"],["VL_APPRAMT","CM_LOG"],["VL_APPRNOPUR","AUTH_HISTORY"],["VL_APPR_ACQ","CM_LOG"],["VL_AXPURAPPR","CM_LOG"],["VL_AXSETTPAY","CM_LOG"],["VL_BALANCE","LG_BALCHK"],["VL_BATCH_CHK","CM_LOG"],["VL_BIN","CM_LUHN"],["VL_BIN","BIN_ROUTE_INQ"],["VL_CARD","CM_LUHN"],["VL_CROSSCHK","AUTH_STATUS"],["VL_CROSSCHK","ST_STATUS"],["VL_CROSSCHK","LG_STATUS"],["VL_DAYLIMIT","LIMIT_CHK"],["VL_DUP","RC_DUPCHK"],["VL_DUPAPPR","AUTH_SUMMARY"],["VL_DUPAUTH","RC_UNMATCH"],["VL_DUPLEDGR","LG_DUPSCAN"],["VL_DUPPAY","RC_DUPCHK"],["VL_DUPPURCH","CM_LOG"],["VL_DUPSETTLE","RC_UNMATCH"],["VL_EXPIRY","CM_LUHN"],["VL_EXPIRY","CARD_EXPIRE_CHK"],["VL_FEE","CM_LOG"],["VL_FEERECALC","CM_AMT_ROUND"],["VL_FORMAT","CM_LUHN"],["VL_FXCHK","CM_FX_VALID"],["VL_LEDGBAL","LG_BALCHK"],["VL_LEDGENTRY","LG_INQUIRY"],["VL_LEDGER","CM_LOG"],["VL_LIMIT","LIMIT_CHK"],["VL_MDRRATE","ST_RATECARD"],["VL_NEGBAL","RC_EXCEPTION"],["VL_NEGFEE","RC_EXCEPTION"],["VL_NEGNET","RC_EXCEPTION"],["VL_NIGHTTXN","FRAUD_RULE_NIGHT"],["VL_OUTLIER","FRAUD_DETECT"],["VL_OVERLIMIT","LIMIT_CHK"],["VL_PURNOAPPR","AUTH_HISTORY"],["VL_REFINTEG","LG_INQUIRY"],["VL_RIAPPR","AUTH_STATUS"],["VL_RICANCEL","CANCEL_STATUS"],["VL_RIFX","CM_FX_CONV"],["VL_RIINSTALL","PREAUTH_INQ"],["VL_RILEDGER","LG_STATUS"],["VL_RIMERCH","CM_CODE"],["VL_RIPAY","LG_INQUIRY"],["VL_RIPURCH","AUTH_HISTORY"],["VL_RISETTLE","ST_STATUS"],["VL_RITAXINV","ST_VATDETAIL"],["VL_SALES","RC_EXCEPTION"],["VL_SETTLE","RC_EXCEPTION"],["VL_SPIKEAMT","FRAUD_RULE_AMT"],["VL_STATUS_CHK","CM_STATUS"],["VL_SUMFEECHK","CM_LOG"],["VL_SUMGROSS","CM_LOG"],["VL_SUMRECON","CM_LOG"],["VL_SUMTXNCNT","CM_LOG"],["VL_SUSPACT","RISK_SCORE_INQ"],["VL_SUSPESCAL","RC_ESCALATE"],["VL_THRESHOLD","FRAUD_DETECT"],["VL_VELOCITY","VELOCITY_DAY"],["VL_ZERONET","RC_EXCEPTION"]],"CHAINS":[["ACQUIRE","RECONCILE","SETTLE","ST_MDR","LG_SETTLEPOST","LG_BALCHK"],["ACQ_SETTLELINK","ST_MDR","LG_SETTLEPOST","LG_BALCHK"],["MG_RECV","MG_PARSE","AUTH","FRAUD_DETECT","MG_LOG"],["CL_DAILY","VL_SALES","RC_EXCEPTION","CM_LOG"],["PAY_APPROVE","PAY_FILEGEN","PAY_ACCTCHK","LG_POST","LG_BALCHK"]],"STAT":{"nodes":550,"edges":492,"callees":166,"modxedge":41,"maxdepth":6}}; diff --git a/app/ui/index.html b/app/ui/index.html index b1f3a4c..52ef173 100644 --- a/app/ui/index.html +++ b/app/ui/index.html @@ -123,10 +123,10 @@
상세