KR101218444B1 - 전송을 위한 데이터 생성 방법 및 그 서버 - Google Patents

전송을 위한 데이터 생성 방법 및 그 서버 Download PDF

Info

Publication number
KR101218444B1
KR101218444B1 KR1020110019812A KR20110019812A KR101218444B1 KR 101218444 B1 KR101218444 B1 KR 101218444B1 KR 1020110019812 A KR1020110019812 A KR 1020110019812A KR 20110019812 A KR20110019812 A KR 20110019812A KR 101218444 B1 KR101218444 B1 KR 101218444B1
Authority
KR
South Korea
Prior art keywords
data
additional information
information file
file
receiving terminal
Prior art date
Application number
KR1020110019812A
Other languages
English (en)
Other versions
KR20120101786A (ko
Inventor
신병준
최인곤
Original Assignee
(주)네오위즈게임즈
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)네오위즈게임즈 filed Critical (주)네오위즈게임즈
Priority to KR1020110019812A priority Critical patent/KR101218444B1/ko
Priority to PCT/KR2012/001642 priority patent/WO2012121537A2/ko
Publication of KR20120101786A publication Critical patent/KR20120101786A/ko
Application granted granted Critical
Publication of KR101218444B1 publication Critical patent/KR101218444B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Abstract

본 발명은 전송을 위한 데이터 생성 방법 및 그 서버에 관한 것으로, 보다 상세하게는 전송할 데이터의 부가 정보를 부가정보파일에 기록하고, 서버와 수신 단말기에서 상기 부가정보파일을 공유함으로써, 데이터 전송시 순수 데이터만을 전송하여 효율을 높일 수 있는 전송을 위한 데이터 생성 방법 및 그 서버에 관한 것이다.
이를 위하여, 본 발명에 따른 전송을 위한 데이터 생성 방법은, 데이터의 부가 정보를 기록한 부가정보파일을 생성하는 단계와 상기 부가정보파일을 저장하는 단계와 데이터를 수신하는 수신 단말기에 상기 부가정보파일을 전송하는 단계 및 상기 수신 단말기에 전송할 데이터를 생성하는 단계를 포함한다.
이에 따라, 데이터 전송시 순수 데이터만을 전송하기 때문에 전송 속도가 빠르다.

Description

