feat:add analysis code of comtrade file in golang

This commit is contained in:
douxu 2024-07-30 16:15:09 +08:00
parent 67e4988a55
commit bbf5365602
23 changed files with 2048 additions and 0 deletions

18
.gitignore vendored
View File

@ -21,3 +21,21 @@
# Go workspace file # Go workspace file
go.work go.work
# Compiled Object files, Static and Dynamic libs (Shared Objects)
*.o
*.a
*.so
# OS General
Thumbs.db
.DS_Store
# project
*.cert
*.key
*.log
# Develop tools
.vscode/
.idea/
*.swp

70
analog.go Normal file
View File

@ -0,0 +1,70 @@
package comtrade
// AnalogChan 模拟通道
type AnalogChan struct {
An uint32 `json:"an"` //模拟通道索引号
ChId string `json:"ch_id"` //通道标识
Ph string `json:"ph"` //通道相别标识
Ccbm string `json:"ccbm"` //被监视的电路元件
Uu string `json:"uu"` //通道单位
A float32 `json:"a"` //通道增益系数
B float32 `json:"b"` //通道偏移量
Skew float32 `json:"skew"` //通道时滞
Min float32 `json:"min"` //通道最小值
Max float32 `json:"max"` //通道最大值
Primary float32 `json:"primary"` //一次系数
Secondary float32 `json:"secondary"` //二次系数
PS string `json:"ps"` //一次二次标识
}
func (c *AnalogChan) GetAn() uint32 {
return c.An
}
func (c *AnalogChan) GetChId() string {
return c.ChId
}
func (c *AnalogChan) GetPh() string {
return c.Ph
}
func (c *AnalogChan) GetCcbm() string {
return c.Ccbm
}
func (c *AnalogChan) GetUu() string {
return c.Uu
}
func (c *AnalogChan) GetA() float32 {
return c.A
}
func (c *AnalogChan) GetB() float32 {
return c.B
}
func (c *AnalogChan) GetSkew() float32 {
return c.Skew
}
func (c *AnalogChan) GetMin() float32 {
return c.Min
}
func (c *AnalogChan) GetMax() float32 {
return c.Max
}
func (c *AnalogChan) GetPrimary() float32 {
return c.Primary
}
func (c *AnalogChan) GetSecondary() float32 {
return c.Secondary
}
func (c *AnalogChan) GetPS() string {
return c.PS
}

264
ascii_config.go Normal file
View File

@ -0,0 +1,264 @@
package comtrade
import (
"bytes"
"fmt"
"io"
"os"
"strconv"
"strings"
"time"
)
func ParseComtradeCfg(filePath string) (*ComtradeCfg, error) {
cfgFile, err := os.Open(filePath)
if err != nil {
return nil, err
}
defer cfgFile.Close()
comtradeCfg := &ComtradeCfg{}
var tempList [][]byte
content, err := io.ReadAll(cfgFile)
if err != nil {
return nil, err
}
lines := bytes.Split(content, []byte("\n"))
// read first line
tempList = bytes.Split(lines[0], []byte(","))
if len(tempList) < 3 {
return nil, ErrReadFirstLine
}
// station_name, rec_dev_id, rev_year
comtradeCfg.StationName = ByteToString(tempList[0])
comtradeCfg.RecDevID = ByteToString(tempList[1])
if value, err := strconv.ParseUint(ByteToString(tempList[2]), 10, 16); err != nil {
return nil, err
} else {
comtradeCfg.RevYear = uint16(value)
}
// read second line
tempList = bytes.Split(lines[1], []byte(","))
if len(tempList) < 3 {
return nil, ErrReadSecondLine
}
// total channel number
if value, err := strconv.ParseUint(ByteToString(tempList[0]), 10, 16); err != nil {
return nil, err
} else {
comtradeCfg.Total = uint32(value)
}
if !bytes.Contains(tempList[1], []byte("A")) || !bytes.Contains(tempList[2], []byte("D")) {
return nil, ErrReadADChannel
}
// analog channel total number
if value, err := strconv.ParseUint(string(bytes.TrimSuffix(bytes.TrimSpace(tempList[1]), []byte("A"))), 10, 64); err != nil {
return nil, err
} else {
comtradeCfg.AnalogNum = uint32(value)
}
// digit channel total number
if value, err := strconv.ParseUint(string(bytes.TrimSuffix(bytes.TrimSpace(tempList[2]), []byte("D"))), 10, 64); err != nil {
return nil, err
} else {
comtradeCfg.DigitalNum = uint32(value)
}
// initialize analog and digital channels
comtradeCfg.Analog = make([]AnalogChan, comtradeCfg.AnalogNum)
comtradeCfg.Digital = make([]DigitalChan, comtradeCfg.DigitalNum)
// 读取模拟通道 read analog channels
for i := 0; i < int(comtradeCfg.AnalogNum); i++ {
tempList = bytes.Split(lines[2+i], []byte(","))
if len(tempList) < 10 {
return nil, ErrReadAnalogChannel
}
// 通道索引号 An
if num, err := strconv.ParseInt(ByteToString(tempList[0]), 10, 64); err != nil {
return nil, err
} else {
comtradeCfg.Analog[i].An = uint32(num)
}
// 通道标识 ch_id通道相标识 ph
comtradeCfg.Analog[i].ChId = ByteToString(tempList[1])
comtradeCfg.Analog[i].Ph = ByteToString(tempList[2])
// 被监视的电路元件 ccbm 通道单位 uu
comtradeCfg.Analog[i].Ccbm = ByteToString(tempList[3])
comtradeCfg.Analog[i].Uu = ByteToString(tempList[4])
// 通道增益系数 a
if num, err := strconv.ParseFloat(ByteToString(tempList[5]), 64); err != nil {
return nil, err
} else {
comtradeCfg.Analog[i].A = float32(num)
}
// 通道偏移量 b
if num, err := strconv.ParseFloat(ByteToString(tempList[6]), 64); err != nil {
return nil, err
} else {
comtradeCfg.Analog[i].B = float32(num)
}
// 从采样时刻开始的通道时滞 skew
if num, err := strconv.ParseFloat(ByteToString(tempList[7]), 64); err != nil {
return nil, err
} else {
comtradeCfg.Analog[i].Skew = float32(num)
}
// Min Value at current channel
if num, err := strconv.ParseFloat(ByteToString(tempList[8]), 64); err != nil {
return nil, err
} else {
comtradeCfg.Analog[i].Min = float32(num)
}
// Max Value at current channel
if num, err := strconv.ParseFloat(ByteToString(tempList[9]), 64); err != nil {
return nil, err
} else {
comtradeCfg.Analog[i].Max = float32(num)
}
if len(tempList) > 10 {
if num, err := strconv.ParseFloat(ByteToString(tempList[10]), 64); err == nil {
comtradeCfg.Analog[i].Primary = float32(num)
}
}
if len(tempList) > 11 {
if num, err := strconv.ParseFloat(ByteToString(tempList[11]), 64); err == nil {
comtradeCfg.Analog[i].Secondary = float32(num)
}
}
}
// read digit channels
for i := 0; i < int(comtradeCfg.DigitalNum); i++ {
tempList = bytes.Split(lines[2+int(comtradeCfg.AnalogNum)+i], []byte(","))
if len(tempList) < 3 {
return nil, ErrReadDigitalChannel
}
if num, err := strconv.Atoi(ByteToString(tempList[0])); err != nil {
return nil, err
} else {
comtradeCfg.Digital[i].Dn = uint32(num)
}
comtradeCfg.Digital[i].ChId = ByteToString(tempList[1])
comtradeCfg.Digital[i].Ph = ByteToString(tempList[2])
// checking vector length to avoid IndexError
if len(tempList) > 3 {
// channel element (usually null)
comtradeCfg.Digital[i].Ccbm = ByteToString(tempList[3])
}
if len(tempList) > 4 {
if num, err := strconv.ParseUint(ByteToString(tempList[4]), 10, 64); err != nil {
return nil, err
} else {
comtradeCfg.Digital[i].Y = uint8(num)
}
}
}
// read frequency
var line uint32 = 2
tempList = bytes.Split(lines[line+comtradeCfg.Total], []byte(","))
if num, err := strconv.ParseFloat(ByteToString(tempList[0]), 64); err != nil {
return nil, err
} else {
comtradeCfg.Lf = float32(num)
line++
}
// read sampling rate num
tempList = bytes.Split(lines[line+comtradeCfg.Total], []byte(","))
if num, err := strconv.ParseUint(ByteToString(tempList[0]), 10, 64); err != nil {
return nil, err
} else {
comtradeCfg.Nrates = uint16(num)
line++
}
// read Sample and endSample
for i := 0; i < int(comtradeCfg.Nrates); i++ {
tempList = bytes.Split(lines[line+uint32(i)+comtradeCfg.Total], []byte(","))
if len(tempList) < 2 {
return nil, ErrReadSample
}
if num, err := strconv.ParseFloat(ByteToString(tempList[0]), 64); err != nil {
return nil, err
} else {
comtradeCfg.Samp = append(comtradeCfg.Samp, float32(num))
}
if num, err := strconv.ParseFloat(ByteToString(tempList[1]), 64); err != nil {
return nil, err
} else {
comtradeCfg.EndSamp = append(comtradeCfg.EndSamp, uint32(num))
}
}
line += uint32(comtradeCfg.Nrates)
// read first data time (dd/mm/yyyy,hh:mm:ss.ssssss)
if start, err := time.Parse(DateTimeLayout, ByteToString(lines[line+comtradeCfg.Total])); err != nil {
if strings.Contains(err.Error(), MonthOutOfRange) {
// try to parse date reverse month and day: mm/dd/yyyy
if start, err = time.Parse(DateTimeLayout2, ByteToString(lines[line+comtradeCfg.Total])); err != nil {
return nil, err
} else {
comtradeCfg.FirstDataTime = start
line++
}
}
if err != nil {
return nil, err
}
} else {
comtradeCfg.FirstDataTime = start
line++
}
// read trigger time (dd/mm/yyyy,hh:mm:ss.ssssss)
tempList = bytes.Split(lines[line+comtradeCfg.Total], []byte(","))
if trigger, err := time.Parse(DateTimeLayout, ByteToString(bytes.Join(tempList, []byte(",")))); err != nil {
if strings.Contains(err.Error(), MonthOutOfRange) {
// try to parse date reverse month and day
if trigger, err = time.Parse(DateTimeLayout2, ByteToString(bytes.Join(tempList, []byte(",")))); err != nil {
return nil, err
} else {
comtradeCfg.TriggerTime = trigger
line++
}
}
if err != nil {
return nil, err
}
} else {
comtradeCfg.TriggerTime = trigger
line++
}
// read data file type
tempList = bytes.Split(lines[line+comtradeCfg.Total], []byte(","))
// convert ft value to upper style
comtradeCfg.Ft = strings.ToUpper(ByteToString(tempList[0]))
fmt.Printf("ft vavlue:%v\n", comtradeCfg.Ft)
// read time multiplication factor
line++
tempList = bytes.Split(lines[line+comtradeCfg.Total], []byte(","))
if !bytes.Equal(tempList[0], []byte("")) {
num, err := strconv.ParseFloat(ByteToString(tempList[0]), 64)
if err != nil {
return nil, err
}
comtradeCfg.TimeMult = float32(num)
} else {
comtradeCfg.TimeMult = 1
line++
}
return comtradeCfg, nil
}
func ByteToString(b []byte) string {
return strings.TrimSpace(string(b))
}

19
ascii_config_test.go Normal file
View File

@ -0,0 +1,19 @@
package comtrade
import (
"reflect"
"testing"
)
func TestParseComtradeCfg(t *testing.T) {
filePath := "testdata/test1.cfg"
got, err := ParseComtradeCfg(filePath)
if err != nil {
t.Errorf("ParseComtradeCfg() error = %v", err)
return
}
if reflect.TypeOf(got) != reflect.TypeOf(&ComtradeCfg{}) {
t.Errorf("ParseComtradeCfg() got = %v", got)
}
t.Log(got.StationName)
}

