http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/examples/src/main/resources/datasets/agaricus-test-expected-results.txt
----------------------------------------------------------------------
diff --git 
a/examples/src/main/resources/datasets/agaricus-test-expected-results.txt 
b/examples/src/main/resources/datasets/agaricus-test-expected-results.txt
new file mode 100644
index 0000000..b6947fd
--- /dev/null
+++ b/examples/src/main/resources/datasets/agaricus-test-expected-results.txt
@@ -0,0 +1,1611 @@
+0.00025412877
+0.99888784
+0.00025412877
+0.00020371929
+0.0016852723
+0.004336959
+0.99888605
+0.00025412877
+0.99888784
+0.0007407177
+0.99888784
+0.00048179296
+6.019019e-06
+0.00025412877
+7.060129e-06
+0.0003617697
+0.00047204422
+0.99879885
+0.0012118616
+0.00040873847
+0.00047204422
+0.0003617697
+0.00025412877
+0.0004505964
+0.00031991434
+0.9996768
+0.004901804
+0.00052038184
+0.0004505964
+6.019019e-06
+0.00020371929
+0.00052038184
+0.00065504765
+0.0011316377
+0.0002305175
+0.00047204422
+0.004901804
+0.9993381
+0.0002305175
+0.00047204422
+0.0011316377
+0.00020371929
+0.00019959644
+0.0002305175
+0.0002305175
+0.0021919373
+0.0008000284
+0.0051317057
+0.0012118616
+0.00052038184
+0.0003617697
+0.00019959644
+0.99951875
+0.00040873847
+0.00022004127
+0.00039074913
+0.00020371929
+0.00019959644
+0.00040873847
+0.00052038184
+0.0014905198
+7.905719e-06
+0.9994962
+7.905719e-06
+0.99888784
+0.0004505964
+0.9994567
+0.00052038184
+0.00019959644
+0.0004370383
+0.00065504765
+0.0023671745
+0.00019959644
+7.060129e-06
+0.0011316377
+0.00025412877
+0.00065504765
+5.322418e-06
+0.00037842535
+6.243038e-06
+0.0008000284
+0.0013067605
+0.00040873847
+0.0017210845
+0.00025412877
+0.00022004127
+0.9993862
+0.99888784
+0.00019959644
+0.0003455418
+0.0007407177
+0.0002305175
+0.00022004127
+0.0007075034
+0.00019959644
+0.0002305175
+0.0004370383
+0.0004505964
+0.0016852723
+0.0011316377
+0.0002352789
+0.0057994546
+0.0008000284
+0.0031079606
+0.00065504765
+0.00039074913
+0.00018479073
+0.00040873847
+0.0004370383
+0.0023447894
+0.0010494431
+0.0003617697
+0.00052038184
+0.00022004127
+7.060129e-06
+0.9989686
+0.00025412877
+0.0027754887
+0.0012795585
+0.0025701027
+0.00037842535
+0.00040873847
+0.00031991434
+0.0004505964
+0.0015961447
+0.0015961447
+0.00037842535
+5.322418e-06
+0.00025412877
+0.0007407177
+0.00040873847
+0.0002305175
+0.00039074913
+0.0011866327
+0.0016852723
+0.0011866327
+0.00047204422
+0.00022004127
+0.0015629282
+0.99941325
+0.00052038184
+0.00052038184
+7.6220385e-06
+0.00018479073
+0.0007075034
+0.00040873847
+5.322418e-06
+0.00018479073
+0.9993862
+0.00039074913
+0.0057447995
+0.0007075034
+0.0043782797
+0.00047204422
+0.0002305175
+0.004336959
+0.0003455418
+0.0017210845
+0.00048179296
+0.00037842535
+0.99965084
+0.9989686
+0.00019959644
+0.00031991434
+0.00020371929
+0.0043782797
+0.9994567
+0.00040873847
+0.00041718033
+0.002676164
+0.0028780429
+0.0003455418
+0.005320857
+0.99879885
+0.0008000284
+0.0057994546
+0.9996768
+0.0004505964
+0.0011866327
+0.00019959644
+0.00020587152
+0.0004505964
+0.005083311
+3.2162723e-05
+0.0003455418
+0.00040873847
+6.7399155e-06
+0.00047204422
+0.999337
+5.322418e-06
+8.940421e-06
+0.99893767
+0.99888605
+7.6220385e-06
+0.99965084
+0.0031376088
+7.060129e-06
+7.905719e-06
+6.243038e-06
+0.00022004127
+4.237742e-05
+0.99965084
+6.7399155e-06
+5.322418e-06
+7.060129e-06
+8.940421e-06
+0.00052038184
+0.0053715007
+0.00019060042
+0.00031991434
+0.00041718033
+6.7399155e-06
+4.237742e-05
+0.0007075034
+0.00047204422
+6.019019e-06
+0.00041718033
+0.0017210845
+7.905719e-06
+0.9989686
+6.019019e-06
+0.9994567
+7.060129e-06
+7.6220385e-06
+8.940421e-06
+7.060129e-06
+5.322418e-06
+0.9994147
+0.0004505964
+8.940421e-06
+7.905719e-06
+8.940421e-06
+0.00015625419
+0.0014905198
+5.322418e-06
+0.0007075034
+7.6220385e-06
+5.322418e-06
+0.9997003
+0.00020371929
+7.060129e-06
+5.322418e-06
+8.940421e-06
+8.940421e-06
+6.243038e-06
+4.325291e-05
+0.99901485
+8.940421e-06
+0.9994137
+7.6220385e-06
+3.5457782e-05
+0.00015625419
+3.5457782e-05
+6.7399155e-06
+5.322418e-06
+8.940421e-06
+4.237742e-05
+7.060129e-06
+0.00020587152
+0.9997141
+0.00015625419
+4.237742e-05
+0.00047204422
+0.9993862
+8.940421e-06
+0.9997141
+3.2162723e-05
+6.243038e-06
+8.940421e-06
+7.6220385e-06
+6.019019e-06
+7.6220385e-06
+6.243038e-06
+0.9997141
+7.060129e-06
+5.322418e-06
+3.923348e-05
+7.905719e-06
+5.322418e-06
+7.905719e-06
+0.9990878
+0.00039074913
+5.322418e-06
+6.243038e-06
+0.00052038184
+7.6220385e-06
+8.940421e-06
+7.905719e-06
+7.060129e-06
+6.243038e-06
+8.940421e-06
+6.019019e-06
+0.99955446
+7.6220385e-06
+6.243038e-06
+0.9994567
+6.243038e-06
+5.322418e-06
+0.9994572
+7.060129e-06
+7.060129e-06
+5.322418e-06
+0.99955446
+6.243038e-06
+7.905719e-06
+7.060129e-06
+7.060129e-06
+0.99955446
+0.00020587152
+6.7399155e-06
+7.6220385e-06
+7.905719e-06
+8.940421e-06
+7.060129e-06
+3.2162723e-05
+0.9994572
+0.99973494
+6.019019e-06
+0.00015625419
+7.6220385e-06
+5.322418e-06
+6.7399155e-06
+6.019019e-06
+5.322418e-06
+0.00022004127
+7.6220385e-06
+3.923348e-05
+6.019019e-06
+7.905719e-06
+0.00014466306
+8.940421e-06
+5.322418e-06
+0.0007075034
+8.940421e-06
+6.019019e-06
+7.6220385e-06
+5.322418e-06
+7.905719e-06
+4.237742e-05
+6.243038e-06
+4.237742e-05
+0.0010494431
+8.940421e-06
+0.0002305175
+7.905719e-06
+0.9994147
+8.940421e-06
+0.9995196
+0.00025665603
+3.2162723e-05
+6.243038e-06
+0.00022004127
+7.6220385e-06
+0.00020587152
+0.00017226019
+3.282719e-05
+0.00014466306
+6.019019e-06
+0.9990878
+0.0001594819
+6.7399155e-06
+0.00014466306
+0.9993678
+3.6372072e-05
+7.060129e-06
+7.060129e-06
+3.2162723e-05
+3.2162723e-05
+0.00023281
+6.7399155e-06
+7.6220385e-06
+4.792357e-05
+6.7399155e-06
+5.322418e-06
+0.00022695896
+0.00022695896
+0.99948114
+8.940421e-06
+7.060129e-06
+0.0001594819
+7.905719e-06
+0.9994147
+4.237742e-05
+3.2162723e-05
+7.6220385e-06
+0.00017670133
+7.060129e-06
+6.019019e-06
+6.019019e-06
+6.7399155e-06
+0.99973494
+6.243038e-06
+0.00017226019
+0.00020587152
+6.019019e-06
+4.671893e-05
+3.2162723e-05
+6.243038e-06
+0.00020587152
+4.792357e-05
+6.7399155e-06
+6.7399155e-06
+5.322418e-06
+0.00015625419
+0.00020587152
+2.9776578e-05
+4.237742e-05
+0.9993381
+3.7123496e-05
+0.0001594819
+0.00019060042
+0.00020587152
+0.00023761873
+0.99973494
+0.00017226019
+3.5457782e-05
+0.00020587152
+0.00017670133
+3.2162723e-05
+3.2162723e-05
+3.6372072e-05
+4.237742e-05
+0.00017226019
+0.00015625419
+0.00022695896
+0.00023281
+0.00021012398
+4.792357e-05
+4.237742e-05
+0.00019060042
+4.891363e-05
+3.5457782e-05
+0.00023281
+4.671893e-05
+0.00017670133
+0.00014466306
+0.00017226019
+0.00020587152
+0.00020587152
+0.00017226019
+6.7399155e-06
+3.2162723e-05
+3.5457782e-05
+3.923348e-05
+4.325291e-05
+4.237742e-05
+0.99824166
+0.00017226019
+3.2162723e-05
+0.00017226019
+2.9776578e-05
+0.00022695896
+4.671893e-05
+0.00017226019
+0.00022695896
+4.325291e-05
+0.00019480144
+3.5457782e-05
+3.5457782e-05
+4.325291e-05
+0.99901485
+3.5457782e-05
+0.00020587152
+3.923348e-05
+5.322418e-06
+4.792357e-05
+0.9993381
+0.00017670133
+0.00020587152
+0.00023761873
+3.282719e-05
+0.00020587152
+0.00016359365
+4.671893e-05
+3.2162723e-05
+0.00020587152
+3.6372072e-05
+5.322418e-06
+0.00019060042
+0.00020587152
+4.671893e-05
+0.99955446
+6.7399155e-06
+0.00020587152
+0.9990164
+0.00015625419
+6.7399155e-06
+0.00019060042
+0.00019060042
+0.0001594819
+0.9987974
+0.00020587152
+4.671893e-05
+4.671893e-05
+0.99995637
+0.00020587152
+0.00015625419
+0.00017226019
+2.9776578e-05
+3.923348e-05
+0.00017226019
+0.0001594819
+0.00017226019
+0.00023281
+3.923348e-05
+3.282719e-05
+0.00022695896
+4.671893e-05
+0.00017226019
+0.00017670133
+4.792357e-05
+0.00015625419
+0.00018035136
+4.325291e-05
+3.5457782e-05
+3.2162723e-05
+0.00017226019
+0.00016359365
+0.00018035136
+0.00015625419
+0.00022695896
+0.00017226019
+3.2162723e-05
+4.792357e-05
+0.00019060042
+3.5457782e-05
+0.00022695896
+2.9776578e-05
+0.00015625419
+0.00020587152
+3.6372072e-05
+0.00020587152
+4.792357e-05
+3.5457782e-05
+4.4368186e-05
+6.019019e-06
+4.325291e-05
+4.792357e-05
+0.0001594819
+0.00020587152
+0.00015625419
+3.3673645e-05
+4.671893e-05
+0.00022695896
+3.2162723e-05
+0.00017226019
+7.905719e-06
+3.5457782e-05
+0.9998155
+3.5457782e-05
+0.00017226019
+0.00015625419
+4.792357e-05
+8.940421e-06
+4.4368186e-05
+0.00017670133
+0.00015625419
+0.00020587152
+3.5457782e-05
+0.00021012398
+4.792357e-05
+3.2162723e-05
+4.671893e-05
+4.237742e-05
+4.671893e-05
+0.9979381
+0.00023281
+0.00025665603
+4.237742e-05
+4.671893e-05
+0.00021012398
+3.2162723e-05
+4.671893e-05
+3.5457782e-05
+4.671893e-05
+3.5457782e-05
+3.2162723e-05
+4.671893e-05
+0.00022695896
+3.5457782e-05
+3.6372072e-05
+0.00020587152
+0.00021012398
+0.9999701
+4.009836e-05
+0.00017670133
+5.2833246e-05
+0.00016359365
+0.00021554108
+0.00021554108
+3.7123496e-05
+0.9979381
+4.792357e-05
+4.009836e-05
+0.9996495
+0.00019480144
+0.9999324
+0.9999671
+5.2833246e-05
+0.9999671
+0.9999671
+0.9999013
+0.00017670133
+0.99897456
+0.00023281
+4.891363e-05
+5.2833246e-05
+0.9998155
+0.9996221
+0.00022695896
+0.00016359365
+5.2833246e-05
+5.2833246e-05
+0.9996495
+0.00017670133
+4.792357e-05
+4.009836e-05
+3.6372072e-05
+0.9999671
+0.00017226019
+0.00025665603
+0.9998288
+4.009836e-05
+0.9999255
+3.7123496e-05
+0.00023761873
+4.891363e-05
+0.00015625419
+0.9999255
+0.00019060042
+0.9979381
+0.00019480144
+0.9999671
+3.3673645e-05
+0.9999671
+4.671893e-05
+0.00019480144
+0.99995637
+5.2833246e-05
+0.00023761873
+4.237742e-05
+5.2833246e-05
+3.7123496e-05
+0.00023281
+0.9998155
+0.00018035136
+0.9987974
+0.00023761873
+0.00020587152
+0.9998155
+3.6372072e-05
+0.9998288
+5.2833246e-05
+4.325291e-05
+4.009836e-05
+5.2833246e-05
+0.99824166
+4.009836e-05
+4.891363e-05
+0.99994016
+0.9979381
+0.9979381
+0.00015625419
+5.2833246e-05
+0.9999255
+0.9979381
+4.792357e-05
+0.99897456
+0.00020587152
+5.2833246e-05
+0.9999671
+0.00022695896
+0.00025665603
+0.9987974
+5.2833246e-05
+4.792357e-05
+4.009836e-05
+4.891363e-05
+0.9996221
+0.00025665603
+5.2833246e-05
+0.00025665603
+0.99897456
+5.2833246e-05
+0.99897456
+0.00023281
+0.9996495
+0.00025665603
+0.00023281
+0.9999671
+0.00019480144
+0.9999255
+0.00017670133
+0.00023281
+0.00018035136
+4.237742e-05
+0.00025665603
+4.891363e-05
+0.00018035136
+5.2833246e-05
+0.9999671
+5.2833246e-05
+0.9999671
+0.00019480144
+4.009836e-05
+0.9999255
+0.00025665603
+0.9987974
+0.00025665603
+0.00018035136
+0.00017670133
+3.7123496e-05
+0.9996495
+4.009836e-05
+0.00021554108
+0.00019060042
+0.99995637
+0.9999709
+0.00019480144
+3.7123496e-05
+4.009836e-05
+3.5457782e-05
+0.9999709
+0.00019480144
+0.00019480144
+0.9999671
+0.9996221
+0.00023281
+0.00017670133
+0.00023281
+3.7123496e-05
+4.237742e-05
+4.009836e-05
+0.00018035136
+0.99995637
+0.00019480144
+0.00017226019
+4.009836e-05
+3.7123496e-05
+3.7123496e-05
+5.2833246e-05
+0.00025665603
+4.792357e-05
+0.9996221
+0.9999255
+0.99897456
+0.00021554108
+3.5457782e-05
+5.2833246e-05
+4.009836e-05
+0.00023281
+3.6372072e-05
+5.2833246e-05
+4.891363e-05
+3.2162723e-05
+3.5457782e-05
+0.99995637
+0.99995637
+0.9996221
+0.99897456
+5.2833246e-05
+0.9998288
+4.009836e-05
+0.99995637
+0.00021554108
+0.99994016
+0.9999105
+5.2833246e-05
+3.923348e-05
+0.99996495
+0.00023281
+0.9999701
+0.9999671
+0.00019480144
+0.9999341
+0.9999341
+0.9987974
+0.9999709
+0.9999255
+0.00016359365
+0.9998617
+0.9999701
+0.9999341
+0.9999701
+0.9999709
+0.9999701
+0.9999324
+0.9979381
+0.9999709
+0.9999324
+0.9999671
+0.9999013
+4.009836e-05
+0.9998288
+0.9979381
+0.9999709
+0.00025665603
+0.99824166
+3.6372072e-05
+5.2833246e-05
+0.9999341
+0.9999701
+0.9999709
+0.9999709
+0.00015625419
+0.99995637
+0.9999614
+3.6372072e-05
+0.00019480144
+0.9999255
+0.9999709
+0.9999709
+0.9999701
+0.99994016
+0.99997354
+0.00023761873
+0.99995637
+0.99996495
+0.9999324
+0.00017670133
+0.00019480144
+0.00017670133
+0.009167032
+0.9999341
+5.2833246e-05
+0.9999126
+4.009836e-05
+0.9999604
+0.9999341
+0.9999341
+0.9999126
+0.9999709
+0.9999341
+0.9999126
+0.00019480144
+0.9999671
+0.9999671
+0.9999324
+0.9999126
+0.9999709
+0.9999604
+0.9999341
+0.99996495
+0.99994016
+0.9999255
+0.9999604
+0.9999341
+0.9999255
+0.9999341
+0.99997354
+0.9999701
+0.9999324
+0.9999207
+0.99997354
+0.99994016
+0.9999126
+0.9999324
+0.9999709
+0.9999207
+0.99994016
+0.00037019775
+0.9999207
+0.99996495
+0.99997354
+0.9999671
+0.9999207
+0.99996495
+0.0013293574
+0.99994016
+0.9999324
+0.99996495
+0.9999604
+0.9999105
+0.9999701
+0.9999324
+0.9999701
+0.9999341
+0.9999324
+0.99997354
+0.9999126
+0.99997354
+0.9999207
+0.9999207
+0.9999341
+0.99995637
+0.9999709
+0.9999701
+0.99997354
+0.99997354
+0.99997354
+0.9999604
+0.9999709
+0.9999255
+0.9999341
+0.9999126
+0.9999105
+0.9999701
+0.0008625914
+0.99997354
+0.99997354
+0.99995637
+0.9999341
+0.9999255
+0.9999341
+0.9999324
+0.99994016
+0.9999013
+0.9999207
+0.9999709
+0.9999701
+0.9999324
+0.9992411
+0.99997354
+0.9999013
+0.9999324
+0.9999324
+0.9999701
+0.9999341
+0.9999324
+0.9999105
+0.9999701
+0.9999709
+0.9999207
+0.9999709
+0.9999126
+0.99994016
+0.99982506
+0.9999341
+0.00046149982
+0.9999639
+0.99996495
+0.99996495
+0.9996221
+0.9999255
+0.99997354
+0.99996495
+0.9999255
+0.9999105
+0.00078249123
+0.9999604
+0.99994016
+0.9999709
+0.00025665603
+0.99994016
+0.99489474
+0.9998155
+0.9999255
+0.9999324
+0.9999614
+0.9999701
+0.9999671
+0.9999324
+0.9999671
+0.00039583017
+0.9999614
+0.9999709
+0.9999614
+0.9999709
+0.9999701
+0.9999701
+0.9999341
+0.9999207
+0.9999341
+0.9999709
+0.00039583017
+0.9999207
+0.9999701
+0.99995637
+0.99982506
+0.9996221
+0.9999207
+0.9999671
+0.9999341
+0.9999126
+0.9999255
+0.9999324
+0.9999255
+0.99985075
+0.9999614
+0.0009514644
+0.99994016
+0.9999671
+0.9992411
+0.009360342
+0.9999105
+0.9999207
+0.99994016
+0.0004272755
+0.9998312
+0.99980205
+0.99982506
+0.99980205
+0.0007991346
+0.9999255
+0.0004272755
+0.9999324
+0.0006919931
+0.00078249123
+0.9999207
+0.9990392
+0.0012328194
+0.0007991346
+0.9990392
+0.9999614
+0.99997354
+0.9999299
+0.98975986
+0.00088093686
+0.00088093686
+0.99998844
+0.00043636683
+0.0006919931
+0.99996495
+0.009360342
+0.9971035
+0.99997354
+0.9999701
+0.99980205
+0.99489474
+0.99927515
+0.9943492
+0.9991503
+0.99927515
+0.9998617
+0.9999341
+0.9990822
+0.9991503
+0.00084514386
+0.0007474052
+0.9991503
+0.004096335
+0.9999671
+0.99527174
+0.9999639
+0.9990392
+0.9997862
+0.99996495
+0.99051267
+0.013955284
+0.008114705
+0.9890587
+0.00076283637
+0.00093165156
+0.008114705
+0.00039583017
+0.99994016
+0.99527174
+0.00078249123
+0.99918026
+0.9999832
+0.99998736
+0.00040811044
+0.99927515
+0.99932885
+0.99997354
+0.9999639
+0.00047131904
+0.9999701
+0.9998312
+0.00086311874
+0.9991503
+0.99051243
+0.98975986
+0.9990392
+0.9992411
+0.99980205
+0.9998617
+0.001503084
+0.0047280774
+0.999936
+0.99997354
+0.0008239167
+0.98955053
+0.99980205
+0.00040811044
+0.9999832
+0.9990392
+0.0006919931
+0.99998736
+0.9999832
+0.99998736
+0.008151155
+0.98955053
+0.9999341
+0.9999013
+0.99998736
+0.9999639
+0.99997354
+0.99980205
+0.9998617
+0.0009514644
+0.9998617
+0.99997354
+0.99998736
+0.99918026
+0.00040811044
+0.99982506
+0.9998437
+0.9943492
+0.9991503
+0.00046149982
+0.9990392
+0.009360342
+0.016082935
+0.99998736
+0.9999299
+0.9998312
+0.00093165156
+0.0003778439
+0.9991503
+0.9999639
+0.9991503
+0.009167032
+0.0007474052
+0.9990822
+0.0007991346
+0.99918026
+0.99478984
+0.98955053
+0.99982506
+0.001503084
+0.99998736
+0.0011414601
+0.9967257
+0.99997354
+0.99998736
+0.99998736
+0.99997354
+0.9998617
+0.99051243
+0.9999832
+0.0013293574
+0.0011414601
+0.9999207
+0.0013939476
+0.00039583017
+0.98955053
+0.99478984
+0.99985075
+0.9991503
+0.99998736
+0.98955053
+0.9992411
+0.00034274196
+0.99994016
+0.999811
+0.99478984
+0.99437463
+0.99998844
+0.9998312
+0.00093165156
+0.98975986
+0.001503084
+0.99997354
+0.9999324
+0.99998736
+0.9999614
+0.9990392
+0.0013293574
+0.00086311874
+0.99996495
+0.9999207
+0.9991503
+0.9999126
+0.99527174
+0.0013293574
+0.99994016
+0.999936
+0.99996805
+0.9999708
+0.9999877
+0.9999832
+0.99996364
+0.9999888
+0.99998605
+0.99998367
+0.9999877
+0.99996483
+0.9999888
+0.9999678
+0.9999852
+0.999967
+0.9999434
+0.9999678
+0.99996483
+0.99998605
+0.9999708
+0.99996483
+0.9999639
+0.9999888
+0.99998736
+0.99998724
+0.9999678
+0.99996364
+0.9999815
+0.99996483
+0.999938
+0.99996805
+0.9999851
+0.9999331
+0.99992275
+0.999938
+0.9999602
+0.99998605
+0.99998975
+0.9999678
+0.99996483
+0.9999877
+0.9999639
+0.9999888
+0.99998605
+0.99998975
+0.99998605
+0.9999685
+0.9999815
+0.9999864
+0.9999864
+0.9999888
+0.9999888
+0.99996483
+0.99998605
+0.99992275
+0.99998736
+0.99998724
+0.9999864
+0.999967
+0.99998605
+0.99998903
+0.99998724
+0.99996364
+0.9999708
+0.9999888
+0.9999708
+0.999984
+0.9999708
+0.9999602
+0.99996805
+0.99998605
+0.99998844
+0.9999888
+0.9999877
+0.99998605
+0.99998724
+0.9999851
+0.99993765
+0.9999851
+0.99998903
+0.999967
+6.9338246e-05
+0.9999831
+0.9999877
+0.99996483
+0.99996483
+1.618272e-05
+0.9999815
+0.9999639
+0.9999708
+0.999967
+0.99998474
+0.9999877
+0.99996805
+0.9999434
+0.99998724
+0.9999602
+0.9999888
+0.9999708
+0.9999851
+0.99996805
+0.99998367
+0.9999877
+0.99998367
+0.9999434
+0.9999708
+0.99996483
+0.99998605
+0.99992275
+0.9999434
+0.9999685
+5.9588056e-05
+0.999938
+0.9999815
+0.999967
+0.9999678
+0.99996483
+0.99996877
+0.9999852
+0.9999602
+0.99998903
+0.99992275
+0.9999714
+0.99992275
+0.99998546
+0.9999317
+0.99996483
+0.9999317
+0.99998367
+0.9999602
+0.9999888
+0.9999888
+0.9999888
+0.99996483
+0.99998724
+0.00013585434
+0.9999317
+0.9999299
+0.9999678
+0.999938
+0.9999831
+0.9999685
+0.9999317
+0.9999864
+0.99998605
+0.99998367
+0.9999708
+0.9999602
+0.99998605
+0.9999851
+0.9999602
+0.9999877
+0.99998736
+0.99998736
+0.99998903
+0.99998367
+0.0001542339
+0.9999678
+0.99996364
+0.9999678
+0.99996483
+3.2848795e-05
+0.9999815
+0.9999602
+0.9999888
+0.99999
+0.9999852
+0.9999639
+0.9999877
+0.99996805
+0.9999602
+0.9999888
+0.9999602
+0.9999888
+0.99998546
+0.00017812874
+0.9999888
+0.99998975
+0.99996364
+0.9999602
+0.9999815
+0.9999888
+0.9999888
+0.99998975
+0.9999393
+0.9999877
+0.99996483
+0.9999602
+5.9588056e-05
+0.00083521125
+3.2848795e-05
+0.99998367
+0.99996555
+0.00035159392
+0.9999852
+0.99998903
+0.9999602
+0.999984
+0.99998796
+0.9999877
+0.9999678
+0.0015203392
+0.99996555
+0.9999602
+0.99998796
+0.99998844
+0.00017812874
+0.99998903
+0.99998903
+0.99998796
+0.99994457
+0.9999678
+3.793864e-05
+3.0411753e-05
+0.99996805
+0.004148995
+0.99998903
+0.9999815
+5.9588056e-05
+5.1143885e-05
+0.9999852
+0.99998796
+3.689701e-05
+0.99999
+0.00013585434
+0.0007576517
+0.99998534
+0.99996555
+0.9999393
+0.99993896
+0.9999639
+0.00032551744
+0.99998903
+0.99996555
+0.99996555
+0.99996877
+0.99996877
+0.0001542339
+0.99998903
+0.99994457
+0.99999
+0.99998367
+0.9999815
+0.9999393
+0.0001542339
+0.9999331
+0.9999602
+6.9338246e-05
+0.99996805
+0.99999
+3.689701e-05
+0.9999888
+1.618272e-05
+0.99998903
+0.00035159392
+0.99998736
+0.9999851
+0.99998796
+1.8690242e-05
+0.99998903
+0.9999685
+0.99998903
+0.00016491521
+0.9988481
+1.8690242e-05
+1.8300698e-05
+0.99996483
+0.99996555
+0.00013585434
+0.99998903
+0.99996555
+0.999984
+3.0411753e-05
+0.99993765
+0.99998796
+3.793864e-05
+0.99993896
+0.99998796
+0.99996877
+0.99998796
+0.99998796
+0.0001542339
+3.2848795e-05
+0.99996877
+0.999984
+7.4894415e-05
+0.99992275
+0.00017812874
+0.99996805
+0.9999888
+0.0007576517
+0.99996555
+1.8690242e-05
+0.9985933
+0.99996877
+3.793864e-05
+0.00013585434
+6.8820795e-05
+0.99996877
+0.99996877
+0.00017812874
+0.99998677
+1.8300698e-05
+0.99998546
+0.99998903
+0.99998677
+0.9999331
+0.9999331
+0.9999331
+0.9988721
+0.9917278
+0.9999393
+0.9999864
+0.99996805
+0.99998534
+0.0001542339
+0.9999393
+0.99998903
+0.99996877
+0.00035159392
+0.99998546
+0.9999815
+1.618272e-05
+0.99996555
+5.223249e-05
+0.00014279263
+0.99998903
+0.99998796
+0.0023245455
+0.99996555
+0.99998903
+0.9999331
+3.793864e-05
+0.00035159392
+0.99996555
+3.793864e-05
+0.9999331
+0.9912554
+0.00017812874
+0.9999331
+0.00013585434
+0.99996483
+0.99998796
+0.99998796
+0.99996877
+6.8820795e-05
+0.9999714
+1.8300698e-05
+0.00014279263
+0.9999888
+0.99996877
+0.9999685
+0.99998724
+3.5123998e-05
+6.9338246e-05
+3.689701e-05
+0.004572132
+0.99993896
+0.9999714
+0.9999393
+0.99998796
+0.0036705781
+0.9912554
+0.99998903
+0.99996555
+0.004045122
+1.8690242e-05
+0.00032551744
+0.999984
+0.9999685
+0.99998546
+7.4894415e-05
+0.00032551744
+0.00017812874
+3.793864e-05
+0.99999
+0.99998796
+0.00010311027
+0.9999602
+0.99998903
+0.99998975
+3.5123998e-05
+0.99996555
+1.8300698e-05
+3.2848795e-05
+0.99878174
+0.00013585434
+0.00013585434
+0.00016491521
+1.8300698e-05
+0.99996877
+0.00013585434
+0.99996877
+0.0001542339
+0.99996555
+1.618272e-05
+0.9999685
+0.0001542339
+0.99998605
+0.99998534
+0.999984
+0.0016758427
+0.99998546
+0.99996364
+0.99998534
+1.8690242e-05
+0.99998546
+0.9999685
+0.0009444215
+0.9999299
+0.004045122
+6.9338246e-05
+1.8690242e-05
+0.00035159392
+0.99996877
+5.9588056e-05
+6.8820795e-05
+0.99998534
+3.2848795e-05
+0.0017189811
+1.8690242e-05
+0.99999
+0.9999678
+0.99993896
+0.00010311027
+0.99996555
+0.9999888
+3.2848795e-05
+0.00083521125
+0.9999685
+0.00013585434
+0.999984
+0.99998903
+6.8820795e-05
+6.8820795e-05
+0.00032551744
+0.9999714
+0.00035159392
+0.00016491521
+0.00016491521
+3.793864e-05
+0.99998546
+1.8690242e-05
+0.99996877
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/examples/src/main/resources/ml/mnist_tf_model/saved_model.pb
----------------------------------------------------------------------
diff --git a/examples/src/main/resources/ml/mnist_tf_model/saved_model.pb 
b/examples/src/main/resources/ml/mnist_tf_model/saved_model.pb
deleted file mode 100644
index 4d36671..0000000
Binary files a/examples/src/main/resources/ml/mnist_tf_model/saved_model.pb and 
/dev/null differ

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/examples/src/main/resources/ml/mnist_tf_model/variables/variables.data-00000-of-00001
----------------------------------------------------------------------
diff --git 
a/examples/src/main/resources/ml/mnist_tf_model/variables/variables.data-00000-of-00001
 