전송을 위한 데이터 생성 방법 및 그 서버{Method and server for generating data to transport}
본 발명은 전송을 위한 데이터 생성 방법 및 그 서버에 관한 것으로, 보다 상세하게는 전송할 데이터의 부가 정보를 부가정보파일에 기록하고, 서버와 수신 단말기에서 상기 부가정보파일을 공유함으로써, 데이터 전송시 순수 데이터만을 전송하여 효율을 높일 수 있는 전송을 위한 데이터 생성 방법 및 그 서버에 관한 것이다.
통신 기술이 발달함에 따라서 단말기 간에 유무선 네트워크를 통하여 데이터를 전송하는 일들은 점차 증가하고 있고, 일상 생활에서나 업무를 할 때에도 일반적인 일이 되었다. 간단한 메일부터 텍스트 파일, 사진, 동영상, 온라인 게임 등 전송하는 데이터도 다양하다.
하지만 이러한 데이터들이 전송되기 위해서는 이진 데이터 형태 등으로 변환되어야 한다. 또한 변환된 데이터가 한번에 전송되기 힘든 경우가 많기 때문에 전송의 효율성을 높이기 위하여 패킷 단위로 나뉘어져 전송되는 경우가 많다. 따라서 전송되는 데이터는 원래의 데이터보다 전송되는 데이터의 타입, 사이즈, 패킷의 순서, 송신지, 수신지 등 다양한 정보를 더 포함할 수밖에 없으며, 전송되는 데이터의 용량이 커지는 문제점이 있다. 또한 데이터의 용량이 커짐에 따라 전송되는 속도도 떨어지는 문제점이 있다.
또한 데이터가 전송 과정에서 분실되거나 노출이 되는 경우, 데이터에 대한 부가 정보도 함께 들어있기 때문에 보안에 취약하다는 문제점이 있다.
본 발명은 상술한 문제점을 해결하기 위하여 창출된 것으로, 전송되는 데이터의 부가정보를 기록한 부가정보파일을 생성하여 서버와 수신 단말기에 저장하고, 부가정보 없이 전송하고자 하는 본래의 데이터만을 전송하여, 상기 부가정보파일을 기초로 수신한 데이터를 해석하도록 전송을 위한 데이터 생성 방법 및 그 서버를 제공하는 데 목적이 있다.
상기의 목적을 달성하기 위한 본 발명에 따른 전송을 위한 데이터 생성 방법은, 데이터의 부가 정보를 기록한 부가정보파일을 생성하는 단계와 상기 부가정보파일을 저장하는 단계와 데이터를 수신하는 수신 단말기에 상기 부가정보파일을 전송하는 단계 및 상기 수신 단말기에 전송할 데이터를 생성하는 단계를 포함한다.
또한 상기의 전송을 위한 데이터 생성 방법을 실행시키는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체도 포함한다.
또한 상기의 목적을 달성하기 위한 본 발명에 따른 전송을 위한 데이터 생성하는 서버는, 데이터의 부가 정보를 기록한 부가정보파일을 생성하는 파일생성부와 상기 부가정보파일을 저장하는 파일저장부와 데이터를 수신하는 수신 단말기에 상기 부가정보파일을 전송하는 파일전송부 및 상기 수신 단말기에 전송할 데이터를 생성하는 데이터생성부를 포함한다.
본 발명에 따른 전송을 위한 데이터 생성 방법 및 그 서버에 의하면,
첫째, 전송할 데이터의 부가 정보를 부가정보파일에 기록하여 서버와 수신 단말기에서 상기 부가정보파일을 공유함으로써, 데이터 전송시 순수 데이터만을 전송하기 때문에 전송 속도가 빠르다.
둘째, 부가정보파일을 통하여 전송 포맷을 결정할 수 있으므로, 데이터 전송을 위한 별도의 작업이 필요가 없어 효율적이다.
셋째, 전송되는 데이터의 부가 정보는 부가정보파일에 있기 때문에 전송되는 데이터가 노출되더라도 보안에 큰 문제가 되지 않는다.
도 1은 전송을 위한 데이터를 생성하는 서버의 기능블록도이고,
도 2는 데이터 타입 테이블의 실시 예이고,
도 3은 전송을 위한 데이터를 생성하는 방법의 흐름도이다.
이하 첨부된 도면을 참조하면서 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여, 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
먼저, 본 발명에서 데이터라고 하면, 서버에서 수신 단말기로 전송해야하는 순수한 데이터만을 의미하고, 상기 전송하고자 하는 데이터와 관련된 데이터의 타입, 데이터의 사이즈 등의 부가적인 정보는 포함하지 않는다.
도 1은 전송을 위한 데이터를 생성하는 서버의 기능블록도이고, 상기 도 1을 참조하여 전송을 위한 데이터를 생성하는 서버를 설명한다.
전송을 위한 데이터를 생성하는 서버(100)는 파일생성부(110), 파일저장부(120), 파일전송부(130), 데이터생성부(140)로 구성된다.
상기 파일생성부(110)는 데이터의 부가 정보를 기록한 부가정보파일을 생성한다. 데이터를 네트워크를 통하여 전송하는 경우에 데이터의 타입, 데이터의 사이즈, 데이터가 나뉘어서 전송되는 경우의 패킷 순서 등 전송에 관한 데이터 관련 정보가 있어야 수신 단말기에서는 수신한 데이터를 해석할 수 있다. 따라서 데이터를 전송할 때에 부가정보를 포함하여 전송하게 되는데, 상기 파일생성부(110)에서는 데이터의 부가정보를 데이터와 함께 전송하지 않아도 되도록 부가정보파일에 기록하여 부가정보파일을 별도로 생성한다. 상기 부가정보파일은 상기 데이터의 타입, 상기 데이터의 사이즈, 상기 데이터가 변환되는 방식에 관한 정보를 포함한다.
상기 데이터가 변환되는 방식는, 상기 데이터가 인코딩(encoding)되는 방식 또는 디코딩(decoding)되는 방식을 포함하며, 프로그램 언어별 변환 코드를 포함한다. 즉, 수신 단말기가 C++, Python 등의 다양한 언어로 구현될 수 있으므로 데이터가 인코딩되는 방식 또는 디코딩되는 방식을 포함한 데이터가 변환되는 방식을 프로그램 언어별로 기술해두어, 서버에서 구현된 언어에 상관없이 수신 단말기에서는 구현된 언어로 된 부가정보파일을 이용하여 수신한 데이터를 해석할 수 있도록 한다.
또한 상기 부가정보파일은 데이터 타입 테이블을 포함할 수 있는데, 도 2는 상기 데이터 타입 테이블의 실시 예를 도시한 것이다. 데이터를 변환하는 방법을 프로그램 언어별로 기술할 수 있는바, 프로그램 언어별로 데이터 타입이 상이하기 때문에 매치해 줄 필요가 있다. 따라서 부가정보파일은 데이터 타입 테이블을 포함하여 프로그램 언어별로 상이한 데이터 타입을 매치하는데 이용한다.
또한, 상기 파일생성부(110)에서는 상기 수신 단말기에 전송할 데이터의 구조를 정의한 파일을 컴파일하여 상기 부가정보파일을 생성한다.
먼저, 컴파일러(compiler)는 특정 프로그래밍 언어로 쓰여 있는 문서를 다른 프로그래밍 언어로 옮기는 프로그램을 말하고, 원래의 문서를 소스 코드 혹은 원시 코드라고 부르고, 출력된 문서를 목적 코드라고 부른다. 목적 코드는 주로 다른 프로그램이나 하드웨어가 처리하기에 용이한 형태로 출력되지만 사람이 읽을 수 있는 문서 파일이나 그림 파일 등으로 옮기는 경우도 있다. 원시 코드에서 목적 코드로 옮기는 과정을 컴파일(compile)이라고 한다. 소스 코드를 컴파일하는 이유는 대부분 사람에게 이해하기 쉬운 형태의 고수준 언어로부터 실행가능한 기계어 프로그램을 만들기 위해서이다.
상기 파일생성부(110)에서는 상기 수신 단말기에 전송할 데이터의 구조를 정의한 파일을 컴파일하여 상기 부가정보파일을 생성하는데, 데이터의 구조를 정의한 파일이 소스 코드가 되고, 컴파일하여 생성된 부가정보파일이 목적 코드가 된다.
상기 컴파일러에는, 컴파일러가 실행되는 컴퓨터나 운영체제가 컴파일러의 목적코드가 실행될 컴퓨터나 운영체제와 같은 경우인 네이티브 컴파일러(native compiler)가 있고, 반면에 다른 컴퓨터나 운영체제에서 실행되도록 제작되는 크로스 컴파일러(cross compiler)가 있다. 부가정보파일 중에서 데이터를 변환하는 방법은 프로그램 언어별로 기술할 수 있으므로 상기 파일생성부(110)는 크로스 컴파일러를 포함할 수 있다.
상기 파일저장부(120)는 상기 부가정보파일을 저장하고, 상기 파일전송부(130)는 데이터를 수신하는 수신 단말기에 상기 부가정보파일을 전송한다. 이에 따라 서버(100)와 수신 단말기 양쪽 모두, 동일한 부가정보파일을 가지게 되고, 데이터를 전송할 때 데이터의 부가 정보를 함께 전송하기 않더라도 데이터는 상기 부가정보파일을 이용하여 해석될 수 있다.
서버(100)와 수신 단말기 양쪽 모두가 부가정보파일을 가지고 있을 경우, 서버(100)에서 수신 단말기로 데이터를 전송하는데, 상기 데이터생성부(140)에서는 상기 수신 단말기에 전송할 데이터를 생성한다. 상기 데이터에 관한 부가 정보는 상기 부가정보파일에 다 저장되어 있으므로, 부가 정보 없이 전송하고자 하는 내용을 담은 데이터만으로 구성된다. 다만, string 타입에 대해서는 전체 문자열의 길이(4 byte)를 문자열 데이터 가장 앞에 저장하는 것이 바람직하다. 이처럼 데이터의 부가 정보가 없기 때문에 수신 단말기에 상기 부가정보파일이 없으면 수신한 데이터만으로는 해석이 불가능하다.
상기 서버(100)가 구현되는 실시 예로, C++로 구현된 서버 A와 Python으로 구현된 클라이언트 B가 사용자 정보를 주고 받고자 하는 경우를 살펴본다. 사용자 정보는 User라는 class(클래스)에 이름, 나이, 거주 지역 등 세세한 정보까지 정의되어 있다고 가정하며, class에 기술된 내용은 주고 받을 데이터에 대해 기술한 내용이다.
class User {
string name ;
UNIT age;
};
이와 같은 코드를 포함하여 데이터의 구조를 정의한 파일에 기술하고 컴파일러로 컴파일을 한다. 상기 컴파일러는 도 2의 데이터 타입 테이블에 기술된 내용에 따라 부가정보파일을 생성한다. 상기 부가정보파일은 C++ 언어의 경우에는 데이터 정보만 기술한 헤더 파일과 데이터 변환 방법을 기술한 헤더 파일이고, Python의 경우에는 별도의 모듈 파일이 이에 해당한다.
상기 생성된 부가정보파일을 서버와 클라이언트가 각각 나누어 저장하고, 각자 작업을 하는데, 부가정보파일은 각 언어에서 바로 사용할 수 있는 class 형태로 제공하고 있으므로 바로 사용이 가능하다. 데이터를 이진 데이터(binary data) 형태로 전송하는데, 상기 이진 데이터는 데이터의 타입과 사이즈가 누락된 대신에 부가정보 파일에 기술된 순서대로 각 데이터들이 순서화되어 있다. 따라서 상기 사용자 정보를 수신한 수신 단말기에서는 수신된 이진 데이터에 대해 부가정보파일을 이용하여 데이터를 해석하여 재가공하여 사용한다.
도 3은 전송을 위한 데이터를 생성하는 방법의 흐름도로, 상기 도 3을 참조하여 전송을 위한 데이터를 생성하는 방법을 설명한다.
데이터의 부가 정보를 기록한 부가정보파일을 생성한다(S10). 상기 데이터의 부가 정보와 부가정보파일은 상기 전송을 위한 데이터를 생성하는 서버에서 설명한 바와 동일하다. 상기 생성한 부가정보파일을 저장하고(S30), 수신단말기에 상기 부가정보파일을 전송한다(S30). 이에 따라 데이터를 전송하는 서버와 수신 단말기 양쪽 모두, 동일한 부가정보파일을 가지게 되고, 데이터를 전송할 때 데이터의 부가 정보를 함께 전송하기 않아도 데이터는 상기 부가정보파일을 이용하여 해석될 수 있다. 부가정보파일 전송이 완료된 후에 수신 단말기에 전송할 데이터를 생성한다(S40).
또한 본 발명은 상기 전송을 위한 데이터를 생성하는 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체도 포함한다.
이상과 같이, 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술 사상과 아래에 기재될 청구범위의 균등 범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.
100 서버 110 파일생성부
120 파일저장부 130 파일전송부
140 데이터생성부