85
ascii_data.go Normal file
View File

@ -0,0 +1,85 @@
package comtrade
import (
"bytes"
"io"
"os"
"strconv"
)
// Parse ASCIIData ASCIIData is the ascii data of a comtrade data file.
func init() {
Add(TypeASCII, func() Parser {
return &ASCIIData{}
})
}
type ASCIIData struct{}
func (a *ASCIIData) Parse(filePath string, analogNum, digitalNum, endSamp uint32) (*Data, error) {
comtradeData := &Data{}
datFile, err := os.Open(filePath)
if err != nil {
return nil, err
}
defer datFile.Close()
content, err := io.ReadAll(datFile)
if err != nil {
return nil, err
}
lines := bytes.Split(content, []byte("\n"))
if len(lines)-1 != int(endSamp) {
return nil, ErrInvalidFile
}
comtradeData.AnalogData = make([]AnalogData, int(endSamp))
comtradeData.DigitalData = make([]DigitalData, int(endSamp))
for i := 0; i < int(endSamp); i++ {
comtradeData.AnalogData[i].Data = make([]int32, analogNum)
comtradeData.DigitalData[i].Data = make([]uint8, digitalNum)
}
total := 1 + 1 + int(analogNum) + int(digitalNum)
var tempList [][]byte
for i := 0; i < int(endSamp); i++ {
tempList = bytes.Split(lines[i], []byte(","))
if len(tempList) != total {
return nil, ErrReadFirstLine
}
if value, err := strconv.Atoi(ByteToString(tempList[0])); err != nil {
return nil, err
} else {
comtradeData.AnalogData[i].N = uint32(value)
comtradeData.DigitalData[i].N = uint32(value)
}
if value, err := strconv.Atoi(ByteToString(tempList[1])); err != nil {
return nil, err
} else {
comtradeData.AnalogData[i].Timestamp = uint32(value)
comtradeData.DigitalData[i].Timestamp = uint32(value)
}
for j := 0; j < int(analogNum); j++ {
if value, err := strconv.ParseInt(ByteToString(tempList[j+2]), 10, 64); err != nil {
return nil, err
} else {
comtradeData.AnalogData[i].Data[j] = int32(value)
}
}
for j := 0; j < int(digitalNum); j++ {
if value, err := strconv.ParseInt(ByteToString(tempList[j+2+int(analogNum)]), 10, 64); err != nil {
return nil, err
} else {
comtradeData.DigitalData[i].Data[j] = uint8(value)
}
}
}
return comtradeData, nil
}

26
ascii_data_test.go Normal file
View File

@ -0,0 +1,26 @@
package comtrade
import (
"reflect"
"testing"
)
func TestASCIIData_Parse(t *testing.T) {
filePath := "testdata/test2.cfg"
cfg, err := ParseComtradeCfg(filePath)
if err != nil {
t.Errorf("ParseComtradeCfg() error = %v", err)
return
}
a := &ASCIIData{}
dat, err := a.Parse("testdata/test2.dat", cfg.AnalogNum, cfg.DigitalNum, cfg.EndSamp[len(cfg.EndSamp)-1])
if err != nil {
t.Errorf("Parse() error = %v", err)
return
}
if reflect.TypeOf(dat) != reflect.TypeOf(&Data{}) {
t.Errorf("Parse() got = %v", dat)
}
t.Log(dat)
}

15
binary32_data.go Normal file
View File

@ -0,0 +1,15 @@
package comtrade
func init() {
Add(TypeBinary32, func() Parser {
return &Binary32Data{}
})
}
// Binary32Data TODO
type Binary32Data struct {
}
func (b *Binary32Data) Parse(filePath string, analogNum, digitalNum, endSamp uint32) (*Data, error) {
return &Data{}, nil
}

112
binary_data.go Normal file
View File

@ -0,0 +1,112 @@
package comtrade
import (
"encoding/binary"
"math"
"os"
)
// BinaryData is the binary data of a comtrade data file
func init() {
Add(TypeBinary, func() Parser {
return &BinaryData{}
})
}
// 读取数据文件
// 1、采样序号和时标均以四字节无符号二进制格式存储
// 2、模拟通道采样数据binary两个字节binary32四个字节二进制补码形式存储
// 3、每16个状态通道以两个字节一组存储字的最低为对应该组16个状态通道中最小编号通道
// 4、每次采样字节数=(模拟通道数 * 每个采样数据占据字节数)+(状态通道数 / 16 * 2 + 4 + 4
// 5、每个采样数据占据字节数=2或4取决于数据格式2表示binary4表示binary32
// 05667-76012747261-140-502000011
// 05 00 00 00
// 9B 02 00 00 667
// 08 FD -760
// FA 04 1274
// 48 00 72
// 3D 00 61
// 74 FF -140
// 0A FE -502
// 30 00 000011
type BinaryData struct{}
func (b *BinaryData) Parse(filePath string, analogNum, digitalNum, endSamp uint32) (*Data, error) {
comtradeData := &Data{}
// 打开文件
file, err := os.Open(filePath)
if err != nil {
return nil, err
}
defer file.Close()
comtradeData.AnalogData = make([]AnalogData, int(endSamp))
comtradeData.DigitalData = make([]DigitalData, int(endSamp))
for i := 0; i < int(endSamp); i++ {
comtradeData.AnalogData[i].Data = make([]int32, analogNum)
comtradeData.DigitalData[i].Data = make([]uint8, digitalNum)
}
// 计算状态通道组数
digitalCount := int(math.Ceil(float64(digitalNum) / 16.0))
remainder := int(digitalNum % 16)
for i := 0; i < int(endSamp); i++ {
var (
sampleIndex uint32
timestamp uint32
)
// 解析采样序号
if err := binary.Read(file, binary.LittleEndian, &sampleIndex); err != nil {
return nil, err
}
comtradeData.AnalogData[i].N = sampleIndex
comtradeData.DigitalData[i].N = sampleIndex
// 解析采样时标
if err = binary.Read(file, binary.LittleEndian, &timestamp); err != nil {
return nil, err
}
comtradeData.AnalogData[i].Timestamp = timestamp
comtradeData.DigitalData[i].Timestamp = timestamp
// 解析模拟通道采样数据
for m := 0; m < int(analogNum); m++ {
var tmp int16
if err := binary.Read(file, binary.LittleEndian, &tmp); err != nil {
return nil, err
} else {
comtradeData.AnalogData[i].Data[m] = int32(tmp)
}
}
// 3、每16个状态通道以两个字节一组存储字的最低为对应该组16个状态通道中最小编号通道
// 4、每次采样字节数=(模拟通道数 * 每个采样数据占据字节数)+(状态通道数 / 16 * 2 + 4 + 4
// 5、每个采样数据占据字节数=2或4取决于数据格式2表示binary4表示binary32
stateData := make([]uint16, digitalCount)
for n, datum := range stateData {
data := datum
if err := binary.Read(file, binary.LittleEndian, &data); err != nil {
return nil, err
}
stateData[n] = data
}
for h, datum := range stateData {
if remainder != 0 && h == digitalCount-1 {
for j := 0; j < remainder; j++ {
comtradeData.DigitalData[i].Data[(h*16)+j] = uint8(uint((datum >> uint(j)) & 0x0001))
}
break
}
for k := 0; k < 16; k++ {
comtradeData.DigitalData[i].Data[(h*16)+k] = uint8(uint((datum >> uint(k)) & 0x0001))
}
}
}
return comtradeData, nil
}

26
binary_data_test.go Normal file
View File

@ -0,0 +1,26 @@
package comtrade
import (
"reflect"
"testing"
)
func TestBinaryData_Parse(t *testing.T) {
filePath := "testdata/test1.cfg"
cfg, err := ParseComtradeCfg(filePath)
if err != nil {
t.Errorf("ParseComtradeCfg() error = %v", err)
return
}
b := &BinaryData{}
dat, err := b.Parse("testdata/test1.dat", cfg.AnalogNum, cfg.DigitalNum, cfg.EndSamp[len(cfg.EndSamp)-1])
if err != nil {
t.Errorf("Parse() error = %v", err)
return
}
if reflect.TypeOf(dat) != reflect.TypeOf(&Data{}) {
t.Errorf("Parse() got = %v", dat)
}
t.Log(dat)
}

40
comtrade.go Normal file
View File

@ -0,0 +1,40 @@
package comtrade
type Comtrade struct {
Conf *ComtradeCfg
Data *Data
}
func ParseComtrade(configurePath, datafilePath string) (comtrade *Comtrade, err error) {
c := &Comtrade{}
c.Conf, err = c.parseComtradeConfig(configurePath)
if err != nil {
return nil, err
}
c.Data, err = c.parseComtradeData(datafilePath)
if err != nil {
return nil, err
}
return c, nil
}
func (c *Comtrade) parseComtradeConfig(configurePath string) (*ComtradeCfg, error) {
comtradeConfig, err := ParseComtradeCfg(configurePath)
if err != nil {
return nil, err
}
return comtradeConfig, nil
}
func (c *Comtrade) parseComtradeData(datafilePath string) (*Data, error) {
creator, ok := Parsers[c.Conf.Ft]
if !ok {
return nil, ErrUnknownTypeOfData
}
parser := creator()
comtradeData, err := parser.Parse(datafilePath, c.Conf.GetAnalogNum(), c.Conf.GetDigitalNum(), c.Conf.GetEndSamp()[len(c.Conf.GetEndSamp())-1])
if err != nil {
return nil, err
}
return comtradeData, nil
}

110
config.go Normal file
View File

@ -0,0 +1,110 @@
package comtrade
import (
"time"
)
type ComtradeCfg struct {
StationName string `json:"station_name"` //厂站名称
RecDevID string `json:"rec_dev_id"` //记录设备ID
RevYear uint16 `json:"rev_year"` //COMTRADE版本年份 1991、1999、2013
Total uint32 `json:"total"` //总通道数
AnalogNum uint32 `json:"analog_num"` //模拟通道数
DigitalNum uint32 `json:"digital_num"` //数字/状态通道数
Analog []AnalogChan `json:"analog"` //模拟通道
Digital []DigitalChan `json:"digital"` //数字/状态通道
Lf float32 `json:"lf"` //标称频率
Nrates uint16 `json:"nrates"` //采样率个数
Samp []float32 `json:"samp"` //采样率
EndSamp []uint32 `json:"end_samp"` //最末采样序号
FirstDataTime time.Time `json:"first_data_time"` //第一条数据时间
TriggerTime time.Time `json:"trigger_time"` //采样触发时间
Ft string `json:"ft"` //数据文件类型ASCII、BINARY、BINARY32、FLOAT32
// 2017
TimeMult float32 `json:"time_mult"` //时间倍率因子
TimeCode string `json:"time_code"` //时间编码
LocalCode string `json:"local_code"` //本地编码
TmqCode uint8 `json:"tmq_code"` //采样时间品质
Leapsec uint8 `json:"leapsec"` //闰秒标识符
}
func (cc *ComtradeCfg) GetStationName() string {
return cc.StationName
}
func (cc *ComtradeCfg) GetRecDevID() string {
return cc.RecDevID
}
func (cc *ComtradeCfg) GetRevYear() uint16 {
return cc.RevYear
}
func (cc *ComtradeCfg) GetTotal() uint32 {
return cc.Total
}
func (cc *ComtradeCfg) GetAnalogNum() uint32 {
return cc.AnalogNum
}
func (cc *ComtradeCfg) GetDigitalNum() uint32 {
return cc.DigitalNum
}
func (cc *ComtradeCfg) GetLf() float32 {
return cc.Lf
}
func (cc *ComtradeCfg) GetNrates() uint16 {
return cc.Nrates
}
func (cc *ComtradeCfg) GetSamp() []float32 {
return cc.Samp
}
func (cc *ComtradeCfg) GetEndSamp() []uint32 {
return cc.EndSamp
}
func (cc *ComtradeCfg) GetTriggerTime() time.Time {
return cc.TriggerTime
}
func (cc *ComtradeCfg) GetFirstDataTime() time.Time {
return cc.FirstDataTime
}
func (cc *ComtradeCfg) GetFt() string {
return cc.Ft
}
func (cc *ComtradeCfg) GetTimeMult() float32 {
return cc.TimeMult
}
func (cc *ComtradeCfg) GetTimeCode() string {
return cc.TimeCode
}
func (cc *ComtradeCfg) GetLocalCode() string {
return cc.LocalCode
}
func (cc *ComtradeCfg) GetTmqCode() uint8 {
return cc.TmqCode
}
func (cc *ComtradeCfg) GetLeapsec() uint8 {
return cc.Leapsec
}
func (cc *ComtradeCfg) GetAnalog() []AnalogChan {
return cc.Analog
}
func (cc *ComtradeCfg) GetDigital() []DigitalChan {
return cc.Digital
}