b/examples/src/main/resources/ml/mnist_tf_model/variables/variables.data-00000-of-00001
deleted file mode 100644
index a65398f..0000000
Binary files 
a/examples/src/main/resources/ml/mnist_tf_model/variables/variables.data-00000-of-00001
 and /dev/null differ

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/examples/src/main/resources/ml/mnist_tf_model/variables/variables.index
----------------------------------------------------------------------
diff --git 
a/examples/src/main/resources/ml/mnist_tf_model/variables/variables.index 
b/examples/src/main/resources/ml/mnist_tf_model/variables/variables.index
deleted file mode 100644
index 221dd2d..0000000
Binary files 
a/examples/src/main/resources/ml/mnist_tf_model/variables/variables.index and 
/dev/null differ

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/examples/src/main/resources/models/mnist_tf_model/saved_model.pb
----------------------------------------------------------------------
diff --git a/examples/src/main/resources/models/mnist_tf_model/saved_model.pb 
b/examples/src/main/resources/models/mnist_tf_model/saved_model.pb
new file mode 100644
index 0000000..4d36671
Binary files /dev/null and 
b/examples/src/main/resources/models/mnist_tf_model/saved_model.pb differ

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/examples/src/main/resources/models/mnist_tf_model/variables/variables.data-00000-of-00001
----------------------------------------------------------------------
diff --git 
a/examples/src/main/resources/models/mnist_tf_model/variables/variables.data-00000-of-00001
 