Claims (7)

  1. 데이터의 부가 정보를 기록한 부가정보파일을 생성하는 단계;
    상기 부가정보파일을 저장하는 단계;
    데이터를 수신하는 수신 단말기에 상기 부가정보파일을 전송하는 단계; 및
    상기 수신 단말기에 전송할 상기 데이터를 생성하는 단계;를 포함하고,
    상기 부가정보파일을 생성하는 단계는,
    상기 수신 단말기에 전송할 상기 데이터의 구조를 정의한 파일을 컴파일하여 상기 부가정보파일을 생성하는 것을 특징으로 하는 전송을 위한 데이터 생성 방법.
  2. 제 1항에 있어서,
    상기 데이터는 상기 부가정보파일을 이용하여 해석되는 것을 특징으로 하는 전송을 위한 데이터 생성 방법.
  3. 삭제
  4. 제 1항에 있어서,
    상기 부가정보파일은,
    상기 데이터의 타입, 상기 데이터의 사이즈, 상기 데이터가 변환되는 방식에 관한 정보를 포함하는 것을 특징으로 하는 전송을 위한 데이터 생성 방법.
  5. 제 4항에 있어서,
    상기 데이터가 변환되는 방식는,
    상기 데이터가 인코딩(encoding)되는 방식 또는 디코딩(decoding)되는 방식을 포함하며,
    프로그램 언어별 변환 코드를 포함하는 것을 특징으로 하는 전송을 위한 데이터 생성 방법.
  6. 제 5항에 있어서,
    상기 부가정보파일은,
    데이터 타입 테이블을 포함하는 것을 특징으로 하는 전송을 위한 데이터 생성 방법.
  7. 데이터의 부가 정보를 기록한 부가정보파일을 생성하는 파일생성부;
    상기 부가정보파일을 저장하는 파일저장부;
    데이터를 수신하는 수신 단말기에 상기 부가정보파일을 전송하는 파일전송부; 및
    상기 수신 단말기에 전송할 상기 데이터를 생성하는 데이터생성부;를 포함고,
    상기 파일생성부는,
    상기 수신 단말기에 전송할 상기 데이터의 구조를 정의한 파일을 컴파일하여 상기 부가정보파일을 생성하는 것을 특징으로 하는 전송을 위한 데이터를 생성하는 서버.