29
data.go Normal file
View File

@ -0,0 +1,29 @@
package comtrade
// Data is the data of a comtrade file.
type Data struct {
AnalogData []AnalogData
DigitalData []DigitalData
}
// AnalogData is the analog data of a comtrade file.
type AnalogData struct {
N uint32 `json:"n"` //模拟通道序号
Timestamp uint32 `json:"timestamp"` //模拟通道时标
Data []int32 `json:"data"` //模拟通道数据
}
// DigitalData is the digital data of a comtrade file.
type DigitalData struct {
N uint32 `json:"n"` //数字通道序号
Timestamp uint32 `json:"timestamp"` //数字通道时标
Data []uint8 `json:"data"` //数字通道数据
}
func (cd *Data) GetAnalogData() []AnalogData {
return cd.AnalogData
}
func (cd *Data) GetDigitalData() []DigitalData {
return cd.DigitalData
}

30
digital.go Normal file
View File

@ -0,0 +1,30 @@
package comtrade
// DigitalChan 数字通道
type DigitalChan struct {
Dn uint32 `json:"dn"` //数字/状态通道索引号
ChId string `json:"ch_id"` //通道标识
Ph string `json:"ph"` //通道相别标识
Ccbm string `json:"ccbm"` //被监视的电路元件
Y uint8 `json:"y"` //通道状态
}
func (c *DigitalChan) GetDn() uint32 {
return c.Dn
}
func (c *DigitalChan) GetChId() string {
return c.ChId
}
func (c *DigitalChan) GetPh() string {
return c.Ph
}
func (c *DigitalChan) GetCcbm() string {
return c.Ccbm
}
func (c *DigitalChan) GetY() uint8 {
return c.Y
}

14
errors.go Normal file
View File

@ -0,0 +1,14 @@
package comtrade
import "errors"
var (
ErrUnknownTypeOfData = errors.New("unknown type of data")
ErrInvalidFile = errors.New("invalid file")
ErrReadFirstLine = errors.New("read first line error")
ErrReadSecondLine = errors.New("read second line error")
ErrReadADChannel = errors.New("read A/D channel num line error")
ErrReadAnalogChannel = errors.New("read analog channel line error")
ErrReadDigitalChannel = errors.New("read digital channel line error")
ErrReadSample = errors.New("read sample error")
)

24
example/main.go Normal file
View File

@ -0,0 +1,24 @@
package main
import (
"flag"
"fmt"
"github.com/yonwoo9/go-comtrade"
)
var (
configFile = flag.String("config", "testdata/test1.cfg", "config file path")
dataFile = flag.String("data", "testdata/test1.dat", "data file path")
)
func main() {
flag.Parse()
c, err := comtrade.ParseComtrade(*configFile, *dataFile)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(c.Conf)
}

15
float32_data.go Normal file
View File

@ -0,0 +1,15 @@
package comtrade
func init() {
Add(TypeFloat32, func() Parser {
return &Float32Data{}
})
}
// Float32Data TODO
type Float32Data struct {
}
func (f *Float32Data) Parse(filePath string, analogNum, digitalNum, endSamp uint32) (*Data, error) {
return &Data{}, nil
}

14
register.go Normal file
View File

@ -0,0 +1,14 @@
package comtrade
// https://github.com/influxdata/telegraf/blob/master/plugins/parsers/registry.go
// Creator is the function to create a new parser
type Creator func() Parser
// Parsers contains the registry of all known parsers (following the new style)
var Parsers = map[string]Creator{}
// Add adds a parser to the registry. Usually this function is called in the plugin's init function
func Add(name string, creator Creator) {
Parsers[name] = creator
}

113
testdata/test1.cfg vendored Normal file
View File

@ -0,0 +1,113 @@
Strathmore 275kV,1,2001
104,20A,84D
1,LINE SUM ILA,,,A,2.181993E-02,0,0,-32767,32767,1.00000000,1.00000000,P
2,LINE SUM ILB,,,A,1.450719E-02,0,0,-32767,32767,1.00000000,1.00000000,P
3,LINE SUM ILC,,,A,1.133065E-01,0,0,-32767,32767,1.00000000,1.00000000,P
4,LINE SUM IN,,,A,1.092105E-01,0,0,-32767,32767,1.00000000,1.00000000,P
5,REM1 SUM ILA,,,A,1.989423E-02,0,0,-32767,32767,1.00000000,1.00000000,P
6,REM1 SUM ILB,,,A,1.388269E-02,0,0,-32767,32767,1.00000000,1.00000000,P
7,REM1 SUM ILC,,,A,1.004310E-01,0,0,-32767,32767,1.00000000,1.00000000,P
8,REM1 SUM IN,,,A,8.381079E-02,0,0,-32767,32767,1.00000000,1.00000000,P
9,LINE ULA,,,V,7.933214E+00,0,0,-32767,32767,1.00000000,1.00000000,P
10,LINE ULB,,,V,8.101845E+00,0,0,-32767,32767,1.00000000,1.00000000,P
11,LINE ULC,,,V,9.667931E+00,0,0,-32767,32767,1.00000000,1.00000000,P
12,LINE UN,,,V,8.350841E+00,0,0,-32767,32767,1.00000000,1.00000000,P
13,I DIFF LA,,,one,4.157818E-03,0,0,-32767,32767,1.00000000,1.00000000,P
14,I DIFF LB,,,one,4.068515E-03,0,0,-32767,32767,1.00000000,1.00000000,P
15,I DIFF LC,,,one,1.899858E-01,0,0,-32767,32767,1.00000000,1.00000000,P
16,I BIAS,,,A,6.681344E-02,0,0,-32767,32767,1.00000000,1.00000000,P
17,I DIFF LA MAG,,,A,2.440047E-03,0,0,-32767,32767,1.00000000,1.00000000,P
18,I DIFF LB MAG,,,A,2.881186E-03,0,0,-32767,32767,1.00000000,1.00000000,P
19,I DIFF LC MAG,,,A,1.145064E-01,0,0,-32767,32767,1.00000000,1.00000000,P
20,I DIFF NS MAG,,,A,3.879977E-02,0,0,-32767,32767,1.00000000,1.00000000,P
1,87L Id>StartA,,,0
2,87L Id>StartB,,,0
3,87L Id>StartC,,,0
4,87L Id>Trip A,,,0
5,87L Id>Trip B,,,0
6,87L Id>Trip C,,,0
7,87L Tr Local,,,0
8,87L Tr Remote,,,0
9,67N Start FW,,,0
10,67N Start RV,,,0
11,67NComSchTrp,,,0
12,LED Reset,,,0
13,67 I>Start LA,,,0
14,67 I>Start LB,,,0
15,67 I>Start LC,,,0
16,67 I> Trip,,,0
17,BusCB Trip LA,,,0
18,BusCB Trip LB,,,0
19,BusCB Trip LC,,,0
20,TieCB Trip LA,,,0
21,TieCB Trip LB,,,0
22,TieCB Trip LC,,,0
23,BusCB StBF LA,,,0
24,BusCB StBF LB,,,0
25,BusCB StBF LC,,,0
26,Bus CB Master,,,0
27,Tie CB Master,,,0
28,Rx AR Perm 1P,,,0
29,Rx AR 1PTProg,,,0
30,Tx AR Start,,,0
31,Tx AR Trip 3P,,,0
32,Tx AR Inhibit,,,0
33,BusCB 3P Trip,,,0
34,TieCB 3PTrip,,,0
35,87L 2 Harm LA,,,0
36,87L 2 Harm LB,,,0
37,87L 2 Harm LC,,,0
38,87L 5 Harm LA,,,0
39,87L 5 Harm LB,,,0
40,87L 5 Harm LC,,,0
41,87L Blocked,,,0
42,87L Restrnd,,,0
43,87L Unrestrnd,,,0
44,87L Enhanced,,,0
45,87LSustndCurr,,,0
46,Open CT Alarm,,,0
47,67 2Harmonic,,,0
48,67N 2Harmonic,,,0
49,ParamSetGrp 1,,,0
50,BusMec St CBF,,,0
51,TieMec St CBF,,,0
52,Spare Input1,,,0
53,Spare Input2,,,0
54,Spare Input3,,,0
55,MU1 DataError,,,0
56,MU1SynchAlarm,,,0
57,MU1SampleLost,,,0
58,MU1-IED Drift,,,0
59,MU1 Test Mode,,,0
60,MU2 DataError,,,0
61,MU2SynchAlarm,,,0
62,MU2SampleLost,,,0
63,MU2-IED Drift,,,0
64,MU2 Test Mode,,,0
65,MU3 DataError,,,0
66,MU3SynchAlarm,,,0
67,MU3SampleLost,,,0
68,MU3-IED Drift,,,0
69,MU3 Test Mode,,,0
70,TieCB StBF LA,,,0
71,TieCB StBF LB,,,0
72,TieCB StBF LC,,,0
73,LDCM1CommFail,,,0
74,Rx DTT3 no BU,,,0
75,A10TxDTT3noBU,,,0
76,IO-Card Fail,,,0
77,AR Isolated,,,0
78,Rx DTT1withBU,,,0
79,Rx Perm DEF,,,0
80,Tx Perm DEF,,,0
81,67 Start FW,,,0
82,67 Start RV,,,0
83,VT SupplyFail,,,0
84,Dist Rec Made,,,0
50
1
1000,11001
31/03/2017,22:01:11.125094
31/03/2017,22:01:12.126097
BINARY
1

BIN
testdata/test1.dat vendored Normal file

Binary file not shown.

40
testdata/test2.cfg vendored Normal file
View File

@ -0,0 +1,40 @@
南自线路保护PSL603,78,1999
22,15A,7D
1,1-Ia,A,,A,0.001740,0.000000,0.000000,-32767,32767,1.00,1.00,S
2,2-Ib,B,,A,0.001740,0.000000,0.000000,-32767,32767,1.00,1.00,S
3,3-Ic,C,,A,0.001740,0.000000,0.000000,-32767,32767,1.00,1.00,S
4,4-3I0,N,,A,0.001740,0.000000,0.000000,-32767,32767,1.00,1.00,S
5,5-Ua,A,,V,0.003052,0.000000,0.000000,-32767,32767,1.00,1.00,S
6,6-Ub,B,,V,0.003052,0.000000,0.000000,-32767,32767,1.00,1.00,S
7,7-Uc,C,,V,0.003052,0.000000,0.000000,-32767,32767,1.00,1.00,S
8,8-3U0,N,,V,0.012207,0.000000,0.000000,-32767,32767,1.00,1.00,S
9,9-AI,N,, ,1.000000,0.000000,0.000000,-32767,32767,1.00,1.00,S
10,10-AI,N,, ,1.000000,0.000000,0.000000,-32767,32767,1.00,1.00,S
11,11-AI,N,, ,1.000000,0.000000,0.000000,-32767,32767,1.00,1.00,S
12,12-AI,N,, ,1.000000,0.000000,0.000000,-32767,32767,1.00,1.00,S
13,13-AI,N,, ,1.000000,0.000000,0.000000,-32767,32767,1.00,1.00,S
14,14-AI,N,, ,1.000000,0.000000,0.000000,-32767,32767,1.00,1.00,S
15,15-AI,N,, ,1.000000,0.000000,0.000000,-32767,32767,1.00,1.00,S
1,1-A相跳闸,,,0
2,2-B相跳闸,,,0
3,3-C相跳闸,,,0
4,4-永跳,,,0
5,5-两组开关A相跳位,,,0
6,6-两组开关B相跳位,,,0
7,7-两组开关C相跳位,,,0
50
10
1000,200
1000,400
1000,600
1000,800
1000,950
1000,950
1000,950
1000,950
1000,950
1000,950
24/12/2012,17:30:48.384000
24/12/2012,17:30:48.384000
ASCII
1