b/examples/src/main/resources/models/mnist_tf_model/variables/variables.data-00000-of-00001
new file mode 100644
index 0000000..a65398f
Binary files /dev/null and 
b/examples/src/main/resources/models/mnist_tf_model/variables/variables.data-00000-of-00001
 differ

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/examples/src/main/resources/models/mnist_tf_model/variables/variables.index
----------------------------------------------------------------------
diff --git 
a/examples/src/main/resources/models/mnist_tf_model/variables/variables.index 
b/examples/src/main/resources/models/mnist_tf_model/variables/variables.index
new file mode 100644
index 0000000..221dd2d
Binary files /dev/null and 
b/examples/src/main/resources/models/mnist_tf_model/variables/variables.index 
differ

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/examples/src/main/resources/models/xgboost/agaricus-model.txt
----------------------------------------------------------------------
diff --git a/examples/src/main/resources/models/xgboost/agaricus-model.txt 
b/examples/src/main/resources/models/xgboost/agaricus-model.txt
new file mode 100644
index 0000000..4bf76d6
--- /dev/null
+++ b/examples/src/main/resources/models/xgboost/agaricus-model.txt
@@ -0,0 +1,714 @@
+booster[0]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f56<-9.53674e-07] yes=3,no=4,missing=3
+               3:[f60<-9.53674e-07] yes=7,no=8,missing=7
+                       7:[f23<-9.53674e-07] yes=13,no=14,missing=13
+                               13:[f24<-9.53674e-07] yes=19,no=20,missing=19
+                                       19:leaf=1.99735
+                                       20:leaf=-1.8
+                               14:leaf=-1.80952
+                       8:leaf=-1.95062
+               4:[f21<-9.53674e-07] yes=9,no=10,missing=9
+                       9:leaf=1.77778
+                       10:leaf=-1.98104
+       2:[f109<-9.53674e-07] yes=5,no=6,missing=5
+               5:[f67<-9.53674e-07] yes=11,no=12,missing=11
+                       11:[f8<-9.53674e-07] yes=15,no=16,missing=15
+                               15:leaf=-1.99117
+                               16:leaf=1
+                       12:[f39<-9.53674e-07] yes=17,no=18,missing=17
+                               17:leaf=1.77143
+                               18:leaf=-1.5
+               6:leaf=1.85965
+booster[1]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f21<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=1.13207
+               4:[f27<-9.53674e-07] yes=7,no=8,missing=7
+                       7:[f30<-9.53674e-07] yes=11,no=12,missing=11
+                               11:leaf=-1.12641
+                               12:leaf=1.08392
+                       8:leaf=1.09118
+       2:[f109<-9.53674e-07] yes=5,no=6,missing=5
+               5:[f67<-9.53674e-07] yes=9,no=10,missing=9
+                       9:[f39<-9.53674e-07] yes=13,no=14,missing=13
+                               13:[f21<-9.53674e-07] yes=17,no=18,missing=17
+                                       17:leaf=-1.06692
+                                       18:leaf=2.08
+                               14:leaf=-1.13236
+                       10:[f39<-9.53674e-07] yes=15,no=16,missing=15
+                               15:leaf=0.928896
+                               16:leaf=-0.784694
+               6:leaf=0.994744
+booster[2]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f21<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=1.03409
+               4:[f27<-9.53674e-07] yes=7,no=8,missing=7
+                       7:[f30<-9.53674e-07] yes=11,no=12,missing=11
+                               11:leaf=-1.00925
+                               12:leaf=0.934041
+                       8:leaf=0.947964
+       2:[f109<-9.53674e-07] yes=5,no=6,missing=5
+               5:[f39<-9.53674e-07] yes=9,no=10,missing=9
+                       9:[f112<-9.53674e-07] yes=13,no=14,missing=13
+                               13:leaf=-0.862367
+                               14:[f79<-9.53674e-07] yes=15,no=16,missing=15
+                                       15:leaf=0.996309
+                                       16:leaf=-0.217869
+                       10:leaf=-1.03467
+               6:leaf=0.773973
+booster[3]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f56<-9.53674e-07] yes=3,no=4,missing=3
+               3:[f60<-9.53674e-07] yes=7,no=8,missing=7
+                       7:[f36<-9.53674e-07] yes=11,no=12,missing=11
+                               11:[f21<-9.53674e-07] yes=15,no=16,missing=15
+                                       15:leaf=0.535599
+                                       16:leaf=-0.591832
+                               12:leaf=0.99398
+                       8:leaf=-0.731796
+               4:leaf=-0.74401
+       2:[f109<-9.53674e-07] yes=5,no=6,missing=5
+               5:[f67<-9.53674e-07] yes=9,no=10,missing=9
+                       9:[f115<-9.53674e-07] yes=13,no=14,missing=13
+                               13:leaf=-0.991027
+                               14:[f86<-9.53674e-07] yes=17,no=18,missing=17
+                                       17:leaf=-0.71378
+                                       18:leaf=-0.010833
+                       10:leaf=0.382551
+               6:leaf=0.587063
+booster[4]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f21<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=0.949695
+               4:[f27<-9.53674e-07] yes=7,no=8,missing=7
+                       7:[f30<-9.53674e-07] yes=13,no=14,missing=13
+                               13:leaf=-0.846263
+                               14:leaf=0.571051
+                       8:leaf=0.604424
+       2:[f39<-9.53674e-07] yes=5,no=6,missing=5
+               5:[f7<-9.53674e-07] yes=9,no=10,missing=9
+                       9:leaf=0.359876
+                       10:leaf=-0.0906721
+               6:[f1<-9.53674e-07] yes=11,no=12,missing=11
+                       11:leaf=-0.902494
+                       12:leaf=-0.222349
+booster[5]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f21<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=0.866121
+               4:[f56<-9.53674e-07] yes=7,no=8,missing=7
+                       7:[f10<-9.53674e-07] yes=11,no=12,missing=11
+                               11:leaf=-0.172918
+                               12:leaf=0.444059
+                       8:leaf=-0.581706
+       2:[f109<-9.53674e-07] yes=5,no=6,missing=5
+               5:[f39<-9.53674e-07] yes=9,no=10,missing=9
+                       9:[f65<-9.53674e-07] yes=13,no=14,missing=13
+                               13:leaf=0.314289
+                               14:leaf=-0.137217
+                       10:leaf=-0.87866
+               6:leaf=0.593857
+booster[6]:
+0:[f64<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f39<-9.53674e-07] yes=3,no=4,missing=3
+               3:[f21<-9.53674e-07] yes=5,no=6,missing=5
+                       5:leaf=-0.16553
+                       6:leaf=0.424994
+               4:[f118<-9.53674e-07] yes=7,no=8,missing=7
+                       7:leaf=-0.662592
+                       8:leaf=0.10184
+       2:leaf=0.647963
+booster[7]:
+0:[f27<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f39<-9.53674e-07] yes=3,no=4,missing=3
+               3:[f112<-9.53674e-07] yes=5,no=6,missing=5
+                       5:leaf=-0.205397
+                       6:[f55<-9.53674e-07] yes=9,no=10,missing=9
+                               9:leaf=0.531323
+                               10:leaf=0.0411505
+               4:[f95<-9.53674e-07] yes=7,no=8,missing=7
+                       7:leaf=0.0893909
+                       8:leaf=-0.688257
+       2:leaf=0.62192
+booster[8]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f21<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=0.559472
+               4:leaf=0.047577
+       2:[f21<-9.53674e-07] yes=5,no=6,missing=5
+               5:leaf=-0.522063
+               6:leaf=0.185313
+booster[9]:
+0:[f106<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f36<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=-0.106198
+               4:[f29<-9.53674e-07] yes=5,no=6,missing=5
+                       5:leaf=0.451254
+                       6:leaf=0.0100806
+       2:leaf=-0.265738
+booster[10]:
+0:[f39<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f118<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=0.411374
+               4:leaf=-0.00392402
+       2:[f118<-9.53674e-07] yes=5,no=6,missing=5
+               5:leaf=-0.370329
+               6:leaf=0.106229
+booster[11]:
+0:[f126<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f21<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=-0.244834
+               4:leaf=0.393425
+       2:leaf=-0.191846
+booster[12]:
+0:[f65<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.281915
+       2:[f126<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=0.0457934
+               4:leaf=-0.335547
+booster[13]:
+0:[f39<-9.53674e-07] yes=1,no=2,missing=1
+       1:[f55<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=0.298848
+               4:leaf=-0.0234579
+       2:leaf=-0.211675
+booster[14]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.180838
+       2:[f21<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=-0.28038
+               4:leaf=0.0867539
+booster[15]:
+0:[f39<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.123414
+       2:leaf=-0.136942
+booster[16]:
+0:[f36<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.154724
+       2:[f118<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=-0.17891
+               4:leaf=0.28564
+booster[17]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.1202
+       2:leaf=-0.113537
+booster[18]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0946849
+       2:leaf=0.147314
+booster[19]:
+0:[f55<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.128399
+       2:leaf=0.117783
+booster[20]:
+0:[f36<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.135164
+       2:[f55<-9.53674e-07] yes=3,no=4,missing=3
+               3:leaf=-0.042949
+               4:leaf=0.173579
+booster[21]:
+0:[f39<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0957448
+       2:leaf=-0.104156
+booster[22]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0925588
+       2:leaf=-0.0798059
+booster[23]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0830908
+       2:leaf=0.126943
+booster[24]:
+0:[f126<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0823832
+       2:leaf=-0.0899369
+booster[25]:
+0:[f3<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0589036
+       2:leaf=-0.0851568
+booster[26]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0859156
+       2:leaf=-0.0815898
+booster[27]:
+0:[f21<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0637587
+       2:leaf=-0.048542
+booster[28]:
+0:[f55<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.069489
+       2:leaf=0.058072
+booster[29]:
+0:[f36<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.149849
+       2:leaf=0.0984096
+booster[30]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0688469
+       2:leaf=0.0689056
+booster[31]:
+0:[f55<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.071993
+       2:leaf=0.0544265
+booster[32]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0686437
+       2:leaf=-0.061108
+booster[33]:
+0:[f39<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0522195
+       2:leaf=-0.0544709
+booster[34]:
+0:[f126<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0445775
+       2:leaf=-0.0612543
+booster[35]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0370941
+       2:leaf=0.0414116
+booster[36]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0491957
+       2:leaf=-0.0374184
+booster[37]:
+0:[f55<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0428276
+       2:leaf=0.0362258
+booster[38]:
+0:[f21<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.038428
+       2:leaf=-0.0331781
+booster[39]:
+0:[f36<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.14093
+       2:leaf=0.101744
+booster[40]:
+0:[f39<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0443167
+       2:leaf=-0.0668384
+booster[41]:
+0:[f55<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0654174
+       2:leaf=0.0401212
+booster[42]:
+0:[f118<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0426251
+       2:leaf=-0.0430745
+booster[43]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0315924
+       2:leaf=0.0413181
+booster[44]:
+0:[f55<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.037716
+       2:leaf=0.0316046
+booster[45]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0384603
+       2:leaf=-0.031591
+booster[46]:
+0:[f9<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0264121
+       2:leaf=0.0318885
+booster[47]:
+0:[f39<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0258388
+       2:leaf=-0.0263959
+booster[48]:
+0:[f118<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0220629
+       2:leaf=-0.0169775
+booster[49]:
+0:[f55<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0254499
+       2:leaf=0.0207041
+booster[50]:
+0:[f126<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.022765
+       2:leaf=-0.0334065
+booster[51]:
+0:[f21<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.022757
+       2:leaf=-0.0227902
+booster[52]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0265489
+       2:leaf=-0.0199871
+booster[53]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0149867
+       2:leaf=0.022471
+booster[54]:
+0:[f55<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0175078
+       2:leaf=0.0157137
+booster[55]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0182503
+       2:leaf=-0.0143524
+booster[56]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0115217
+       2:leaf=0.0166359
+booster[57]:
+0:[f51<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0134613
+       2:leaf=-0.0116378
+booster[58]:
+0:[f9<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.00981541
+       2:leaf=0.0115454
+booster[59]:
+0:[f55<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0116732
+       2:leaf=0.00925633
+booster[60]:
+0:[f4<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.00879889
+       2:leaf=-0.0122642
+booster[61]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0105853
+       2:leaf=-0.00918858
+booster[62]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.00988643
+       2:leaf=0.0133116
+booster[63]:
+0:[f51<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.00922858
+       2:leaf=-0.00796718
+booster[64]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.00674803
+       2:leaf=0.00923198
+booster[65]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.00946677
+       2:leaf=-0.00611888
+booster[66]:
+0:[f21<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.00809434
+       2:leaf=-0.00524561
+booster[67]:
+0:[f51<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0058383
+       2:leaf=-0.0047337
+booster[68]:
+0:[f9<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.00516364
+       2:leaf=0.00612514
+booster[69]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.00393965
+       2:leaf=0.0055112
+booster[70]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0062736
+       2:leaf=-0.00406246
+booster[71]:
+0:[f39<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.00387397
+       2:leaf=-0.00335857
+booster[72]:
+0:[f51<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.00378672
+       2:leaf=-0.00363264
+booster[73]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.00348857
+       2:leaf=0.00454308
+booster[74]:
+0:[f51<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.00310136
+       2:leaf=-0.00269635
+booster[75]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.00232427
+       2:leaf=0.00316355
+booster[76]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0033131
+       2:leaf=-0.00214357
+booster[77]:
+0:[f9<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.00198535
+       2:leaf=0.00270199
+booster[78]:
+0:[f51<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.00189522
+       2:leaf=-0.00163941
+booster[79]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0018533
+       2:leaf=0.00251417
+booster[80]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.00213544
+       2:leaf=-0.00134465
+booster[81]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.0010731
+       2:leaf=0.0017787
+booster[82]:
+0:[f51<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.00170681
+       2:leaf=-0.00144721
+booster[83]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.000965197
+       2:leaf=0.00137187
+booster[84]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.0014236
+       2:leaf=-0.000908222
+booster[85]:
+0:[f9<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.000799637
+       2:leaf=0.00110198
+booster[86]:
+0:[f51<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.000950752
+       2:leaf=-0.000839873
+booster[87]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.000841428
+       2:leaf=0.0011364
+booster[88]:
+0:[f29<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.000900093
+       2:leaf=-0.00055321
+booster[89]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.000479465
+       2:leaf=0.000775463
+booster[90]:
+0:[f51<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.000824745
+       2:leaf=-0.000703525
+booster[91]:
+0:[f112<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=-0.000446206
+       2:leaf=0.000627391
+booster[92]:
+0:[f51<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.000531432
+       2:leaf=-0.000464763
+booster[93]:
+0:[f39<-9.53674e-07] yes=1,no=2,missing=1
+       1:leaf=0.000457717
+       2:leaf=-0.000483533
+booster[94]:
+0:leaf=-8.69481e-06
+booster[95]:
+0:leaf=-2.22842e-06
+booster[96]:
+0:leaf=-7.41984e-07
+booster[97]:
+0:leaf=6.03395e-07
+booster[98]:
+0:leaf=-2.45552e-08
+booster[99]:
+0:leaf=-2.45552e-08
+booster[100]:
+0:leaf=-2.45552e-08
+booster[101]:
+0:leaf=-2.45552e-08
+booster[102]:
+0:leaf=-2.45552e-08
+booster[103]:
+0:leaf=-2.45552e-08
+booster[104]:
+0:leaf=-2.45552e-08
+booster[105]:
+0:leaf=-2.45552e-08
+booster[106]:
+0:leaf=-2.45552e-08
+booster[107]:
+0:leaf=-2.45552e-08
+booster[108]:
+0:leaf=-2.45552e-08
+booster[109]:
+0:leaf=-2.45552e-08
+booster[110]:
+0:leaf=-2.45552e-08
+booster[111]:
+0:leaf=-2.45552e-08
+booster[112]:
+0:leaf=-2.45552e-08
+booster[113]:
+0:leaf=-2.45552e-08
+booster[114]:
+0:leaf=-2.45552e-08
+booster[115]:
+0:leaf=-2.45552e-08
+booster[116]:
+0:leaf=-2.45552e-08
+booster[117]:
+0:leaf=-2.45552e-08
+booster[118]:
+0:leaf=-2.45552e-08
+booster[119]:
+0:leaf=-2.45552e-08
+booster[120]:
+0:leaf=-2.45552e-08
+booster[121]:
+0:leaf=-2.45552e-08
+booster[122]:
+0:leaf=-2.45552e-08
+booster[123]:
+0:leaf=-2.45552e-08
+booster[124]:
+0:leaf=-2.45552e-08
+booster[125]:
+0:leaf=-2.45552e-08
+booster[126]:
+0:leaf=-2.45552e-08
+booster[127]:
+0:leaf=-2.45552e-08
+booster[128]:
+0:leaf=-2.45552e-08
+booster[129]:
+0:leaf=-2.45552e-08
+booster[130]:
+0:leaf=-2.45552e-08
+booster[131]:
+0:leaf=-2.45552e-08
+booster[132]:
+0:leaf=-2.45552e-08
+booster[133]:
+0:leaf=-2.45552e-08
+booster[134]:
+0:leaf=-2.45552e-08
+booster[135]:
+0:leaf=-2.45552e-08
+booster[136]:
+0:leaf=-2.45552e-08
+booster[137]:
+0:leaf=-2.45552e-08
+booster[138]:
+0:leaf=-2.45552e-08
+booster[139]:
+0:leaf=-2.45552e-08
+booster[140]:
+0:leaf=-2.45552e-08
+booster[141]:
+0:leaf=-2.45552e-08
+booster[142]:
+0:leaf=-2.45552e-08
+booster[143]:
+0:leaf=-2.45552e-08
+booster[144]:
+0:leaf=-2.45552e-08
+booster[145]:
+0:leaf=-2.45552e-08
+booster[146]:
+0:leaf=-2.45552e-08
+booster[147]:
+0:leaf=-2.45552e-08
+booster[148]:
+0:leaf=-2.45552e-08
+booster[149]:
+0:leaf=-2.45552e-08
+booster[150]:
+0:leaf=-2.45552e-08
+booster[151]:
+0:leaf=-2.45552e-08
+booster[152]:
+0:leaf=-2.45552e-08
+booster[153]:
+0:leaf=-2.45552e-08
+booster[154]:
+0:leaf=-2.45552e-08
+booster[155]:
+0:leaf=-2.45552e-08
+booster[156]:
+0:leaf=-2.45552e-08
+booster[157]:
+0:leaf=-2.45552e-08
+booster[158]:
+0:leaf=-2.45552e-08
+booster[159]:
+0:leaf=-2.45552e-08
+booster[160]:
+0:leaf=-2.45552e-08
+booster[161]:
+0:leaf=-2.45552e-08
+booster[162]:
+0:leaf=-2.45552e-08
+booster[163]:
+0:leaf=-2.45552e-08
+booster[164]:
+0:leaf=-2.45552e-08
+booster[165]:
+0:leaf=-2.45552e-08
+booster[166]:
+0:leaf=-2.45552e-08
+booster[167]:
+0:leaf=-2.45552e-08
+booster[168]:
+0:leaf=-2.45552e-08
+booster[169]:
+0:leaf=-2.45552e-08
+booster[170]:
+0:leaf=-2.45552e-08
+booster[171]:
+0:leaf=-2.45552e-08
+booster[172]:
+0:leaf=-2.45552e-08
+booster[173]:
+0:leaf=-2.45552e-08
+booster[174]:
+0:leaf=-2.45552e-08
+booster[175]:
+0:leaf=-2.45552e-08
+booster[176]:
+0:leaf=-2.45552e-08
+booster[177]:
+0:leaf=-2.45552e-08
+booster[178]:
+0:leaf=-2.45552e-08
+booster[179]:
+0:leaf=-2.45552e-08
+booster[180]:
+0:leaf=-2.45552e-08
+booster[181]:
+0:leaf=-2.45552e-08
+booster[182]:
+0:leaf=-2.45552e-08
+booster[183]:
+0:leaf=-2.45552e-08
+booster[184]:
+0:leaf=-2.45552e-08
+booster[185]:
+0:leaf=-2.45552e-08
+booster[186]:
+0:leaf=-2.45552e-08
+booster[187]:
+0:leaf=-2.45552e-08
+booster[188]:
+0:leaf=-2.45552e-08
+booster[189]:
+0:leaf=-2.45552e-08
+booster[190]:
+0:leaf=-2.45552e-08
+booster[191]:
+0:leaf=-2.45552e-08
+booster[192]:
+0:leaf=-2.45552e-08
+booster[193]:
+0:leaf=-2.45552e-08
+booster[194]:
+0:leaf=-2.45552e-08
+booster[195]:
+0:leaf=-2.45552e-08
+booster[196]:
+0:leaf=-2.45552e-08
+booster[197]:
+0:leaf=-2.45552e-08
+booster[198]:
+0:leaf=-2.45552e-08
+booster[199]:
+0:leaf=-2.45552e-08
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/src/main/java/org/apache/ignite/ml/inference/builder/IgniteDistributedInfModelBuilder.java
----------------------------------------------------------------------
diff --git 
a/modules/ml/src/main/java/org/apache/ignite/ml/inference/builder/IgniteDistributedInfModelBuilder.java
 
b/modules/ml/src/main/java/org/apache/ignite/ml/inference/builder/IgniteDistributedInfModelBuilder.java
index 7a176e0..2c6d917 100644
--- 
a/modules/ml/src/main/java/org/apache/ignite/ml/inference/builder/IgniteDistributedInfModelBuilder.java
+++ 
b/modules/ml/src/main/java/org/apache/ignite/ml/inference/builder/IgniteDistributedInfModelBuilder.java
@@ -176,17 +176,18 @@ public class IgniteDistributedInfModelBuilder implements 
AsyncInfModelBuilder {
             if (!running.get())
                 throw new IllegalStateException("Inference model is not 
running");
 
-            reqQueue.put(input);
+            CompletableFuture<O> fut = new CompletableFuture<>();
 
             try {
-                CompletableFuture<O> fut = new CompletableFuture<>();
                 futures.put(fut);
-                return fut;
             }
             catch (InterruptedException e) {
                 close(); // In case of exception in the above code the model 
state becomes invalid and model is closed.
                 throw new RuntimeException(e);
             }
+
+            reqQueue.put(input);
+            return fut;
         }
 
         /**

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/xgboost-model-parser/pom.xml
----------------------------------------------------------------------
diff --git a/modules/ml/xgboost-model-parser/pom.xml 
b/modules/ml/xgboost-model-parser/pom.xml
new file mode 100644
index 0000000..d70ae0b
--- /dev/null
+++ b/modules/ml/xgboost-model-parser/pom.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<!--
+    POM file.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0";
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+    <modelVersion>4.0.0</modelVersion>
+
+    <properties>
+        <antlr.version>4.7.1</antlr.version>
+    </properties>
+
+    <parent>
+        <artifactId>ignite-parent</artifactId>
+        <groupId>org.apache.ignite</groupId>
+        <version>1</version>
+        <relativePath>../../../parent</relativePath>
+    </parent>
+
+    <artifactId>ignite-ml-xgboost-model-parser</artifactId>
+    <version>2.7.0-SNAPSHOT</version>
+    <url>http://ignite.apache.org</url>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.ignite</groupId>
+            <artifactId>ignite-ml</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.antlr</groupId>
+            <artifactId>antlr4-runtime</artifactId>
+            <version>${antlr.version}</version>
+        </dependency>
+    </dependencies>
+
+</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/MapBasedXGObject.java
----------------------------------------------------------------------
diff --git 
a/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/MapBasedXGObject.java
 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/MapBasedXGObject.java
new file mode 100644
index 0000000..20bdf1f
--- /dev/null
+++ 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/MapBasedXGObject.java
@@ -0,0 +1,61 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ml.xgboost;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/** Map based implementation of {@link XGObject}. */
+public class MapBasedXGObject implements XGObject {
+    /** */
+    private static final long serialVersionUID = 4378979710350902592L;
+
+    /** Key-value map. */
+    private final Map<String, Double> map;
+
+    /**
+     * Constructs a new instance of map based {@link XGObject} with empty map.
+     */
+    public MapBasedXGObject() {
+        this(new HashMap<>());
+    }
+
+    /**
+     * Constructs a new instance of map based {@link XGObject} with the 
specified map.
+     *
+     * @param map Map.
+     */
+    public MapBasedXGObject(Map<String, Double> map) {
+        this.map = map;
+    }
+
+    /** {@inheritDoc} */
+    @Override public Double getFeature(String featureName) {
+        return map.get(featureName);
+    }
+
+    /**
+     * Puts feature value with the specified feature name.
+     *
+     * @param featureName Feature name.
+     * @param val Feature value.
+     */
+    public void put(String featureName, Double val) {
+        map.put(featureName, val);
+    }
+}

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGLeafNode.java
----------------------------------------------------------------------
diff --git 
a/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGLeafNode.java
 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGLeafNode.java
new file mode 100644
index 0000000..da572db
--- /dev/null
+++ 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGLeafNode.java
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ml.xgboost;
+
+/** XGBoost model leaf node. */
+public class XGLeafNode implements XGNode {
+    /** Value. */
+    private final double val;
+
+    /**
+     * Constructs a new instance of leaf node.
+     *
+     * @param val Value.
+     */
+    public XGLeafNode(double val) {
+        this.val = val;
+    }
+
+    /** {@inheritDoc} */
+    @Override public double predict(XGObject obj) {
+        return val;
+    }
+}

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGModel.java
----------------------------------------------------------------------
diff --git 
a/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGModel.java
 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGModel.java
new file mode 100644
index 0000000..3ca9d54
--- /dev/null
+++ 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGModel.java
@@ -0,0 +1,53 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ml.xgboost;
+
+import java.util.List;
+import org.apache.ignite.ml.inference.InfModel;
+
+/**
+ * XGBoost model.
+ */
+public class XGModel implements InfModel<XGObject, Double> {
+    /** List of decision trees. */
+    private final List<XGNode> trees;
+
+    /**
+     * Constructs a new XGBoost model.
+     *
+     * @param trees List of XGBoost trees.
+     */
+    public XGModel(List<XGNode> trees) {
+        this.trees = trees;
+    }
+
+    /** {@inheritDoc} */
+    @Override public Double predict(XGObject obj) {
+        double res = 0;
+
+        for (XGNode tree : trees)
+            res += tree.predict(obj);
+
+        return (1.0 / (1.0 + Math.exp(-res)));
+    }
+
+    /** {@inheritDoc} */
+    @Override public void close() {
+        // Do nothing.
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGNode.java
----------------------------------------------------------------------
diff --git 
a/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGNode.java
 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGNode.java
new file mode 100644
index 0000000..f3401a7
--- /dev/null
+++ 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGNode.java
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ml.xgboost;
+
+/** XGBoost model node. */
+public interface XGNode {
+    /**
+     * Predicts label for the specified object.
+     *
+     * @param obj Object.
+     * @return Label.
+     */
+    public double predict(XGObject obj);
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGObject.java
----------------------------------------------------------------------
diff --git 
a/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGObject.java
 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGObject.java
new file mode 100644
index 0000000..408c170
--- /dev/null
+++ 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGObject.java
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ml.xgboost;
+
+import java.io.Serializable;
+
+/**
+ * Base interface for objects processed by XGBoost model.
+ */
+public interface XGObject extends Serializable {
+    /**
+     * Returns feature value by the specified name.
+     *
+     * @param featureName Feature name.
+     * @return Feature value.
+     */
+    public Double getFeature(String featureName);
+}

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGSplitNode.java
----------------------------------------------------------------------
diff --git 
a/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGSplitNode.java
 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGSplitNode.java
new file mode 100644
index 0000000..16c0ed4
--- /dev/null
+++ 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/XGSplitNode.java
@@ -0,0 +1,74 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ml.xgboost;
+
+/** XGBoost model split node. */
+public class XGSplitNode implements XGNode {
+    /** Feature name. */
+    private final String featureName;
+
+    /** Threshold. */
+    private final double threshold;
+
+    /** "Yes" child node. */
+    private XGNode yesNode;
+
+    /** "No" child node. */
+    private XGNode noNode;
+
+    /** "Missing" child node. */
+    private XGNode missingNode;
+
+    /**
+     * Constructs a new instance of XGBoost model split node.
+     *
+     * @param featureName Feature name.
+     * @param threshold Threshold.
+     */
+    public XGSplitNode(String featureName, double threshold) {
+        this.featureName = featureName;
+        this.threshold = threshold;
+    }
+
+    /** {@inheritDoc} */
+    @Override public double predict(XGObject obj) {
+        Double featureVal = obj.getFeature(featureName);
+
+        if (featureVal == null)
+            return missingNode.predict(obj);
+        else if (featureVal < threshold)
+            return yesNode.predict(obj);
+        else
+            return noNode.predict(obj);
+    }
+
+    /** */
+    public void setYesNode(XGNode yesNode) {
+        this.yesNode = yesNode;
+    }
+
+    /** */
+    public void setNoNode(XGNode noNode) {
+        this.noNode = noNode;
+    }
+
+    /** */
+    public void setMissingNode(XGNode missingNode) {
+        this.missingNode = missingNode;
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/package-info.java
----------------------------------------------------------------------
diff --git 
a/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/package-info.java
 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/package-info.java
new file mode 100644
index 0000000..ca95b1d
--- /dev/null
+++ 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * <!-- Package description. -->
+ * Base package for XGBoost model parser, correspondent DTOs and util classes.
+ */
+package org.apache.ignite.ml.xgboost;
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelBaseVisitor.java
----------------------------------------------------------------------
diff --git 
a/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelBaseVisitor.java
 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelBaseVisitor.java
new file mode 100644
index 0000000..725b3c8
--- /dev/null
+++ 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelBaseVisitor.java
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ml.xgboost.parser;
+
+import org.antlr.v4.runtime.tree.AbstractParseTreeVisitor;
+
+/**
+ * This class provides an empty implementation of {@link XGBoostModelVisitor},
+ * which can be extended to create a visitor which only needs to handle a 
subset
+ * of the available methods.
+ *
+ * @param <T> The return type of the visit operation. Use {@link Void} for
+ * operations with no return type.
+ */
+public class XGBoostModelBaseVisitor<T> extends AbstractParseTreeVisitor<T> 
implements XGBoostModelVisitor<T> {
+    /**
+     * {@inheritDoc}
+     *
+     * <p>The default implementation returns the result of calling
+     * {@link #visitChildren} on {@code ctx}.</p>
+     */
+    @Override public T visitXgValue(XGBoostModelParser.XgValueContext ctx) { 
return visitChildren(ctx); }
+
+    /**
+     * {@inheritDoc}
+     *
+     * <p>The default implementation returns the result of calling
+     * {@link #visitChildren} on {@code ctx}.</p>
+     */
+    @Override public T visitXgHeader(XGBoostModelParser.XgHeaderContext ctx) { 
return visitChildren(ctx); }
+
+    /**
+     * {@inheritDoc}
+     *
+     * <p>The default implementation returns the result of calling
+     * {@link #visitChildren} on {@code ctx}.</p>
+     */
+    @Override public T visitXgNode(XGBoostModelParser.XgNodeContext ctx) { 
return visitChildren(ctx); }
+
+    /**
+     * {@inheritDoc}
+     *
+     * <p>The default implementation returns the result of calling
+     * {@link #visitChildren} on {@code ctx}.</p>
+     */
+    @Override public T visitXgLeaf(XGBoostModelParser.XgLeafContext ctx) { 
return visitChildren(ctx); }
+
+    /**
+     * {@inheritDoc}
+     *
+     * <p>The default implementation returns the result of calling
+     * {@link #visitChildren} on {@code ctx}.</p>
+     */
+    @Override public T visitXgTree(XGBoostModelParser.XgTreeContext ctx) { 
return visitChildren(ctx); }
+
+    /**
+     * {@inheritDoc}
+     *
+     * <p>The default implementation returns the result of calling
+     * {@link #visitChildren} on {@code ctx}.</p>
+     */
+    @Override public T visitXgModel(XGBoostModelParser.XgModelContext ctx) { 
return visitChildren(ctx); }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelLexer.java
----------------------------------------------------------------------
diff --git 
a/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelLexer.java
 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelLexer.java
new file mode 100644
index 0000000..fcec81f
--- /dev/null
+++ 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelLexer.java
@@ -0,0 +1,210 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ml.xgboost.parser;
+
+import org.antlr.v4.runtime.CharStream;
+import org.antlr.v4.runtime.Lexer;
+import org.antlr.v4.runtime.RuntimeMetaData;
+import org.antlr.v4.runtime.Vocabulary;
+import org.antlr.v4.runtime.VocabularyImpl;
+import org.antlr.v4.runtime.atn.ATN;
+import org.antlr.v4.runtime.atn.ATNDeserializer;
+import org.antlr.v4.runtime.atn.LexerATNSimulator;
+import org.antlr.v4.runtime.atn.PredictionContextCache;
+import org.antlr.v4.runtime.dfa.DFA;
+
+/**
+ * XGBoost model lexer generated by ANTLR.
+ */
+@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"})
+public class XGBoostModelLexer extends Lexer {
+    /** ANTLR version checker. */
+    static {
+        RuntimeMetaData.checkVersion("4.7.1", RuntimeMetaData.VERSION);
+    }
+
+    /** Decision to DFA. */
+    protected static final DFA[] _decisionToDFA;
+
+    /** Shared context cache. */
+    protected static final PredictionContextCache _sharedContextCache = new 
PredictionContextCache();
+
+    /** */
+    public static final int
+        YES = 1, NO = 2, MISSING = 3, EQ = 4, COMMA = 5, PLUS = 6, MINUS = 7, 
DOT = 8, EXP = 9,
+        BOOSTER = 10, LBRACK = 11, RBRACK = 12, COLON = 13, LEAF = 14, INT = 
15, DOUBLE = 16,
+        STRING = 17, NEWLINE = 18, LT = 19, WS = 20;
+
+    /** Channel names. */
+    public static String[] channelNames = {
+        "DEFAULT_TOKEN_CHANNEL", "HIDDEN"
+    };
+
+    /** Mode names. */
+    public static String[] modeNames = {
+        "DEFAULT_MODE"
+    };
+
+    /** Rule names. */
+    public static final String[] ruleNames = {
+        "YES", "NO", "MISSING", "EQ", "COMMA", "PLUS", "MINUS", "DOT", "EXP",
+        "BOOSTER", "LBRACK", "RBRACK", "COLON", "LEAF", "INT", "DOUBLE", 
"STRING",
+        "NEWLINE", "LT", "WS"
+    };
+
+    /** Literal names. */
+    private static final String[] _LITERAL_NAMES = {
+        null, "'yes'", "'no'", "'missing'", "'='", "','", "'+'", "'-'", "'.'",
+        null, "'booster'", "'['", "']'", "':'", "'leaf'", null, null, null, 
null,
+        "'<'"
+    };
+
+    /** Symbolic names. */
+    private static final String[] _SYMBOLIC_NAMES = {
+        null, "YES", "NO", "MISSING", "EQ", "COMMA", "PLUS", "MINUS", "DOT", 
"EXP",
+        "BOOSTER", "LBRACK", "RBRACK", "COLON", "LEAF", "INT", "DOUBLE", 
"STRING",
+        "NEWLINE", "LT", "WS"
+    };
+
+    /** Vocabulary. */
+    public static final Vocabulary VOCABULARY = new 
VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES);
+
+    /**
+     * Token names.
+     *
+     * @deprecated Use {@link #VOCABULARY} instead.
+     */
+    @Deprecated
+    public static final String[] tokenNames;
+
+    /** */
+    static {
+        tokenNames = new String[_SYMBOLIC_NAMES.length];
+        for (int i = 0; i < tokenNames.length; i++) {
+            tokenNames[i] = VOCABULARY.getLiteralName(i);
+            if (tokenNames[i] == null) {
+                tokenNames[i] = VOCABULARY.getSymbolicName(i);
+            }
+
+            if (tokenNames[i] == null) {
+                tokenNames[i] = "<INVALID>";
+            }
+        }
+    }
+
+    /** {@inheritDoc} */
+    @Deprecated
+    @Override public String[] getTokenNames() {
+        return tokenNames;
+    }
+
+    /** {@inheritDoc} */
+    @Override public Vocabulary getVocabulary() {
+        return VOCABULARY;
+    }
+
+    /**
+     * Constructs a new instance of XGBoost model lexer.
+     *
+     * @param input Character stream.
+     */
+    public XGBoostModelLexer(CharStream input) {
+        super(input);
+        _interp = new LexerATNSimulator(this, _ATN, _decisionToDFA, 
_sharedContextCache);
+    }
+
+    /** {@inheritDoc} */
+    @Override public String getGrammarFileName() {
+        return "XGBoostModel.g4";
+    }
+
+    /** {@inheritDoc} */
+    @Override public String[] getRuleNames() {
+        return ruleNames;
+    }
+
+    /** {@inheritDoc} */
+    @Override public String getSerializedATN() {
+        return _serializedATN;
+    }
+
+    /** {@inheritDoc} */
+    @Override public String[] getChannelNames() {
+        return channelNames;
+    }
+
+    /** {@inheritDoc} */
+    @Override public String[] getModeNames() {
+        return modeNames;
+    }
+
+    /** {@inheritDoc} */
+    @Override public ATN getATN() {
+        return _ATN;
+    }
+
+    /** Serialized ATN. */
+    public static final String _serializedATN =
+        
"\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\2\26\u0083\b\1\4\2" +
+            
"\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4" +
+            
"\13\t\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22" +
+            
"\t\22\4\23\t\23\4\24\t\24\4\25\t\25\3\2\3\2\3\2\3\2\3\3\3\3\3\3\3\4\3" +
+            
"\4\3\4\3\4\3\4\3\4\3\4\3\4\3\5\3\5\3\6\3\6\3\7\3\7\3\b\3\b\3\t\3\t\3\n" +
+            
"\3\n\3\13\3\13\3\13\3\13\3\13\3\13\3\13\3\13\3\f\3\f\3\r\3\r\3\16\3\16" +
+            
"\3\17\3\17\3\17\3\17\3\17\3\20\3\20\5\20\\\n\20\3\20\6\20_\n\20\r\20\16" +
+            
"\20`\3\21\3\21\3\21\7\21f\n\21\f\21\16\21i\13\21\3\21\3\21\3\21\5\21n" +
+            
"\n\21\3\22\3\22\6\22r\n\22\r\22\16\22s\3\23\3\23\3\23\5\23y\n\23\3\24" +
+            
"\3\24\3\25\6\25~\n\25\r\25\16\25\177\3\25\3\25\2\2\26\3\3\5\4\7\5\t\6" +
+            
"\13\7\r\b\17\t\21\n\23\13\25\f\27\r\31\16\33\17\35\20\37\21!\22#\23%\24" +
+            
"\'\25)\26\3\2\b\4\2GGgg\3\2\62;\5\2C\\aac|\6\2\62;C\\aac|\4\2\f\f\17\17" +
+            
"\4\2\13\13\"\"\2\u008a\2\3\3\2\2\2\2\5\3\2\2\2\2\7\3\2\2\2\2\t\3\2\2\2" +
+            
"\2\13\3\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2\2\2\25" +
+            
"\3\2\2\2\2\27\3\2\2\2\2\31\3\2\2\2\2\33\3\2\2\2\2\35\3\2\2\2\2\37\3\2" +
+            
"\2\2\2!\3\2\2\2\2#\3\2\2\2\2%\3\2\2\2\2\'\3\2\2\2\2)\3\2\2\2\3+\3\2\2" +
+            
"\2\5/\3\2\2\2\7\62\3\2\2\2\t:\3\2\2\2\13<\3\2\2\2\r>\3\2\2\2\17@\3\2\2" +
+            
"\2\21B\3\2\2\2\23D\3\2\2\2\25F\3\2\2\2\27N\3\2\2\2\31P\3\2\2\2\33R\3\2" +
+            
"\2\2\35T\3\2\2\2\37[\3\2\2\2!b\3\2\2\2#o\3\2\2\2%x\3\2\2\2\'z\3\2\2\2" +
+            
")}\3\2\2\2+,\7{\2\2,-\7g\2\2-.\7u\2\2.\4\3\2\2\2/\60\7p\2\2\60\61\7q\2" +
+            
"\2\61\6\3\2\2\2\62\63\7o\2\2\63\64\7k\2\2\64\65\7u\2\2\65\66\7u\2\2\66" +
+            
"\67\7k\2\2\678\7p\2\289\7i\2\29\b\3\2\2\2:;\7?\2\2;\n\3\2\2\2<=\7.\2\2" +
+            
"=\f\3\2\2\2>?\7-\2\2?\16\3\2\2\2@A\7/\2\2A\20\3\2\2\2BC\7\60\2\2C\22\3" +
+            
"\2\2\2DE\t\2\2\2E\24\3\2\2\2FG\7d\2\2GH\7q\2\2HI\7q\2\2IJ\7u\2\2JK\7v" +
+            
"\2\2KL\7g\2\2LM\7t\2\2M\26\3\2\2\2NO\7]\2\2O\30\3\2\2\2PQ\7_\2\2Q\32\3" +
+            
"\2\2\2RS\7<\2\2S\34\3\2\2\2TU\7n\2\2UV\7g\2\2VW\7c\2\2WX\7h\2\2X\36\3" +
+            
"\2\2\2Y\\\5\r\7\2Z\\\5\17\b\2[Y\3\2\2\2[Z\3\2\2\2[\\\3\2\2\2\\^\3\2\2" +
+            "\2]_\t\3\2\2^]\3\2\2\2_`\3\2\2\2`^\3\2\2\2`a\3\2\2\2a 
\3\2\2\2bc\5\37" +
+            
"\20\2cg\5\21\t\2df\t\3\2\2ed\3\2\2\2fi\3\2\2\2ge\3\2\2\2gh\3\2\2\2hm\3" +
+            
"\2\2\2ig\3\2\2\2jk\5\23\n\2kl\5\37\20\2ln\3\2\2\2mj\3\2\2\2mn\3\2\2\2" +
+            
"n\"\3\2\2\2oq\t\4\2\2pr\t\5\2\2qp\3\2\2\2rs\3\2\2\2sq\3\2\2\2st\3\2\2" +
+            
"\2t$\3\2\2\2uv\7\17\2\2vy\7\f\2\2wy\t\6\2\2xu\3\2\2\2xw\3\2\2\2y&\3\2" +
+            
"\2\2z{\7>\2\2{(\3\2\2\2|~\t\7\2\2}|\3\2\2\2~\177\3\2\2\2\177}\3\2\2\2" +
+            
"\177\u0080\3\2\2\2\u0080\u0081\3\2\2\2\u0081\u0082\b\25\2\2\u0082*\3\2" +
+            "\2\2\n\2[`gmsx\177\3\b\2\2";
+
+    /** ATN. */
+    public static final ATN _ATN =
+        new ATNDeserializer().deserialize(_serializedATN.toCharArray());
+
+    /** */
+    static {
+        _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()];
+        for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) {
+            _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i);
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/4ae29fca/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelListener.java
----------------------------------------------------------------------
diff --git 
a/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelListener.java
 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelListener.java
new file mode 100644
index 0000000..c0ad15a
--- /dev/null
+++ 
b/modules/ml/xgboost-model-parser/src/main/java/org/apache/ignite/ml/xgboost/parser/XGBoostModelListener.java
@@ -0,0 +1,98 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ml.xgboost.parser;
+
+import org.antlr.v4.runtime.tree.ParseTreeListener;
+
+/**
+ * This interface defines a complete listener for a parse tree produced by
+ * {@link XGBoostModelParser}.
+ */
+public interface XGBoostModelListener extends ParseTreeListener {
+    /**
+     * Enter a parse tree produced by {@link XGBoostModelParser#xgValue}.
+     * @param ctx the parse tree
+     */
+    public void enterXgValue(XGBoostModelParser.XgValueContext ctx);
+
+    /**
+     * Exit a parse tree produced by {@link XGBoostModelParser#xgValue}.
+     * @param ctx the parse tree
+     */
+    public void exitXgValue(XGBoostModelParser.XgValueContext ctx);
+
+    /**
+     * Enter a parse tree produced by {@link XGBoostModelParser#xgHeader}.
+     * @param ctx the parse tree
+     */
+    public void enterXgHeader(XGBoostModelParser.XgHeaderContext ctx);
+
+    /**
+     * Exit a parse tree produced by {@link XGBoostModelParser#xgHeader}.
+     * @param ctx the parse tree
+     */
+    public void exitXgHeader(XGBoostModelParser.XgHeaderContext ctx);
+
+    /**
+     * Enter a parse tree produced by {@link XGBoostModelParser#xgNode}.
+     * @param ctx the parse tree
+     */
+    public void enterXgNode(XGBoostModelParser.XgNodeContext ctx);
+
+    /**
+     * Exit a parse tree produced by {@link XGBoostModelParser#xgNode}.
+     * @param ctx the parse tree
+     */
+    public void exitXgNode(XGBoostModelParser.XgNodeContext ctx);
+
+    /**
+     * Enter a parse tree produced by {@link XGBoostModelParser#xgLeaf}.
+     * @param ctx the parse tree
+     */
+    public void enterXgLeaf(XGBoostModelParser.XgLeafContext ctx);
+
+    /**
+     * Exit a parse tree produced by {@link XGBoostModelParser#xgLeaf}.
+     * @param ctx the parse tree
+     */
+    public void exitXgLeaf(XGBoostModelParser.XgLeafContext ctx);
+
+    /**
+     * Enter a parse tree produced by {@link XGBoostModelParser#xgTree}.
+     * @param ctx the parse tree
+     */
+    public void enterXgTree(XGBoostModelParser.XgTreeContext ctx);
+
+    /**
+     * Exit a parse tree produced by {@link XGBoostModelParser#xgTree}.
+     * @param ctx the parse tree
+     */
+    public void exitXgTree(XGBoostModelParser.XgTreeContext ctx);
+
+    /**
+     * Enter a parse tree produced by {@link XGBoostModelParser#xgModel}.
+     * @param ctx the parse tree
+     */
+    public void enterXgModel(XGBoostModelParser.XgModelContext ctx);
+
+    /**
+     * Exit a parse tree produced by {@link XGBoostModelParser#xgModel}.
+     * @param ctx the parse tree
+     */
+    public void exitXgModel(XGBoostModelParser.XgModelContext ctx);
+}
\ No newline at end of file

Reply via email to