KR1020110019812A 2011-03-07 2011-03-07 전송을 위한 데이터 생성 방법 및 그 서버 KR101218444B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110019812A KR101218444B1 (ko) 2011-03-07 2011-03-07 전송을 위한 데이터 생성 방법 및 그 서버
PCT/KR2012/001642 WO2012121537A2 (ko) 2011-03-07 2012-03-07 전송을 위한 데이터 생성 방법 및 그 서버

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110019812A KR101218444B1 (ko) 2011-03-07 2011-03-07 전송을 위한 데이터 생성 방법 및 그 서버

Publications (2)

Publication Number Publication Date
KR20120101786A KR20120101786A (ko) 2012-09-17
KR101218444B1 true KR101218444B1 (ko) 2013-01-21

Family

ID=46798647

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110019812A KR101218444B1 (ko) 2011-03-07 2011-03-07 전송을 위한 데이터 생성 방법 및 그 서버

Country Status (2)

Country Link
KR (1) KR101218444B1 (ko)
WO (1) WO2012121537A2 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090004321A (ko) * 2007-07-06 2009-01-12 한국전자통신연구원 디지털 콘텐츠의 효율적인 저장/관리/소비를 위한 통합저장 포맷 및 이를 이용한 디지털 만화 콘텐츠 서비스시스템 및 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI107000B (fi) * 1999-02-17 2001-05-15 Nokia Mobile Phones Ltd Otsikon pakkaaminen reaaliaikaisissa palveluissa
KR100601634B1 (ko) * 2000-06-07 2006-07-14 삼성전자주식회사 고속 복제 방지 방법
KR100467570B1 (ko) * 2001-03-14 2005-01-24 삼성전자주식회사 디지털 콘텐츠를 위한 보안 서비스 방법 및 그를 위한시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090004321A (ko) * 2007-07-06 2009-01-12 한국전자통신연구원 디지털 콘텐츠의 효율적인 저장/관리/소비를 위한 통합저장 포맷 및 이를 이용한 디지털 만화 콘텐츠 서비스시스템 및 방법