950
testdata/test2.dat vendored Normal file
View File

@ -0,0 +1,950 @@
1,0,000571,000010,000037,000013,000031,000015,000033,000020,000000,000000,000000,000000,000000,000000,000000,0,0,0,0,0,0,0
2,1000,000207,000008,000034,000014,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
3,2000,-000170,000010,000036,000013,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
4,3000,-000532,000009,000041,000015,000033,000015,000035,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
5,4000,-000836,000009,000036,000013,000033,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
6,5000,-001057,000009,000035,000013,000034,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
7,6000,-001172,000008,000037,000013,000039,000017,000035,000023,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
8,7000,-001168,000009,000035,000013,000037,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
9,8000,-001052,000002,000035,000012,000039,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
10,9000,-000823,000008,000037,000013,000040,000013,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
11,10000,-000512,000010,000037,000014,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
12,11000,-000152,000008,000037,000016,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
13,12000,000227,000010,000037,000014,000041,000010,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
14,13000,000592,000010,000036,000013,000040,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
15,14000,000896,000010,000035,000014,000039,000010,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
16,15000,001115,000010,000037,000013,000035,000011,000025,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
17,16000,001229,000009,000037,000015,000035,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
18,17000,001225,000008,000037,000014,000033,000012,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
19,18000,001106,000009,000033,000009,000032,000013,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
20,19000,000879,000010,000037,000013,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
21,20000,000573,000010,000037,000014,000032,000015,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
22,21000,000209,000008,000036,000014,000031,000015,000034,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
23,22000,-000170,000008,000036,000013,000031,000015,000036,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
24,23000,-000533,000008,000036,000014,000034,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
25,24000,-000835,000011,000035,000013,000035,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
26,25000,-001057,000008,000035,000013,000035,000014,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
27,26000,-001171,000009,000035,000011,000035,000015,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
28,27000,-001168,000009,000035,000014,000041,000017,000031,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
29,28000,-001047,000008,000035,000013,000040,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
30,29000,-000821,000009,000036,000012,000040,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
31,30000,-000513,000009,000036,000014,000041,000013,000026,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
32,31000,-000154,000008,000035,000011,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
33,32000,000229,000010,000037,000014,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
34,33000,000590,000010,000037,000014,000038,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
35,34000,000897,000009,000037,000014,000037,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
36,35000,001116,000011,000037,000014,000037,000011,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
37,36000,001230,000010,000037,000012,000035,000011,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
38,37000,001226,000009,000036,000014,000033,000012,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
39,38000,001106,000009,000037,000014,000033,000013,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
40,39000,000886,000013,000038,000013,000033,000014,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
41,40000,000570,000009,000036,000013,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
42,41000,000209,000008,000037,000014,000032,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
43,42000,-000171,000009,000035,000014,000031,000014,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
44,43000,-000531,000008,000035,000013,000029,000013,000032,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
45,44000,-000836,000009,000035,000014,000033,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
46,45000,-001056,000009,000036,000013,000034,000014,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
47,46000,-001173,000010,000036,000014,000037,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
48,47000,-001168,000009,000036,000013,000038,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
49,48000,-001048,000010,000041,000018,000038,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
50,49000,-000823,000008,000035,000013,000039,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
51,50000,-000514,000006,000036,000014,000040,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
52,51000,-000152,000010,000037,000014,000042,000014,000029,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
53,52000,000229,000010,000036,000014,000041,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
54,53000,000593,000011,000037,000014,000039,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
55,54000,000896,000010,000037,000014,000037,000013,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
56,55000,001116,000010,000037,000012,000037,000010,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
57,56000,001230,000009,000037,000013,000034,000010,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
58,57000,001227,000009,000037,000014,000033,000011,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
59,58000,001107,000008,000036,000014,000036,000016,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
60,59000,000881,000010,000037,000014,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
61,60000,000570,000009,000036,000014,000031,000015,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
62,61000,000209,000009,000036,000013,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
63,62000,-000170,000008,000035,000014,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
64,63000,-000532,000009,000035,000013,000033,000017,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
65,64000,-000836,000009,000035,000013,000034,000015,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
66,65000,-001057,000009,000036,000013,000035,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
67,66000,-001172,000007,000036,000013,000039,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
68,67000,-001169,000006,000036,000014,000037,000014,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
69,68000,-001048,000007,000036,000014,000038,000013,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
70,69000,-000823,000009,000037,000014,000040,000014,000029,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
71,70000,-000514,000009,000035,000014,000039,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
72,71000,-000152,000009,000036,000014,000042,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
73,72000,000229,000010,000037,000014,000036,000007,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
74,73000,000590,000009,000035,000013,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
75,74000,000894,000009,000035,000015,000038,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
76,75000,001115,000009,000036,000013,000037,000011,000026,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
77,76000,001230,000010,000036,000014,000036,000011,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
78,77000,001227,000009,000036,000011,000033,000012,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
79,78000,001106,000010,000036,000014,000033,000013,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
80,79000,000881,000010,000036,000012,000031,000013,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
81,80000,000570,000011,000037,000013,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
82,81000,000208,000008,000036,000013,000030,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
83,82000,-000169,000009,000035,000013,000031,000016,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
84,83000,-000533,000007,000036,000014,000033,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
85,84000,-000836,000008,000037,000014,000034,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
86,85000,-001056,000009,000034,000015,000036,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
87,86000,-001171,000010,000035,000013,000034,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
88,87000,-001168,000008,000035,000014,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
89,88000,-001047,000009,000036,000013,000039,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
90,89000,-000822,000009,000036,000014,000039,000013,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
91,90000,-000514,000006,000037,000014,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
92,91000,-000152,000010,000033,000012,000040,000009,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
93,92000,000229,000010,000036,000014,000040,000010,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
94,93000,000588,000010,000037,000013,000037,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
95,94000,000895,000010,000037,000014,000035,000009,000025,000017,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
96,95000,001116,000009,000037,000014,000037,000010,000025,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
97,96000,001229,000009,000037,000014,000033,000013,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
98,97000,001227,000009,000037,000014,000033,000011,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
99,98000,001106,000010,000037,000013,000033,000014,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
100,99000,000880,000009,000038,000012,000031,000013,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
101,100000,000571,000008,000035,000013,000029,000013,000031,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
102,101000,000211,000008,000037,000014,000032,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
103,102000,-000171,000007,000037,000015,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
104,103000,-000531,000009,000035,000014,000033,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
105,104000,-000838,000009,000035,000015,000034,000015,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
106,105000,-001056,000010,000036,000014,000035,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
107,106000,-001171,000010,000036,000013,000037,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
108,107000,-001168,000009,000035,000013,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
109,108000,-001048,000008,000035,000014,000038,000014,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
110,109000,-000823,000008,000037,000011,000040,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
111,110000,-000511,000010,000036,000014,000040,000012,000027,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
112,111000,-000152,000009,000037,000013,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
113,112000,000228,000010,000035,000013,000041,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
114,113000,000589,000011,000033,000013,000037,000009,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
115,114000,000895,000009,000037,000013,000037,000010,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
116,115000,001116,000010,000036,000012,000035,000011,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
117,116000,001230,000010,000038,000011,000035,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
118,117000,001226,000010,000037,000014,000033,000012,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
119,118000,001107,000010,000038,000013,000031,000013,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
120,119000,000881,000009,000036,000011,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
121,120000,000573,000010,000032,000008,000031,000015,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
122,121000,000209,000009,000036,000013,000032,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
123,122000,-000171,000009,000036,000014,000032,000015,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
124,123000,-000531,000008,000035,000014,000029,000015,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
125,124000,-000836,000009,000035,000013,000033,000016,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
126,125000,-001060,000005,000036,000014,000035,000018,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
127,126000,-001172,000009,000036,000013,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
128,127000,-001168,000009,000036,000012,000039,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
129,128000,-001048,000009,000037,000013,000037,000011,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
130,129000,-000822,000009,000035,000014,000040,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
131,130000,-000513,000010,000036,000014,000041,000011,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
132,131000,-000154,000009,000036,000013,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
133,132000,000227,000009,000035,000013,000041,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
134,133000,000591,000010,000038,000015,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
135,134000,000895,000009,000038,000014,000038,000011,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
136,135000,001116,000009,000037,000014,000037,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
137,136000,001231,000009,000037,000014,000033,000010,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
138,137000,001226,000007,000037,000013,000034,000012,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
139,138000,001105,000008,000037,000014,000031,000014,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
140,139000,000877,000006,000036,000014,000031,000012,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
141,140000,000573,000009,000037,000014,000032,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
142,141000,000209,000009,000035,000012,000029,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
143,142000,-000171,000008,000035,000013,000029,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
144,143000,-000531,000008,000037,000014,000028,000010,000031,000017,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
145,144000,-000837,000008,000036,000014,000034,000015,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
146,145000,-001058,000008,000035,000013,000035,000016,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
147,146000,-001172,000008,000035,000014,000036,000015,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
148,147000,-001167,000010,000032,000009,000039,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
149,148000,-001048,000009,000035,000014,000039,000014,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
150,149000,-000822,000011,000036,000013,000039,000013,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
151,150000,-000513,000008,000037,000013,000040,000011,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
152,151000,-000154,000007,000036,000014,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
153,152000,000230,000010,000035,000013,000040,000010,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
154,153000,000589,000010,000038,000014,000037,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
155,154000,000896,000008,000035,000014,000037,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
156,155000,001114,000010,000037,000013,000039,000012,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
157,156000,001230,000009,000038,000013,000035,000012,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
158,157000,001228,000009,000036,000014,000034,000011,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
159,158000,001107,000010,000037,000015,000032,000013,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
160,159000,000880,000009,000036,000013,000031,000014,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
161,160000,000570,000009,000036,000013,000031,000014,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
162,161000,000207,000008,000036,000012,000031,000017,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
163,162000,-000170,000009,000037,000013,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
164,163000,-000531,000008,000036,000013,000032,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
165,164000,-000837,000008,000036,000012,000033,000015,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
166,165000,-001057,000008,000037,000014,000035,000017,000038,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
167,166000,-001172,000008,000036,000014,000036,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
168,167000,-001170,000009,000037,000014,000038,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
169,168000,-001049,000008,000037,000014,000039,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
170,169000,-000822,000009,000035,000014,000037,000010,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
171,170000,-000512,000008,000037,000013,000040,000011,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
172,171000,-000153,000008,000037,000013,000041,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
173,172000,000228,000009,000037,000013,000041,000011,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
174,173000,000591,000010,000036,000012,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
175,174000,000895,000010,000036,000014,000038,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
176,175000,001115,000009,000037,000013,000035,000012,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
177,176000,001230,000010,000038,000013,000035,000011,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
178,177000,001228,000011,000037,000013,000033,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
179,178000,001107,000009,000037,000014,000033,000014,000026,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
180,179000,000879,000008,000037,000014,000033,000015,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
181,180000,000574,000011,000037,000014,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
182,181000,000210,000009,000037,000014,000030,000016,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
183,182000,-000170,000010,000037,000013,000030,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
184,183000,-000531,000008,000035,000011,000030,000014,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
185,184000,-000836,000009,000036,000013,000035,000018,000034,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
186,185000,-001057,000008,000035,000014,000036,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
187,186000,-001170,000009,000036,000013,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
188,187000,-001168,000011,000037,000013,000038,000014,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
189,188000,-001047,000010,000037,000015,000037,000014,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
190,189000,-000821,000009,000036,000013,000040,000013,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
191,190000,-000515,000010,000037,000012,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
192,191000,-000152,000009,000037,000013,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
193,192000,000230,000010,000038,000013,000041,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
194,193000,000590,000011,000035,000013,000040,000011,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
195,194000,000896,000011,000036,000012,000037,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
196,195000,001115,000009,000035,000011,000035,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
197,196000,001230,000010,000037,000014,000032,000009,000028,000017,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
198,197000,001227,000011,000038,000014,000033,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
199,198000,001106,000011,000036,000014,000032,000013,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
200,199000,000881,000011,000035,000014,000031,000015,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
201,17092000,-000512,000011,000037,000013,000039,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
202,17093000,-000152,000010,000037,000013,000041,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
203,17094000,000227,000011,000036,000013,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
204,17095000,000590,000009,000036,000013,000038,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
205,17096000,000895,000008,000035,000013,000038,000010,000024,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
206,17097000,001116,000009,000038,000015,000036,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
207,17098000,001228,000008,000036,000013,000035,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
208,17099000,001227,000010,000037,000014,000034,000014,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
209,17100000,001106,000010,000036,000013,000032,000012,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
210,17101000,000881,000010,000036,000013,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
211,17102000,000571,000009,000040,000015,000033,000017,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
212,17103000,000210,000010,000037,000014,000032,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
213,17104000,-000170,000009,000036,000015,000033,000016,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
214,17105000,-000532,000010,000037,000015,000031,000015,000035,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
215,17106000,-000837,000008,000035,000013,000033,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
216,17107000,-001056,000009,000037,000013,000035,000017,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
217,17108000,-001173,000009,000031,000009,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
218,17109000,-001168,000009,000035,000014,000037,000015,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
219,17110000,-001047,000008,000035,000013,000040,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
220,17111000,-000823,000009,000037,000013,000039,000014,000026,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
221,17112000,-000515,000008,000036,000013,000040,000013,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
222,17113000,-000152,000009,000036,000014,000039,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
223,17114000,000228,000009,000037,000014,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
224,17115000,000589,000010,000037,000014,000038,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
225,17116000,000895,000010,000035,000012,000038,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
226,17117000,001115,000009,000037,000014,000033,000006,000028,000017,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
227,17118000,001230,000010,000038,000014,000036,000012,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
228,17119000,001227,000010,000035,000014,000033,000012,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
229,17120000,001107,000011,000037,000013,000034,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
230,17121000,000881,000010,000036,000014,000031,000013,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
231,17122000,000571,000010,000040,000013,000032,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
232,17123000,000209,000008,000038,000013,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
233,17124000,-000171,000009,000036,000014,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
234,17125000,-000531,000008,000036,000012,000031,000016,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
235,17126000,-000836,000011,000036,000014,000035,000017,000035,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
236,17127000,-001057,000009,000037,000013,000035,000015,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
237,17128000,-001172,000008,000036,000013,000037,000015,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
238,17129000,-001163,000012,000036,000014,000038,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
239,17130000,-001048,000009,000036,000013,000039,000014,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
240,17131000,-000822,000008,000036,000013,000040,000014,000029,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
241,17132000,-000512,000009,000037,000014,000041,000014,000027,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
242,17133000,-000152,000009,000036,000014,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
243,17134000,000228,000009,000035,000014,000041,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
244,17135000,000590,000010,000035,000013,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
245,17136000,000895,000010,000037,000013,000038,000011,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
246,17137000,001114,000008,000037,000013,000037,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
247,17138000,001232,000013,000033,000012,000034,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
248,17139000,001226,000010,000036,000012,000033,000012,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
249,17140000,001106,000010,000037,000014,000033,000013,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
250,17141000,000881,000007,000036,000015,000031,000014,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
251,17142000,000570,000009,000036,000013,000030,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
252,17143000,000209,000008,000037,000014,000031,000017,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
253,17144000,-000168,000010,000035,000014,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
254,17145000,-000532,000008,000035,000014,000033,000018,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
255,17146000,-000836,000008,000035,000014,000033,000016,000035,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
256,17147000,-001056,000008,000036,000013,000035,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
257,17148000,-001172,000008,000038,000015,000037,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
258,17149000,-001169,000008,000036,000014,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
259,17150000,-001048,000009,000035,000015,000039,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
260,17151000,-000823,000008,000036,000012,000041,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
261,17152000,-000511,000010,000037,000014,000041,000012,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
262,17153000,-000153,000008,000036,000014,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
263,17154000,000230,000010,000036,000014,000041,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
264,17155000,000589,000008,000038,000013,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
265,17156000,000895,000009,000036,000014,000038,000010,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
266,17157000,001115,000009,000037,000014,000037,000010,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
267,17158000,001228,000008,000037,000013,000035,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
268,17159000,001222,000005,000038,000013,000032,000011,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
269,17160000,001106,000010,000038,000014,000031,000013,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
270,17161000,000881,000010,000037,000014,000032,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
271,17162000,000570,000009,000038,000015,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
272,17163000,000209,000010,000036,000013,000027,000011,000034,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
273,17164000,-000170,000009,000035,000014,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
274,17165000,-000531,000010,000034,000013,000033,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
275,17166000,-000837,000010,000035,000011,000034,000016,000036,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
276,17167000,-001057,000009,000036,000013,000035,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
277,17168000,-001172,000009,000036,000012,000037,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
278,17169000,-001169,000008,000036,000011,000037,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
279,17170000,-001049,000008,000036,000013,000037,000012,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
280,17171000,-000823,000010,000036,000014,000040,000013,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
281,17172000,-000516,000006,000035,000012,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
282,17173000,-000152,000009,000035,000013,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
283,17174000,000229,000009,000035,000013,000040,000010,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
284,17175000,000589,000009,000040,000017,000037,000008,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
285,17176000,000895,000010,000037,000015,000037,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
286,17177000,001117,000009,000037,000015,000035,000011,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
287,17178000,001229,000010,000036,000015,000035,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
288,17179000,001227,000010,000037,000014,000033,000011,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
289,17180000,001106,000010,000036,000014,000031,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
290,17181000,000879,000008,000040,000017,000032,000014,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
291,17182000,000570,000009,000035,000012,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
292,17183000,000209,000009,000036,000013,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
293,17184000,-000170,000007,000036,000013,000032,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
294,17185000,-000531,000009,000035,000013,000036,000019,000033,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
295,17186000,-000836,000008,000036,000013,000033,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
296,17187000,-001056,000009,000035,000013,000035,000018,000034,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
297,17188000,-001171,000008,000036,000013,000036,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
298,17189000,-001170,000009,000035,000011,000037,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
299,17190000,-001048,000009,000036,000014,000039,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
300,17191000,-000821,000008,000035,000013,000039,000012,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
301,17192000,-000514,000009,000035,000014,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
302,17193000,-000152,000009,000036,000015,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
303,17194000,000231,000011,000039,000015,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
304,17195000,000591,000010,000036,000014,000039,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
305,17196000,000895,000010,000036,000012,000038,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
306,17197000,001116,000009,000037,000015,000035,000009,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
307,17198000,001230,000009,000036,000014,000033,000011,000026,000017,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
308,17199000,001226,000009,000037,000013,000034,000011,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
309,17200000,001104,000008,000037,000014,000031,000013,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
310,17201000,000880,000010,000037,000013,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
311,17202000,000571,000008,000037,000014,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
312,17203000,000209,000009,000035,000012,000031,000014,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
313,17204000,-000171,000009,000035,000013,000031,000017,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
314,17205000,-000531,000009,000036,000013,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
315,17206000,-000836,000008,000035,000013,000033,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
316,17207000,-001057,000008,000035,000014,000034,000016,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
317,17208000,-001173,000009,000035,000013,000036,000016,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
318,17209000,-001168,000009,000037,000014,000037,000016,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
319,17210000,-001046,000008,000035,000013,000038,000014,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
320,17211000,-000823,000008,000036,000013,000039,000012,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
321,17212000,-000515,000008,000037,000014,000040,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
322,17213000,-000148,000013,000035,000014,000041,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
323,17214000,000228,000008,000037,000014,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
324,17215000,000590,000010,000036,000014,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
325,17216000,000895,000010,000038,000014,000038,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
326,17217000,001116,000009,000037,000014,000036,000008,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
327,17218000,001230,000009,000038,000013,000034,000012,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
328,17219000,001227,000010,000037,000015,000033,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
329,17220000,001106,000009,000038,000014,000032,000013,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
330,17221000,000880,000009,000036,000013,000031,000014,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
331,17222000,000575,000012,000033,000010,000032,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
332,17223000,000209,000010,000037,000013,000031,000016,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
333,17224000,-000170,000007,000035,000013,000032,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
334,17225000,-000531,000009,000036,000013,000034,000017,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
335,17226000,-000837,000008,000036,000013,000033,000016,000035,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
336,17227000,-001056,000009,000037,000014,000035,000016,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
337,17228000,-001172,000008,000036,000012,000037,000016,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
338,17229000,-001169,000009,000036,000012,000036,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
339,17230000,-001048,000009,000035,000012,000036,000010,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
340,17231000,-000821,000010,000036,000014,000037,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
341,17232000,-000512,000009,000036,000013,000041,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
342,17233000,-000153,000009,000037,000014,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
343,17234000,000228,000009,000036,000013,000041,000011,000027,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
344,17235000,000590,000009,000042,000018,000038,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
345,17236000,000896,000011,000037,000013,000038,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
346,17237000,001115,000011,000036,000014,000036,000011,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
347,17238000,001230,000010,000037,000014,000036,000012,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
348,17239000,001228,000010,000036,000014,000033,000012,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
349,17240000,001109,000011,000037,000014,000032,000014,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
350,17241000,000886,000014,000037,000014,000032,000013,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
351,17242000,000571,000009,000037,000014,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
352,17243000,000209,000009,000037,000012,000030,000015,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
353,17244000,-000171,000008,000038,000013,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
354,17245000,-000531,000009,000036,000011,000028,000011,000034,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
355,17246000,-000836,000009,000035,000014,000033,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
356,17247000,-001056,000009,000036,000013,000034,000016,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
357,17248000,-001172,000008,000034,000013,000037,000016,000034,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
358,17249000,-001164,000011,000036,000015,000037,000014,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
359,17250000,-001048,000008,000036,000013,000039,000013,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
360,17251000,-000823,000008,000035,000014,000042,000013,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
361,17252000,-000514,000008,000035,000013,000041,000011,000025,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
362,17253000,-000151,000010,000038,000013,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
363,17254000,000228,000009,000036,000013,000041,000008,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
364,17255000,000590,000009,000037,000014,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
365,17256000,000895,000009,000036,000013,000038,000011,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
366,17257000,001116,000010,000040,000017,000037,000012,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
367,17258000,001231,000009,000038,000013,000036,000010,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
368,17259000,001226,000009,000038,000014,000034,000011,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
369,17260000,001107,000009,000037,000013,000033,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
370,17261000,000880,000008,000036,000013,000031,000013,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
371,17262000,000570,000009,000035,000013,000032,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
372,17263000,000213,000013,000038,000014,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
373,17264000,-000170,000009,000037,000014,000031,000017,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
374,17265000,-000532,000009,000036,000014,000031,000016,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
375,17266000,-000836,000008,000036,000013,000035,000016,000035,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
376,17267000,-001058,000008,000035,000012,000036,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
377,17268000,-001172,000007,000036,000013,000037,000016,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
378,17269000,-001169,000009,000036,000014,000038,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
379,17270000,-001048,000009,000035,000012,000037,000013,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
380,17271000,-000823,000009,000037,000014,000044,000016,000029,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
381,17272000,-000512,000010,000035,000014,000041,000012,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
382,17273000,-000152,000010,000035,000012,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
383,17274000,000229,000010,000034,000013,000042,000011,000027,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
384,17275000,000590,000010,000035,000014,000037,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
385,17276000,000895,000011,000040,000016,000038,000009,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
386,17277000,001115,000011,000036,000013,000037,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
387,17278000,001229,000010,000037,000014,000033,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
388,17279000,001227,000008,000036,000014,000033,000011,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
389,17280000,001106,000009,000037,000014,000033,000012,000034,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
390,17281000,000881,000009,000036,000014,000033,000014,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
391,17282000,000577,000013,000036,000014,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
392,17283000,000209,000009,000037,000014,000031,000017,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
393,17284000,-000170,000008,000035,000012,000029,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
394,17285000,-000532,000009,000037,000014,000033,000017,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
395,17286000,-000836,000007,000035,000014,000036,000018,000033,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
396,17287000,-001057,000008,000035,000014,000035,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
397,17288000,-001172,000008,000033,000014,000036,000015,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
398,17289000,-001168,000009,000036,000014,000036,000015,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
399,17290000,-001048,000008,000037,000014,000039,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
400,17291000,-000824,000009,000035,000013,000040,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
401,17092000,-001057,000009,000035,000014,000036,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
402,17093000,-001171,000008,000035,000013,000037,000014,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
403,17094000,-001168,000008,000035,000013,000038,000014,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
404,17095000,-001047,000010,000035,000012,000039,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
405,17096000,-000825,000008,000035,000012,000040,000014,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
406,17097000,-000514,000008,000036,000014,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
407,17098000,-000151,000010,000037,000013,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
408,17099000,000228,000009,000036,000012,000039,000010,000025,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
409,17100000,000591,000009,000037,000014,000038,000010,000022,000017,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
410,17101000,000896,000010,000037,000015,000037,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
411,17102000,001114,000007,000037,000014,000035,000011,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
412,17103000,001229,000008,000036,000014,000035,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
413,17104000,001227,000009,000037,000013,000033,000011,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
414,17105000,001106,000008,000037,000014,000033,000013,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
415,17106000,000881,000009,000037,000015,000033,000016,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
416,17107000,000570,000010,000037,000013,000032,000017,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
417,17108000,000209,000009,000036,000014,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
418,17109000,-000170,000009,000036,000011,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
419,17110000,-000531,000007,000035,000012,000032,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
420,17111000,-000838,000007,000035,000013,000033,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
421,17112000,-001059,000009,000037,000015,000037,000017,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
422,17113000,-001171,000010,000036,000013,000036,000016,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
423,17114000,-001168,000009,000035,000013,000038,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
424,17115000,-001047,000008,000036,000013,000039,000014,000035,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
425,17116000,-000823,000007,000036,000013,000040,000013,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
426,17117000,-000512,000008,000037,000015,000040,000012,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
427,17118000,-000153,000009,000035,000013,000040,000011,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
428,17119000,000229,000011,000037,000013,000040,000010,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
429,17120000,000591,000010,000040,000017,000041,000012,000027,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
430,17121000,000895,000009,000036,000015,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
431,17122000,001115,000010,000039,000014,000035,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
432,17123000,001230,000009,000037,000013,000034,000010,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
433,17124000,001228,000010,000037,000013,000033,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
434,17125000,001106,000010,000037,000012,000033,000014,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
435,17126000,000880,000008,000037,000013,000032,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
436,17127000,000571,000010,000041,000017,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
437,17128000,000209,000010,000037,000015,000032,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
438,17129000,-000170,000010,000037,000014,000031,000017,000034,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
439,17130000,-000531,000009,000035,000014,000031,000015,000034,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
440,17131000,-000836,000007,000035,000013,000034,000016,000037,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
441,17132000,-001060,000008,000035,000013,000035,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
442,17133000,-001171,000008,000035,000014,000037,000016,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
443,17134000,-001168,000009,000037,000013,000039,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
444,17135000,-001048,000008,000035,000013,000039,000011,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
445,17136000,-000823,000009,000035,000014,000040,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
446,17137000,-000514,000009,000036,000014,000041,000011,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
447,17138000,-000152,000009,000037,000014,000041,000011,000027,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
448,17139000,000228,000010,000036,000013,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
449,17140000,000590,000009,000036,000014,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
450,17141000,000895,000010,000041,000019,000037,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
451,17142000,001116,000011,000038,000014,000037,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
452,17143000,001230,000011,000037,000013,000035,000012,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
453,17144000,001228,000010,000037,000014,000031,000013,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
454,17145000,001106,000010,000036,000013,000030,000011,000029,000017,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
455,17146000,000881,000010,000037,000013,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
456,17147000,000571,000008,000037,000013,000030,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
457,17148000,000206,000003,000037,000014,000030,000014,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
458,17149000,-000170,000009,000036,000014,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
459,17150000,-000532,000008,000036,000013,000033,000017,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
460,17151000,-000836,000007,000038,000014,000034,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
461,17152000,-001057,000010,000035,000012,000035,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
462,17153000,-001171,000008,000035,000014,000036,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
463,17154000,-001168,000008,000036,000014,000037,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
464,17155000,-001049,000008,000036,000014,000040,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
465,17156000,-000823,000008,000033,000010,000040,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
466,17157000,-000513,000008,000035,000014,000040,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
467,17158000,-000154,000009,000036,000013,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
468,17159000,000228,000008,000037,000012,000043,000013,000029,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
469,17160000,000591,000010,000036,000013,000038,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
470,17161000,000897,000010,000036,000014,000038,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
471,17162000,001116,000010,000038,000015,000036,000011,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
472,17163000,001229,000010,000037,000013,000036,000010,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
473,17164000,001228,000010,000037,000014,000034,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
474,17165000,001107,000009,000039,000014,000035,000015,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
475,17166000,000881,000009,000037,000013,000033,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
476,17167000,000570,000009,000037,000014,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
477,17168000,000209,000009,000037,000014,000032,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
478,17169000,-000172,000008,000036,000014,000032,000015,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
479,17170000,-000533,000008,000035,000013,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
480,17171000,-000837,000009,000033,000010,000035,000015,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
481,17172000,-001057,000009,000035,000014,000036,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
482,17173000,-001172,000010,000036,000014,000037,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
483,17174000,-001168,000008,000036,000013,000037,000015,000037,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
484,17175000,-001046,000011,000036,000013,000039,000015,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
485,17176000,-000822,000008,000036,000014,000040,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
486,17177000,-000514,000008,000036,000014,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
487,17178000,-000152,000008,000038,000016,000037,000009,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
488,17179000,000228,000009,000037,000013,000039,000009,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
489,17180000,000591,000008,000037,000013,000040,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
490,17181000,000895,000010,000036,000013,000037,000010,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
491,17182000,001116,000008,000037,000013,000036,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
492,17183000,001229,000010,000036,000014,000034,000011,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
493,17184000,001228,000010,000041,000018,000033,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
494,17185000,001106,000010,000037,000013,000031,000013,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
495,17186000,000882,000010,000037,000013,000031,000012,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
496,17187000,000571,000009,000037,000012,000033,000015,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
497,17188000,000211,000009,000037,000014,000031,000015,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
498,17189000,-000173,000007,000035,000014,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
499,17190000,-000535,000005,000036,000013,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
500,17191000,-000838,000008,000036,000012,000033,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
501,17192000,-001057,000009,000037,000014,000036,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
502,17193000,-001172,000009,000035,000014,000033,000011,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
503,17194000,-001168,000008,000035,000014,000038,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
504,17195000,-001047,000010,000035,000013,000039,000013,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
505,17196000,-000822,000008,000038,000014,000039,000014,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
506,17197000,-000514,000008,000034,000011,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
507,17198000,-000152,000010,000036,000013,000042,000012,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
508,17199000,000228,000008,000035,000013,000040,000011,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
509,17200000,000589,000010,000037,000014,000041,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
510,17201000,000895,000010,000037,000014,000037,000013,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
511,17202000,001118,000012,000038,000015,000036,000011,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
512,17203000,001232,000012,000035,000014,000036,000012,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
513,17204000,001227,000010,000036,000013,000033,000011,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
514,17205000,001106,000009,000035,000013,000033,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
515,17206000,000879,000008,000037,000014,000035,000015,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
516,17207000,000571,000010,000036,000013,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
517,17208000,000211,000010,000035,000014,000031,000014,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
518,17209000,-000171,000009,000036,000014,000031,000016,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
519,17210000,-000532,000009,000036,000014,000032,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
520,17211000,-000836,000010,000037,000014,000033,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
521,17212000,-001057,000009,000034,000011,000035,000017,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
522,17213000,-001172,000010,000037,000012,000037,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
523,17214000,-001169,000008,000035,000014,000038,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
524,17215000,-001047,000008,000036,000013,000040,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
525,17216000,-000824,000008,000036,000014,000039,000014,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
526,17217000,-000513,000009,000036,000014,000041,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
527,17218000,-000153,000009,000036,000011,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
528,17219000,000228,000009,000041,000017,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
529,17220000,000591,000010,000035,000013,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
530,17221000,000895,000010,000038,000015,000039,000010,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
531,17222000,001114,000009,000036,000013,000036,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
532,17223000,001230,000009,000037,000013,000035,000011,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
533,17224000,001226,000010,000036,000013,000033,000011,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
534,17225000,001109,000011,000037,000013,000032,000013,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
535,17226000,000881,000010,000037,000013,000032,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
536,17227000,000571,000009,000038,000013,000031,000013,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
537,17228000,000209,000009,000037,000011,000030,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
538,17229000,-000170,000009,000035,000013,000031,000014,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
539,17230000,-000531,000008,000036,000013,000034,000014,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
540,17231000,-000838,000009,000037,000014,000033,000018,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
541,17232000,-001058,000009,000037,000012,000036,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
542,17233000,-001172,000007,000034,000012,000034,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
543,17234000,-001168,000009,000035,000012,000039,000018,000029,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
544,17235000,-001047,000008,000036,000013,000038,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
545,17236000,-000822,000009,000036,000013,000041,000014,000032,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
546,17237000,-000512,000010,000036,000013,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
547,17238000,-000152,000010,000036,000014,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
548,17239000,000228,000009,000036,000011,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
549,17240000,000589,000010,000036,000012,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
550,17241000,000895,000009,000037,000013,000037,000008,000026,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
551,17242000,001116,000009,000038,000014,000035,000011,000022,000017,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
552,17243000,001230,000009,000035,000013,000035,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
553,17244000,001227,000011,000037,000014,000031,000012,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
554,17245000,001107,000010,000036,000014,000032,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
555,17246000,000881,000010,000036,000014,000031,000014,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
556,17247000,000571,000010,000038,000014,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
557,17248000,000209,000008,000035,000013,000029,000014,000034,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
558,17249000,-000170,000009,000035,000013,000032,000016,000034,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
559,17250000,-000531,000009,000034,000012,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
560,17251000,-000836,000009,000036,000014,000034,000015,000035,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
561,17252000,-001057,000008,000035,000013,000037,000017,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
562,17253000,-001170,000010,000031,000009,000037,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
563,17254000,-001168,000008,000036,000012,000039,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
564,17255000,-001048,000008,000037,000013,000039,000014,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
565,17256000,-000821,000010,000036,000014,000039,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
566,17257000,-000517,000005,000036,000013,000040,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
567,17258000,-000154,000008,000036,000012,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
568,17259000,000229,000010,000036,000013,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
569,17260000,000591,000010,000040,000016,000042,000013,000027,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
570,17261000,000895,000009,000036,000014,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
571,17262000,001116,000009,000036,000013,000036,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
572,17263000,001230,000009,000037,000013,000035,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
573,17264000,001226,000009,000037,000013,000033,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
574,17265000,001106,000010,000037,000013,000031,000012,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
575,17266000,000878,000008,000035,000012,000033,000014,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
576,17267000,000573,000010,000036,000015,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
577,17268000,000209,000009,000037,000014,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
578,17269000,-000171,000009,000036,000012,000032,000016,000034,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
579,17270000,-000533,000008,000037,000012,000031,000016,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
580,17271000,-000836,000009,000035,000014,000033,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
581,17272000,-001054,000011,000038,000013,000037,000017,000033,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
582,17273000,-001170,000010,000035,000013,000035,000015,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
583,17274000,-001169,000008,000037,000014,000040,000015,000032,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
584,17275000,-001047,000008,000036,000012,000041,000016,000031,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
585,17276000,-000822,000008,000035,000014,000040,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
586,17277000,-000513,000008,000036,000013,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
587,17278000,-000152,000008,000035,000014,000040,000012,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
588,17279000,000228,000011,000038,000015,000038,000012,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
589,17280000,000589,000010,000036,000014,000038,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
590,17281000,000893,000009,000037,000014,000038,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
591,17282000,001114,000010,000036,000014,000035,000009,000026,000017,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
592,17283000,001229,000009,000037,000013,000035,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
593,17284000,001226,000009,000039,000015,000034,000012,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
594,17285000,001102,000007,000036,000013,000031,000013,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
595,17286000,000881,000008,000037,000013,000031,000014,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
596,17287000,000571,000009,000037,000014,000033,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
597,17288000,000209,000009,000035,000011,000029,000015,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
598,17289000,-000170,000008,000036,000014,000031,000014,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
599,17290000,-000532,000008,000036,000014,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
600,17291000,-000836,000008,000036,000014,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
601,17092000,000590,000009,000036,000014,000040,000010,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
602,17093000,000897,000009,000038,000014,000037,000011,000026,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
603,17094000,001115,000010,000036,000014,000034,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
604,17095000,001228,000008,000037,000014,000035,000012,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
605,17096000,001225,000010,000035,000013,000033,000013,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
606,17097000,001106,000010,000037,000013,000032,000012,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
607,17098000,000882,000010,000036,000014,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
608,17099000,000570,000009,000037,000014,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
609,17100000,000209,000009,000036,000013,000031,000016,000036,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
610,17101000,-000172,000007,000036,000013,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
611,17102000,-000530,000010,000035,000012,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
612,17103000,-000836,000008,000035,000014,000033,000017,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
613,17104000,-001057,000008,000035,000012,000035,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
614,17105000,-001172,000009,000037,000016,000038,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
615,17106000,-001168,000008,000035,000014,000037,000013,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
616,17107000,-001049,000008,000035,000014,000037,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
617,17108000,-000823,000008,000034,000013,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
618,17109000,-000514,000008,000035,000011,000040,000014,000029,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
619,17110000,-000150,000012,000034,000011,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
620,17111000,000228,000009,000035,000013,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
621,17112000,000590,000010,000037,000014,000038,000011,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
622,17113000,000897,000010,000037,000013,000037,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
623,17114000,001114,000009,000037,000013,000037,000011,000025,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
624,17115000,001230,000009,000037,000014,000034,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
625,17116000,001228,000010,000037,000013,000032,000011,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
626,17117000,001102,000003,000038,000013,000033,000011,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
627,17118000,000881,000008,000036,000013,000032,000013,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
628,17119000,000570,000009,000034,000013,000032,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
629,17120000,000210,000008,000035,000011,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
630,17121000,-000170,000009,000037,000014,000028,000013,000034,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
631,17122000,-000532,000009,000035,000014,000033,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
632,17123000,-000836,000008,000037,000014,000034,000016,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
633,17124000,-001057,000009,000036,000013,000035,000015,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
634,17125000,-001172,000009,000035,000013,000036,000016,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
635,17126000,-001167,000010,000036,000011,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
636,17127000,-001047,000010,000037,000013,000040,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
637,17128000,-000823,000007,000036,000014,000039,000011,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
638,17129000,-000514,000009,000035,000012,000041,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
639,17130000,-000152,000009,000037,000014,000040,000010,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
640,17131000,000231,000011,000037,000014,000041,000011,000027,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
641,17132000,000590,000010,000037,000014,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
642,17133000,000896,000009,000037,000013,000039,000009,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
643,17134000,001114,000010,000037,000013,000036,000011,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
644,17135000,001230,000009,000037,000013,000039,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
645,17136000,001228,000010,000037,000014,000030,000007,000030,000017,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
646,17137000,001108,000010,000037,000014,000032,000014,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
647,17138000,000881,000009,000036,000015,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
648,17139000,000573,000010,000037,000015,000033,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
649,17140000,000209,000009,000037,000014,000031,000016,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
650,17141000,-000168,000011,000037,000013,000031,000015,000035,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
651,17142000,-000532,000009,000040,000018,000031,000015,000034,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
652,17143000,-000836,000010,000036,000012,000033,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
653,17144000,-001058,000010,000037,000014,000035,000016,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
654,17145000,-001172,000009,000036,000014,000037,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
655,17146000,-001168,000009,000036,000014,000037,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
656,17147000,-001051,000005,000036,000013,000037,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
657,17148000,-000823,000008,000036,000013,000039,000012,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
658,17149000,-000513,000008,000035,000011,000039,000010,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
659,17150000,-000153,000009,000040,000018,000041,000014,000028,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
660,17151000,000228,000009,000036,000014,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
661,17152000,000589,000010,000036,000013,000040,000009,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
662,17153000,000897,000011,000037,000014,000038,000011,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
663,17154000,001115,000010,000038,000014,000036,000011,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
664,17155000,001230,000008,000038,000013,000035,000011,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
665,17156000,001224,000009,000038,000014,000033,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
666,17157000,001107,000010,000037,000015,000033,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
667,17158000,000880,000011,000038,000013,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
668,17159000,000571,000010,000037,000014,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
669,17160000,000209,000008,000038,000013,000031,000014,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
670,17161000,-000170,000008,000036,000014,000031,000016,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
671,17162000,-000530,000008,000037,000013,000031,000017,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
672,17163000,-000836,000009,000036,000013,000033,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
673,17164000,-001058,000008,000035,000012,000035,000018,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
674,17165000,-001170,000009,000039,000014,000035,000014,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
675,17166000,-001168,000009,000035,000012,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
676,17167000,-001048,000009,000038,000011,000040,000013,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
677,17168000,-000823,000009,000035,000013,000040,000014,000029,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
678,17169000,-000514,000008,000036,000013,000040,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
679,17170000,-000153,000009,000035,000014,000041,000012,000027,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
680,17171000,000228,000010,000036,000013,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
681,17172000,000590,000009,000036,000014,000039,000009,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
682,17173000,000893,000010,000036,000014,000036,000010,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
683,17174000,001114,000009,000037,000015,000036,000011,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
684,17175000,001232,000010,000038,000014,000035,000012,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
685,17176000,001228,000011,000038,000014,000033,000012,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
686,17177000,001107,000009,000037,000013,000033,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
687,17178000,000881,000010,000037,000015,000031,000013,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
688,17179000,000571,000009,000036,000014,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
689,17180000,000209,000009,000037,000014,000029,000013,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
690,17181000,-000171,000009,000035,000014,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
691,17182000,-000532,000009,000037,000015,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
692,17183000,-000837,000008,000035,000011,000033,000016,000035,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
693,17184000,-001058,000008,000035,000013,000035,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
694,17185000,-001172,000010,000031,000009,000037,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
695,17186000,-001169,000009,000034,000011,000038,000015,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
696,17187000,-001048,000009,000036,000013,000040,000014,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
697,17188000,-000823,000009,000036,000014,000040,000012,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
698,17189000,-000512,000010,000035,000013,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
699,17190000,-000152,000009,000035,000014,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
700,17191000,000228,000010,000035,000012,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
701,17192000,000590,000010,000038,000015,000041,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
702,17193000,000895,000010,000036,000014,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
703,17194000,001115,000010,000037,000014,000036,000010,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
704,17195000,001230,000009,000037,000014,000035,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
705,17196000,001226,000010,000037,000012,000034,000012,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
706,17197000,001107,000010,000037,000013,000033,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
707,17198000,000884,000013,000039,000016,000033,000013,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
708,17199000,000573,000011,000037,000013,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
709,17200000,000210,000010,000037,000013,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
710,17201000,-000170,000009,000037,000014,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
711,17202000,-000531,000009,000036,000014,000033,000015,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
712,17203000,-000838,000006,000035,000013,000033,000016,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
713,17204000,-001056,000008,000035,000014,000035,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
714,17205000,-001172,000008,000036,000013,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
715,17206000,-001169,000008,000039,000015,000038,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
716,17207000,-001048,000008,000035,000014,000040,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
717,17208000,-000823,000008,000035,000013,000039,000014,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
718,17209000,-000514,000009,000037,000013,000039,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
719,17210000,-000154,000008,000036,000011,000039,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
720,17211000,000228,000009,000031,000010,000039,000011,000025,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
721,17212000,000590,000009,000036,000014,000040,000010,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
722,17213000,000895,000010,000036,000013,000037,000010,000026,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
723,17214000,001116,000010,000036,000014,000037,000012,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
724,17215000,001230,000009,000036,000014,000033,000010,000022,000016,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
725,17216000,001226,000007,000036,000012,000033,000014,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
726,17217000,001102,000004,000037,000013,000031,000012,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
727,17218000,000881,000009,000037,000014,000033,000014,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
728,17219000,000573,000009,000038,000013,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
729,17220000,000210,000008,000036,000011,000031,000013,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
730,17221000,-000171,000010,000036,000013,000033,000018,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
731,17222000,-000531,000009,000035,000013,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
732,17223000,-000836,000008,000036,000014,000035,000016,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
733,17224000,-001056,000009,000037,000013,000035,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
734,17225000,-001169,000013,000037,000013,000036,000015,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
735,17226000,-001168,000008,000035,000014,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
736,17227000,-001047,000009,000037,000013,000037,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
737,17228000,-000823,000009,000035,000013,000039,000013,000027,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
738,17229000,-000515,000009,000036,000014,000039,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
739,17230000,-000158,000003,000036,000014,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
740,17231000,000228,000009,000036,000012,000039,000012,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
741,17232000,000591,000008,000035,000012,000040,000010,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
742,17233000,000895,000008,000040,000017,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
743,17234000,001117,000009,000037,000014,000035,000011,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
744,17235000,001230,000009,000037,000014,000035,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
745,17236000,001226,000011,000038,000014,000033,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
746,17237000,001106,000009,000037,000013,000032,000014,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
747,17238000,000881,000010,000036,000012,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
748,17239000,000568,000007,000035,000012,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
749,17240000,000210,000009,000037,000014,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
750,17241000,-000168,000009,000036,000014,000031,000016,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
751,17242000,-000533,000010,000036,000013,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
752,17243000,-000836,000010,000035,000011,000033,000016,000036,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
753,17244000,-001057,000008,000036,000013,000036,000016,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
754,17245000,-001170,000010,000036,000014,000037,000018,000033,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
755,17246000,-001169,000009,000035,000014,000038,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
756,17247000,-001049,000009,000036,000014,000040,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
757,17248000,-000823,000008,000035,000015,000039,000011,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
758,17249000,-000513,000010,000037,000012,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
759,17250000,-000153,000010,000035,000012,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
760,17251000,000229,000010,000036,000013,000038,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
761,17252000,000591,000011,000037,000014,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
762,17253000,000894,000010,000036,000014,000037,000011,000026,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
763,17254000,001117,000011,000036,000015,000037,000009,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
764,17255000,001230,000010,000036,000014,000036,000012,000026,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
765,17256000,001226,000009,000036,000013,000034,000012,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
766,17257000,001108,000009,000037,000014,000034,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
767,17258000,000875,000004,000037,000014,000031,000013,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
768,17259000,000570,000010,000036,000015,000031,000016,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
769,17260000,000209,000008,000037,000014,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
770,17261000,-000170,000010,000036,000012,000030,000015,000033,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
771,17262000,-000531,000009,000036,000014,000033,000018,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
772,17263000,-000837,000008,000037,000014,000032,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
773,17264000,-001057,000008,000035,000012,000035,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
774,17265000,-001173,000008,000036,000013,000036,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
775,17266000,-001170,000009,000033,000009,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
776,17267000,-001048,000010,000036,000013,000040,000014,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
777,17268000,-000822,000007,000037,000013,000038,000011,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
778,17269000,-000515,000008,000036,000013,000042,000014,000029,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
779,17270000,-000151,000009,000036,000015,000038,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
780,17271000,000225,000006,000036,000014,000038,000009,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
781,17272000,000589,000009,000037,000014,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
782,17273000,000896,000009,000035,000012,000037,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
783,17274000,001116,000010,000035,000012,000037,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
784,17275000,001230,000009,000037,000014,000035,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
785,17276000,001226,000010,000037,000013,000033,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
786,17277000,001106,000011,000036,000013,000033,000012,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
787,17278000,000881,000010,000037,000014,000031,000013,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
788,17279000,000570,000008,000036,000011,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
789,17280000,000211,000009,000035,000012,000031,000016,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
790,17281000,-000170,000009,000037,000014,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
791,17282000,-000531,000010,000036,000014,000031,000016,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
792,17283000,-000836,000009,000037,000014,000034,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
793,17284000,-001056,000008,000035,000013,000034,000017,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
794,17285000,-001174,000007,000036,000014,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
795,17286000,-001169,000008,000035,000014,000037,000015,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
796,17287000,-001047,000009,000035,000013,000039,000014,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
797,17288000,-000823,000010,000037,000014,000037,000009,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
798,17289000,-000513,000008,000035,000013,000040,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
799,17290000,-000152,000010,000035,000015,000040,000010,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
800,17291000,000228,000009,000036,000014,000040,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
801,17092000,-000836,000010,000036,000012,000034,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
802,17093000,-001058,000008,000036,000014,000035,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
803,17094000,-001172,000006,000035,000014,000038,000016,000034,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
804,17095000,-001168,000009,000036,000014,000037,000016,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
805,17096000,-001043,000011,000036,000013,000040,000014,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
806,17097000,-000822,000008,000035,000013,000039,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
807,17098000,-000512,000010,000037,000013,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
808,17099000,-000152,000009,000037,000015,000037,000009,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
809,17100000,000228,000009,000037,000013,000039,000010,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
810,17101000,000589,000010,000037,000013,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
811,17102000,000893,000009,000037,000014,000037,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
812,17103000,001115,000009,000037,000014,000037,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
813,17104000,001229,000010,000038,000014,000034,000012,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
814,17105000,001230,000012,000037,000015,000033,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
815,17106000,001107,000009,000037,000012,000033,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
816,17107000,000881,000010,000037,000014,000032,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
817,17108000,000570,000009,000035,000012,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
818,17109000,000209,000009,000037,000013,000029,000012,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
819,17110000,-000170,000008,000037,000013,000031,000016,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
820,17111000,-000533,000008,000036,000014,000031,000016,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
821,17112000,-000836,000007,000034,000013,000033,000016,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
822,17113000,-001057,000009,000035,000013,000034,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
823,17114000,-001171,000010,000036,000014,000037,000016,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
824,17115000,-001168,000008,000035,000014,000035,000011,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
825,17116000,-001047,000008,000036,000014,000039,000014,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
826,17117000,-000824,000008,000036,000013,000039,000012,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
827,17118000,-000514,000009,000036,000014,000040,000012,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
828,17119000,-000154,000007,000036,000013,000041,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
829,17120000,000228,000009,000034,000011,000039,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
830,17121000,000589,000009,000038,000014,000041,000011,000027,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
831,17122000,000896,000008,000037,000014,000039,000010,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
832,17123000,001116,000009,000037,000014,000036,000011,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
833,17124000,001229,000010,000037,000014,000034,000011,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
834,17125000,001228,000009,000037,000013,000033,000012,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
835,17126000,001104,000007,000036,000014,000032,000013,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
836,17127000,000881,000009,000037,000013,000030,000014,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
837,17128000,000573,000008,000037,000014,000031,000014,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
838,17129000,000209,000009,000037,000013,000031,000014,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
839,17130000,-000169,000009,000037,000014,000029,000014,000031,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
840,17131000,-000530,000008,000037,000013,000032,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
841,17132000,-000836,000008,000036,000013,000035,000018,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
842,17133000,-001057,000010,000035,000012,000036,000016,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
843,17134000,-001170,000009,000035,000012,000037,000015,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
844,17135000,-001168,000009,000037,000014,000039,000014,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
845,17136000,-001047,000008,000036,000013,000039,000013,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
846,17137000,-000824,000009,000036,000013,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
847,17138000,-000512,000008,000037,000013,000043,000015,000030,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
848,17139000,-000152,000008,000035,000014,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
849,17140000,000228,000008,000037,000014,000041,000012,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
850,17141000,000589,000009,000036,000014,000040,000011,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
851,17142000,000895,000009,000036,000014,000037,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
852,17143000,001115,000010,000036,000014,000037,000010,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
853,17144000,001231,000009,000036,000014,000036,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
854,17145000,001228,000011,000037,000014,000030,000007,000029,000016,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
855,17146000,001106,000009,000037,000013,000032,000013,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
856,17147000,000881,000009,000036,000013,000031,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
857,17148000,000570,000009,000035,000013,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
858,17149000,000209,000009,000036,000012,000032,000017,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
859,17150000,-000172,000007,000035,000012,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
860,17151000,-000531,000009,000033,000011,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
861,17152000,-000836,000009,000036,000012,000033,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
862,17153000,-001057,000007,000037,000013,000035,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
863,17154000,-001172,000009,000036,000013,000035,000015,000037,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
864,17155000,-001170,000006,000036,000014,000037,000016,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
865,17156000,-001047,000009,000037,000013,000039,000012,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
866,17157000,-000823,000008,000035,000012,000039,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
867,17158000,-000512,000009,000034,000013,000039,000010,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
868,17159000,-000152,000009,000036,000014,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
869,17160000,000228,000008,000035,000014,000039,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
870,17161000,000591,000010,000037,000013,000039,000011,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
871,17162000,000895,000010,000037,000014,000037,000010,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
872,17163000,001114,000011,000039,000013,000036,000011,000028,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
873,17164000,001232,000010,000041,000018,000035,000011,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
874,17165000,001227,000009,000038,000013,000033,000013,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
875,17166000,001106,000011,000036,000014,000032,000013,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
876,17167000,000881,000009,000036,000014,000033,000013,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
877,17168000,000573,000009,000037,000014,000030,000015,000037,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
878,17169000,000209,000010,000036,000014,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
879,17170000,-000172,000007,000036,000014,000031,000016,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
880,17171000,-000532,000008,000036,000013,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
881,17172000,-000836,000008,000035,000012,000033,000013,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
882,17173000,-001057,000008,000035,000013,000039,000019,000032,000022,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
883,17174000,-001170,000008,000036,000014,000035,000016,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
884,17175000,-001168,000007,000037,000014,000037,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
885,17176000,-001047,000008,000036,000013,000040,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
886,17177000,-000819,000012,000036,000013,000039,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
887,17178000,-000514,000008,000037,000012,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
888,17179000,-000153,000010,000038,000013,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
889,17180000,000228,000009,000036,000013,000040,000011,000025,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
890,17181000,000590,000008,000037,000014,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
891,17182000,000896,000009,000037,000013,000037,000012,000026,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
892,17183000,001116,000010,000037,000014,000036,000012,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
893,17184000,001231,000010,000035,000014,000035,000011,000029,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
894,17185000,001226,000010,000036,000013,000035,000011,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
895,17186000,001106,000008,000037,000012,000033,000013,000030,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
896,17187000,000881,000011,000037,000013,000033,000015,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
897,17188000,000571,000008,000037,000014,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
898,17189000,000211,000010,000035,000014,000031,000015,000032,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
899,17190000,-000170,000007,000035,000014,000031,000018,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
900,17191000,-000533,000007,000035,000013,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
901,17192000,-000838,000010,000033,000010,000035,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
902,17193000,-001057,000008,000036,000014,000034,000016,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
903,17194000,-001172,000008,000035,000014,000035,000015,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
904,17195000,-001169,000008,000035,000014,000038,000013,000034,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
905,17196000,-001044,000012,000037,000014,000041,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
906,17197000,-000823,000008,000035,000013,000040,000011,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
907,17198000,-000514,000009,000036,000013,000039,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
908,17199000,-000152,000009,000037,000015,000037,000009,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
909,17200000,000228,000008,000036,000014,000040,000011,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
910,17201000,000590,000009,000036,000013,000040,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
911,17202000,000895,000010,000036,000013,000040,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
912,17203000,001115,000010,000037,000014,000037,000010,000026,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
913,17204000,001228,000009,000035,000014,000035,000011,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
914,17205000,001226,000010,000035,000014,000033,000012,000027,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
915,17206000,001106,000010,000037,000013,000033,000011,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
916,17207000,000881,000008,000037,000013,000031,000013,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
917,17208000,000570,000008,000038,000013,000030,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
918,17209000,000209,000008,000036,000014,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
919,17210000,-000170,000010,000037,000014,000033,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
920,17211000,-000532,000009,000037,000014,000032,000017,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
921,17212000,-000836,000008,000035,000012,000033,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
922,17213000,-001057,000008,000039,000015,000036,000017,000033,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
923,17214000,-001172,000010,000036,000014,000036,000015,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
924,17215000,-001168,000010,000035,000015,000037,000014,000031,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
925,17216000,-001047,000008,000037,000014,000040,000013,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
926,17217000,-000823,000007,000035,000013,000039,000013,000030,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
927,17218000,-000514,000009,000033,000010,000040,000013,000030,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
928,17219000,-000151,000010,000037,000013,000041,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
929,17220000,000228,000010,000036,000013,000038,000010,000026,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
930,17221000,000591,000009,000037,000014,000039,000011,000025,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
931,17222000,000895,000008,000038,000015,000038,000010,000027,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
932,17223000,001112,000006,000037,000014,000035,000011,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
933,17224000,001230,000010,000037,000013,000034,000011,000029,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
934,17225000,001227,000010,000035,000014,000033,000012,000028,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
935,17226000,001107,000009,000036,000012,000033,000011,000030,000018,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
936,17227000,000881,000008,000037,000014,000036,000017,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
937,17228000,000571,000009,000035,000014,000031,000015,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
938,17229000,000209,000008,000035,000013,000031,000015,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
939,17230000,-000170,000009,000036,000013,000031,000016,000033,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
940,17231000,-000531,000009,000036,000013,000032,000014,000031,000019,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
941,17232000,-000836,000009,000035,000014,000034,000015,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
942,17233000,-001057,000008,000036,000015,000035,000016,000032,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
943,17234000,-001172,000009,000035,000014,000036,000014,000032,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
944,17235000,-001169,000008,000037,000012,000042,000019,000034,000024,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
945,17236000,-001047,000008,000035,000013,000039,000014,000031,000021,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
946,17237000,-000823,000010,000036,000013,000039,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
947,17238000,-000514,000008,000036,000012,000040,000011,000029,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
948,17239000,-000152,000008,000039,000013,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
949,17240000,000228,000009,000036,000014,000035,000006,000027,000017,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0
950,17241000,000590,000011,000035,000014,000040,000011,000028,000020,999999,999999,999999,999999,999999,999999,999999,0,0,0,0,0,0,0