Also Published As

Publication number Publication date
WO2012121537A2 (ko) 2012-09-13
WO2012121537A3 (ko) 2012-11-15
KR20120101786A (ko) 2012-09-17

Similar Documents

Publication Publication Date Title
KR102249267B1 (ko) 2진 데이터를 인코딩 및 디코딩하기 위한 방법 및 디바이스
WO2016029801A1 (zh) 编码、解码方法以及编码装置和解码装置
US11153365B2 (en) Transfer of files with arrays of strings in soap messages
US8683320B2 (en) Processing module, a device, and a method for processing of XML data
US20040205216A1 (en) Efficient message packaging for transport
CN101123616A (zh) 一种服务器管理的方法及一种服务器管理系统
CN104521239A (zh) 视频数据文件的同步编码和发送
WO2023015853A1 (zh) 一种应用日志打码方法、装置及计算机可读存储介质
US11210406B2 (en) Encrypting system level data structures
KR101218444B1 (ko) 전송을 위한 데이터 생성 방법 및 그 서버
Riedel et al. A model driven internet of things
US9201838B2 (en) Systems and methods for the efficient exchange of hierarchical data
TW201339861A (zh) 提供較小目標編碼空間之碼轉換的方法、電腦裝置與程式產品
US20230214577A1 (en) Character string transmission method and device, computer, and readable storage medium
JP2009128945A (ja) データ処理装置及び方法並びにプログラム
CN111314375A (zh) 医保数据适配引擎、医保数据适配方法、电子设备及存储介质
CN103473058B (zh) 一种生成asn1数据文件的便捷编码方法
KR100660057B1 (ko) 패스트 인포셋을 이용한 이진 엑스엠엘 저장 방법 및 복원방법
CN209201103U (zh) 一种基于usb接口的数据传输系统
JP4447373B2 (ja) データ交換計算機
CN114666150A (zh) 一种使用反向网闸实现单向数据传输的系统及方法
CN102695299B (zh) 无线数据卡及其通信方法
JP2007249619A (ja) 構造化文書符号化装置および構造化文書復号化装置
CN111125207A (zh) 一种数据获取方法、装置、连接器及presto引擎
KR100931636B1 (ko) 모바일 플랫폼에서의 BiM 복호기에 스키마 정보를입력하는 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151110

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160930

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171026

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20181002

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20191002

Year of fee payment: 8