31
types.go Normal file
View File

@ -0,0 +1,31 @@
package comtrade
const (
// dd/mm/yyyy,HH:MM:SS.mmmmmm
DateTimeLayout = "02/01/2006,15:04:05.000000"
// mm/dd/yyyy,HH:MM:SS.mmmmmm
DateTimeLayout2 = "01/02/2006,15:04:05.000000"
// mm/dd/yyyy,HH:MM:SS.mmm
CosLightDateTimeLayout = "01/02/2006,15:04:05.000"
Rcv1991 = 1991
Rcv1999 = 1999
Rcv2013 = 2013
Rcv2017 = 2017
TypeASCII = "ASCII"
TypeBinary = "BINARY"
TypeBinary32 = "BINARY32"
TypeFloat32 = "FLOAT32"
NoLeapSecInRecord = 0 // 记录中没有闰秒 no leap seconds are included in the record
AddLeapSecToRecord = 1 // 在记录中增加闰秒 add leap seconds to the record
RemoveLeapSecFromRecord = 2 // 在记录中删除闰秒 remove leap seconds from the record
ClockSourceNotDefinedLeapSecFunc = 3 // 时钟源没有闰秒功能 the clock source does not have leap second functionality.
MonthOutOfRange = "month out of range"
)
type Parser interface {
Parse(filePath string, analogNum, digitalNum, endSamp uint32) (*Data, error)
}

3
version.go Normal file
View File

@ -0,0 +1,3 @@
package comtrade
const Release = "v0.0.3"