http://git-wip-us.apache.org/repos/asf/flink/blob/844c874b/docs/apis/streaming/sliding-windows.svg
----------------------------------------------------------------------
diff --git a/docs/apis/streaming/sliding-windows.svg 
b/docs/apis/streaming/sliding-windows.svg
deleted file mode 100644
index 32c6bf0..0000000
--- a/docs/apis/streaming/sliding-windows.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" standalone="yes"?>
-<!--
-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.
--->
-
-<svg version="1.1" viewBox="0.0 0.0 800.0 600.0" fill="none" stroke="none" 
stroke-linecap="square" stroke-miterlimit="10" 
xmlns="http://www.w3.org/2000/svg"; 
xmlns:xlink="http://www.w3.org/1999/xlink";><clipPath id="p.0"><path d="m0 
0l800.0 0l0 600.0l-800.0 0l0 -600.0z" clip-rule="nonzero"></path></clipPath><g 
clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l800.0 0l0 
600.0l-800.0 0z" fill-rule="nonzero"></path><path fill="#000000" 
fill-opacity="0.0" d="m145.49606 485.0l509.0079 0" 
fill-rule="nonzero"></path><path stroke="#000000" stroke-width="1.0" 
stroke-linejoin="round" stroke-linecap="butt" d="m145.49606 485.0l503.0079 0" 
fill-rule="evenodd"></path><path fill="#000000" stroke="#000000" 
stroke-width="1.0" stroke-linecap="butt" d="m648.50397 486.65173l4.538086 
-1.6517334l-4.538086 -1.6517334z" fill-rule="evenodd"></path><path 
fill="#000000" fill-opacity="0.0" d="m145.49606 485.0l0 -394.99213" 
fill-rule="nonzero"></path><path stroke="#000000" stroke-width="1.0" s
 troke-linejoin="round" stroke-linecap="butt" d="m145.49606 485.0l0 -388.99213" 
fill-rule="evenodd"></path><path fill="#000000" stroke="#000000" 
stroke-width="1.0" stroke-linecap="butt" d="m147.1478 96.00787l-1.6517334 
-4.5380936l-1.6517334 4.5380936z" fill-rule="evenodd"></path><path 
fill="#000000" fill-opacity="0.0" d="m587.0 477.0l60.0 0l0 42.992126l-60.0 0z" 
fill-rule="nonzero"></path><path fill="#000000" d="m600.90625 
502.41998l0.234375 1.484375q-0.703125 0.140625 -1.265625 0.140625q-0.90625 0 
-1.40625 -0.28125q-0.5 -0.296875 -0.703125 -0.75q-0.203125 -0.46875 -0.203125 
-1.984375l0 -5.65625l-1.234375 0l0 -1.3125l1.234375 0l0 -2.4375l1.65625 -1.0l0 
3.4375l1.6875 0l0 1.3125l-1.6875 0l0 5.75q0 0.71875 0.078125 0.921875q0.09375 
0.203125 0.296875 0.328125q0.203125 0.125 0.578125 0.125q0.265625 0 0.734375 
-0.078125zm1.5426636 -10.1875l0 -1.90625l1.671875 0l0 1.90625l-1.671875 0zm0 
11.6875l0 -9.859375l1.671875 0l0 9.859375l-1.671875 0zm4.1292114 0l0 
-9.859375l1.5 0l0 1.390625q0.453125 
 -0.71875 1.21875 -1.15625q0.78125 -0.453125 1.765625 -0.453125q1.09375 0 
1.796875 0.453125q0.703125 0.453125 0.984375 1.28125q1.171875 -1.734375 
3.046875 -1.734375q1.46875 0 2.25 0.8125q0.796875 0.8125 0.796875 2.5l0 
6.765625l-1.671875 0l0 -6.203125q0 -1.0 -0.15625 -1.4375q-0.15625 -0.453125 
-0.59375 -0.71875q-0.421875 -0.265625 -1.0 -0.265625q-1.03125 0 -1.71875 
0.6875q-0.6875 0.6875 -0.6875 2.21875l0 5.71875l-1.671875 0l0 -6.40625q0 
-1.109375 -0.40625 -1.65625q-0.40625 -0.5625 -1.34375 -0.5625q-0.703125 0 
-1.3125 0.375q-0.59375 0.359375 -0.859375 1.078125q-0.265625 0.71875 -0.265625 
2.0625l0 5.109375l-1.671875 0zm22.290771 -3.171875l1.71875 0.21875q-0.40625 1.5 
-1.515625 2.34375q-1.09375 0.828125 -2.8125 0.828125q-2.15625 0 -3.421875 
-1.328125q-1.265625 -1.328125 -1.265625 -3.734375q0 -2.484375 1.265625 
-3.859375q1.28125 -1.375 3.328125 -1.375q1.984375 0 3.234375 1.34375q1.25 
1.34375 1.25 3.796875q0 0.140625 -0.015625 0.4375l-7.34375 0q0.09375 1.625 
0.921875 2.484375q0.828125 0.85
 9375 2.0625 0.859375q0.90625 0 1.546875 -0.46875q0.65625 -0.484375 1.046875 
-1.546875zm-5.484375 -2.703125l5.5 0q-0.109375 -1.234375 -0.625 
-1.859375q-0.796875 -0.96875 -2.078125 -0.96875q-1.140625 0 -1.9375 
0.78125q-0.78125 0.765625 -0.859375 2.046875z" fill-rule="nonzero"></path><path 
fill="#000000" fill-opacity="0.0" d="m42.0 133.0l82.01575 0l0 
42.992126l-82.01575 0z" fill-rule="nonzero"></path><path fill="#000000" 
d="m58.703125 159.92l0 -1.453125q-1.140625 1.671875 -3.125 1.671875q-0.859375 0 
-1.625 -0.328125q-0.75 -0.34375 -1.125 -0.84375q-0.359375 -0.5 -0.515625 
-1.234375q-0.09375 -0.5 -0.09375 -1.5625l0 -6.109375l1.671875 0l0 5.46875q0 
1.3125 0.09375 1.765625q0.15625 0.65625 0.671875 1.03125q0.515625 0.375 
1.265625 0.375q0.75 0 1.40625 -0.375q0.65625 -0.390625 0.921875 
-1.046875q0.28125 -0.671875 0.28125 -1.9375l0 -5.28125l1.671875 0l0 
9.859375l-1.5 0zm3.2507172 -2.9375l1.65625 -0.265625q0.140625 1.0 0.765625 
1.53125q0.640625 0.515625 1.78125 0.515625q1.15625 0 1.703125 -0.46
 875q0.5625 -0.46875 0.5625 -1.09375q0 -0.5625 -0.484375 -0.890625q-0.34375 
-0.21875 -1.703125 -0.5625q-1.84375 -0.46875 -2.5625 -0.796875q-0.703125 
-0.34375 -1.078125 -0.9375q-0.359375 -0.609375 -0.359375 -1.328125q0 -0.65625 
0.296875 -1.21875q0.3125 -0.5625 0.828125 -0.9375q0.390625 -0.28125 1.0625 
-0.484375q0.671875 -0.203125 1.4375 -0.203125q1.171875 0 2.046875 0.34375q0.875 
0.328125 1.28125 0.90625q0.421875 0.5625 0.578125 1.515625l-1.625 
0.21875q-0.109375 -0.75 -0.65625 -1.171875q-0.53125 -0.4375 -1.5 
-0.4375q-1.15625 0 -1.640625 0.390625q-0.484375 0.375 -0.484375 0.875q0 
0.328125 0.203125 0.59375q0.203125 0.265625 0.640625 0.4375q0.25 0.09375 
1.46875 0.4375q1.765625 0.46875 2.46875 0.765625q0.703125 0.296875 1.09375 
0.875q0.40625 0.578125 0.40625 1.4375q0 0.828125 -0.484375 1.578125q-0.484375 
0.734375 -1.40625 1.140625q-0.921875 0.390625 -2.078125 0.390625q-1.921875 0 
-2.9375 -0.796875q-1.0 -0.796875 -1.28125 -2.359375zm16.75 -0.234375l1.71875 
0.21875q-0.40625 1.5 -1.515625 2.
 34375q-1.09375 0.828125 -2.8125 0.828125q-2.15625 0 -3.421875 
-1.328125q-1.265625 -1.328125 -1.265625 -3.734375q0 -2.484375 1.265625 
-3.859375q1.28125 -1.375 3.328125 -1.375q1.984375 0 3.234375 1.34375q1.25 
1.34375 1.25 3.796875q0 0.140625 -0.015625 0.4375l-7.34375 0q0.09375 1.625 
0.921875 2.484375q0.828125 0.859375 2.0625 0.859375q0.90625 0 1.546875 
-0.46875q0.65625 -0.484375 1.046875 -1.546875zm-5.484375 -2.703125l5.5 
0q-0.109375 -1.234375 -0.625 -1.859375q-0.796875 -0.96875 -2.078125 
-0.96875q-1.140625 0 -1.9375 0.78125q-0.78125 0.765625 -0.859375 
2.046875zm9.094467 5.875l0 -9.859375l1.5 0l0 1.5q0.578125 -1.046875 1.0625 
-1.375q0.484375 -0.34375 1.078125 -0.34375q0.84375 0 1.71875 0.546875l-0.578125 
1.546875q-0.609375 -0.359375 -1.234375 -0.359375q-0.546875 0 -0.984375 
0.328125q-0.421875 0.328125 -0.609375 0.90625q-0.28125 0.890625 -0.28125 
1.953125l0 5.15625l-1.671875 0zm17.23973 0l-1.671875 0l0 -10.640625q-0.59375 
0.578125 -1.578125 1.15625q-0.984375 0.5625 -1.765625 0.859375l0
  -1.625q1.40625 -0.65625 2.453125 -1.59375q1.046875 -0.9375 1.484375 
-1.8125l1.078125 0l0 13.65625z" fill-rule="nonzero"></path><path fill="#000000" 
fill-opacity="0.0" d="m42.0 182.0l82.01575 0l0 42.992126l-82.01575 0z" 
fill-rule="nonzero"></path><path fill="#000000" d="m58.703125 208.92l0 
-1.453125q-1.140625 1.671875 -3.125 1.671875q-0.859375 0 -1.625 -0.328125q-0.75 
-0.34375 -1.125 -0.84375q-0.359375 -0.5 -0.515625 -1.234375q-0.09375 -0.5 
-0.09375 -1.5625l0 -6.109375l1.671875 0l0 5.46875q0 1.3125 0.09375 
1.765625q0.15625 0.65625 0.671875 1.03125q0.515625 0.375 1.265625 0.375q0.75 0 
1.40625 -0.375q0.65625 -0.390625 0.921875 -1.046875q0.28125 -0.671875 0.28125 
-1.9375l0 -5.28125l1.671875 0l0 9.859375l-1.5 0zm3.2507172 -2.9375l1.65625 
-0.265625q0.140625 1.0 0.765625 1.53125q0.640625 0.515625 1.78125 
0.515625q1.15625 0 1.703125 -0.46875q0.5625 -0.46875 0.5625 -1.09375q0 -0.5625 
-0.484375 -0.890625q-0.34375 -0.21875 -1.703125 -0.5625q-1.84375 -0.46875 
-2.5625 -0.796875q-0.703125 -0.343
 75 -1.078125 -0.9375q-0.359375 -0.609375 -0.359375 -1.328125q0 -0.65625 
0.296875 -1.21875q0.3125 -0.5625 0.828125 -0.9375q0.390625 -0.28125 1.0625 
-0.484375q0.671875 -0.203125 1.4375 -0.203125q1.171875 0 2.046875 0.34375q0.875 
0.328125 1.28125 0.90625q0.421875 0.5625 0.578125 1.515625l-1.625 
0.21875q-0.109375 -0.75 -0.65625 -1.171875q-0.53125 -0.4375 -1.5 
-0.4375q-1.15625 0 -1.640625 0.390625q-0.484375 0.375 -0.484375 0.875q0 
0.328125 0.203125 0.59375q0.203125 0.265625 0.640625 0.4375q0.25 0.09375 
1.46875 0.4375q1.765625 0.46875 2.46875 0.765625q0.703125 0.296875 1.09375 
0.875q0.40625 0.578125 0.40625 1.4375q0 0.828125 -0.484375 1.578125q-0.484375 
0.734375 -1.40625 1.140625q-0.921875 0.390625 -2.078125 0.390625q-1.921875 0 
-2.9375 -0.796875q-1.0 -0.796875 -1.28125 -2.359375zm16.75 -0.234375l1.71875 
0.21875q-0.40625 1.5 -1.515625 2.34375q-1.09375 0.828125 -2.8125 
0.828125q-2.15625 0 -3.421875 -1.328125q-1.265625 -1.328125 -1.265625 
-3.734375q0 -2.484375 1.265625 -3.859375q1.28125 -1.
 375 3.328125 -1.375q1.984375 0 3.234375 1.34375q1.25 1.34375 1.25 3.796875q0 
0.140625 -0.015625 0.4375l-7.34375 0q0.09375 1.625 0.921875 2.484375q0.828125 
0.859375 2.0625 0.859375q0.90625 0 1.546875 -0.46875q0.65625 -0.484375 1.046875 
-1.546875zm-5.484375 -2.703125l5.5 0q-0.109375 -1.234375 -0.625 
-1.859375q-0.796875 -0.96875 -2.078125 -0.96875q-1.140625 0 -1.9375 
0.78125q-0.78125 0.765625 -0.859375 2.046875zm9.094467 5.875l0 -9.859375l1.5 
0l0 1.5q0.578125 -1.046875 1.0625 -1.375q0.484375 -0.34375 1.078125 
-0.34375q0.84375 0 1.71875 0.546875l-0.578125 1.546875q-0.609375 -0.359375 
-1.234375 -0.359375q-0.546875 0 -0.984375 0.328125q-0.421875 0.328125 -0.609375 
0.90625q-0.28125 0.890625 -0.28125 1.953125l0 5.15625l-1.671875 0zm19.724106 
-1.609375l0 1.609375l-8.984375 0q-0.015625 -0.609375 0.1875 -1.15625q0.34375 
-0.921875 1.09375 -1.8125q0.765625 -0.890625 2.1875 -2.0625q2.21875 -1.8125 3.0 
-2.875q0.78125 -1.0625 0.78125 -2.015625q0 -0.984375 -0.71875 
-1.671875q-0.703125 -0.6875 -1.843
 75 -0.6875q-1.203125 0 -1.9375 0.734375q-0.71875 0.71875 -0.71875 2.0l-1.71875 
-0.171875q0.171875 -1.921875 1.328125 -2.921875q1.15625 -1.015625 3.09375 
-1.015625q1.953125 0 3.09375 1.09375q1.140625 1.078125 1.140625 2.6875q0 0.8125 
-0.34375 1.609375q-0.328125 0.78125 -1.109375 1.65625q-0.765625 0.859375 
-2.5625 2.390625q-1.5 1.265625 -1.9375 1.71875q-0.421875 0.4375 -0.703125 
0.890625l6.671875 0z" fill-rule="nonzero"></path><path fill="#000000" 
fill-opacity="0.0" d="m42.0 239.0l82.01575 0l0 42.992126l-82.01575 0z" 
fill-rule="nonzero"></path><path fill="#000000" d="m58.703125 265.91998l0 
-1.453125q-1.140625 1.671875 -3.125 1.671875q-0.859375 0 -1.625 -0.328125q-0.75 
-0.34375 -1.125 -0.84375q-0.359375 -0.5 -0.515625 -1.234375q-0.09375 -0.5 
-0.09375 -1.5625l0 -6.109375l1.671875 0l0 5.46875q0 1.3125 0.09375 
1.765625q0.15625 0.65625 0.671875 1.03125q0.515625 0.375 1.265625 0.375q0.75 0 
1.40625 -0.375q0.65625 -0.390625 0.921875 -1.046875q0.28125 -0.671875 0.28125 
-1.9375l0 -5.28125l1.671
 875 0l0 9.859375l-1.5 0zm3.2507172 -2.9375l1.65625 -0.265625q0.140625 1.0 
0.765625 1.53125q0.640625 0.515625 1.78125 0.515625q1.15625 0 1.703125 
-0.46875q0.5625 -0.46875 0.5625 -1.09375q0 -0.5625 -0.484375 -0.890625q-0.34375 
-0.21875 -1.703125 -0.5625q-1.84375 -0.46875 -2.5625 -0.796875q-0.703125 
-0.34375 -1.078125 -0.9375q-0.359375 -0.609375 -0.359375 -1.328125q0 -0.65625 
0.296875 -1.21875q0.3125 -0.5625 0.828125 -0.9375q0.390625 -0.28125 1.0625 
-0.484375q0.671875 -0.20310974 1.4375 -0.20310974q1.171875 0 2.046875 
0.34373474q0.875 0.328125 1.28125 0.90625q0.421875 0.5625 0.578125 
1.515625l-1.625 0.21875q-0.109375 -0.75 -0.65625 -1.171875q-0.53125 -0.4375 
-1.5 -0.4375q-1.15625 0 -1.640625 0.390625q-0.484375 0.375 -0.484375 0.875q0 
0.328125 0.203125 0.59375q0.203125 0.265625 0.640625 0.4375q0.25 0.09375 
1.46875 0.4375q1.765625 0.46875 2.46875 0.765625q0.703125 0.296875 1.09375 
0.875q0.40625 0.578125 0.40625 1.4375q0 0.828125 -0.484375 1.578125q-0.484375 
0.734375 -1.40625 1.140625q-0.
 921875 0.390625 -2.078125 0.390625q-1.921875 0 -2.9375 -0.796875q-1.0 
-0.796875 -1.28125 -2.359375zm16.75 -0.234375l1.71875 0.21875q-0.40625 1.5 
-1.515625 2.34375q-1.09375 0.828125 -2.8125 0.828125q-2.15625 0 -3.421875 
-1.328125q-1.265625 -1.328125 -1.265625 -3.734375q0 -2.484375 1.265625 
-3.859375q1.28125 -1.3749847 3.328125 -1.3749847q1.984375 0 3.234375 
1.3437347q1.25 1.34375 1.25 3.796875q0 0.140625 -0.015625 0.4375l-7.34375 
0q0.09375 1.625 0.921875 2.484375q0.828125 0.859375 2.0625 0.859375q0.90625 0 
1.546875 -0.46875q0.65625 -0.484375 1.046875 -1.546875zm-5.484375 -2.703125l5.5 
0q-0.109375 -1.234375 -0.625 -1.859375q-0.796875 -0.96875 -2.078125 
-0.96875q-1.140625 0 -1.9375 0.78125q-0.78125 0.765625 -0.859375 
2.046875zm9.094467 5.875l0 -9.859375l1.5 0l0 1.5q0.578125 -1.046875 1.0625 
-1.375q0.484375 -0.34373474 1.078125 -0.34373474q0.84375 0 1.71875 
0.54685974l-0.578125 1.546875q-0.609375 -0.359375 -1.234375 -0.359375q-0.546875 
0 -0.984375 0.328125q-0.421875 0.328125 -0.609375 0
 .90625q-0.28125 0.890625 -0.28125 1.953125l0 5.15625l-1.671875 0zm10.958481 
-3.59375l1.671875 -0.21875q0.28125 1.421875 0.96875 2.046875q0.703125 0.625 
1.6875 0.625q1.1875 0 2.0 -0.8125q0.8125 -0.828125 0.8125 -2.03125q0 -1.140625 
-0.765625 -1.890625q-0.75 -0.75 -1.90625 -0.75q-0.46875 0 -1.171875 
0.1875l0.1875 -1.46875q0.15625 0.015625 0.265625 0.015625q1.0625 0 1.90625 
-0.546875q0.859375 -0.5625 0.859375 -1.7187347q0 -0.921875 -0.625 
-1.515625q-0.609375 -0.609375 -1.59375 -0.609375q-0.96875 0 -1.625 
0.609375q-0.640625 0.609375 -0.828125 1.8437347l-1.671875 -0.29685974q0.296875 
-1.6875 1.375 -2.609375q1.09375 -0.921875 2.71875 -0.921875q1.109375 0 2.046875 
0.484375q0.9375 0.46875 1.421875 1.296875q0.5 0.828125 0.5 1.75q0 0.89060974 
-0.46875 1.6093597q-0.46875 0.71875 -1.40625 1.15625q1.21875 0.265625 1.875 
1.15625q0.671875 0.875 0.671875 2.1875q0 1.78125 -1.296875 3.015625q-1.296875 
1.234375 -3.28125 1.234375q-1.796875 0 -2.984375 -1.0625q-1.171875 -1.0625 
-1.34375 -2.765625z" fill
 -rule="nonzero"></path><path fill="#9900ff" d="m177.0 154.49606l0 0c0 
-5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 0c2.518509 0 4.9338684 
1.000473 6.714737 2.7813263c1.7808533 1.7808685 2.7813263 4.196228 2.7813263 
6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 0c-5.2445374 0 
-9.496063 -4.251526 -9.496063 -9.496063z" fill-rule="nonzero"></path><path 
fill="#9900ff" d="m203.49606 154.49606l0 0c0 -5.2445374 4.251526 -9.496063 
9.496063 -9.496063l0 0c2.518509 0 4.9338684 1.000473 6.714737 
2.7813263c1.7808533 1.7808685 2.7813263 4.196228 2.7813263 6.714737l0 0c0 
5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 0c-5.2445374 0 -9.496063 
-4.251526 -9.496063 -9.496063z" fill-rule="nonzero"></path><path fill="#9900ff" 
d="m290.0 154.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 
0c2.5185242 0 4.9338684 1.000473 6.7147217 2.7813263c1.7808533 1.7808685 
2.7813416 4.196228 2.7813416 6.714737l0 0c0 5.2445374 -4.251526 9.496063 
-9.496063 9.496063l0 0c-5.244537
 4 0 -9.496063 -4.251526 -9.496063 -9.496063z" fill-rule="nonzero"></path><path 
fill="#9900ff" d="m323.0 154.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496063 
-9.496063l0 0c2.5185242 0 4.9338684 1.000473 6.7147217 2.7813263c1.7808533 
1.7808685 2.7813416 4.196228 2.7813416 6.714737l0 0c0 5.2445374 -4.251526 
9.496063 -9.496063 9.496063l0 0c-5.2445374 0 -9.496063 -4.251526 -9.496063 
-9.496063z" fill-rule="nonzero"></path><path fill="#9900ff" d="m348.0 
154.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 0c2.5185242 
0 4.9338684 1.000473 6.7147217 2.7813263c1.7808533 1.7808685 2.7813416 4.196228 
2.7813416 6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 
0c-5.2445374 0 -9.496063 -4.251526 -9.496063 -9.496063z" 
fill-rule="nonzero"></path><path fill="#9900ff" d="m373.0 154.49606l0 0c0 
-5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 0c2.5185242 0 4.9338684 
1.000473 6.7147217 2.7813263c1.7808533 1.7808685 2.7813416 4.196228 2.7813416 
6.714737l0 0c0 5.2445374 -
 4.251526 9.496063 -9.496063 9.496063l0 0c-5.2445374 0 -9.496063 -4.251526 
-9.496063 -9.496063z" fill-rule="nonzero"></path><path fill="#9900ff" 
d="m442.50394 154.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496063 
-9.496063l0 0c2.5185242 0 4.9338684 1.000473 6.7147217 2.7813263c1.7808533 
1.7808685 2.7813416 4.196228 2.7813416 6.714737l0 0c0 5.2445374 -4.251526 
9.496063 -9.496063 9.496063l0 0c-5.2445374 0 -9.496063 -4.251526 -9.496063 
-9.496063z" fill-rule="nonzero"></path><path fill="#9900ff" d="m469.0 
154.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 0c2.5185242 
0 4.9338684 1.000473 6.7147217 2.7813263c1.7808533 1.7808685 2.7813416 4.196228 
2.7813416 6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 
0c-5.2445374 0 -9.496063 -4.251526 -9.496063 -9.496063z" 
fill-rule="nonzero"></path><path fill="#9900ff" d="m492.50394 154.49606l0 0c0 
-5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 0c2.5185242 0 4.9338684 
1.000473 6.7147217 2.7813263c1.7808533 1.78086
 85 2.7813416 4.196228 2.7813416 6.714737l0 0c0 5.2445374 -4.251526 9.496063 
-9.496063 9.496063l0 0c-5.2445374 0 -9.496063 -4.251526 -9.496063 -9.496063z" 
fill-rule="nonzero"></path><path fill="#9900ff" d="m524.0 154.49606l0 0c0 
-5.2445374 4.251526 -9.496063 9.496033 -9.496063l0 0c2.5185547 0 4.933899 
1.000473 6.7147827 2.7813263c1.7808228 1.7808685 2.781311 4.196228 2.781311 
6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496094 9.496063l0 0c-5.244507 0 
-9.496033 -4.251526 -9.496033 -9.496063z" fill-rule="nonzero"></path><path 
fill="#9900ff" d="m603.0079 154.49606l0 0c0 -5.2445374 4.251526 -9.496063 
9.496094 -9.496063l0 0c2.5184937 0 4.933838 1.000473 6.7147217 
2.7813263c1.7808228 1.7808685 2.781311 4.196228 2.781311 6.714737l0 0c0 
5.2445374 -4.251526 9.496063 -9.496033 9.496063l0 0c-5.244568 0 -9.496094 
-4.251526 -9.496094 -9.496063z" fill-rule="nonzero"></path><path fill="#9900ff" 
d="m374.97638 203.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496063 
-9.496063l0 0c2.5185242 0 4.93386
 84 1.000473 6.7147217 2.7813263c1.7808533 1.7808685 2.7813416 4.196228 
2.7813416 6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 
0c-5.2445374 0 -9.496063 -4.251526 -9.496063 -9.496063z" 
fill-rule="nonzero"></path><path fill="#9900ff" d="m401.47244 203.49606l0 0c0 
-5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 0c2.5185242 0 4.9338684 
1.000473 6.7147217 2.7813263c1.7808533 1.7808685 2.7813416 4.196228 2.7813416 
6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 0c-5.2445374 0 
-9.496063 -4.251526 -9.496063 -9.496063z" fill-rule="nonzero"></path><path 
fill="#9900ff" d="m209.0 203.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496063 
-9.496063l0 0c2.518509 0 4.9338684 1.000473 6.714737 2.7813263c1.7808533 
1.7808685 2.7813263 4.196228 2.7813263 6.714737l0 0c0 5.2445374 -4.251526 
9.496063 -9.496063 9.496063l0 0c-5.2445374 0 -9.496063 -4.251526 -9.496063 
-9.496063z" fill-rule="nonzero"></path><path fill="#9900ff" d="m242.0 
203.49606l0 0c0 -5.2445374 4.251526 
 -9.496063 9.496063 -9.496063l0 0c2.518509 0 4.9338684 1.000473 6.7147217 
2.7813263c1.7808533 1.7808685 2.7813416 4.196228 2.7813416 6.714737l0 0c0 
5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 0c-5.2445374 0 -9.496063 
-4.251526 -9.496063 -9.496063z" fill-rule="nonzero"></path><path fill="#9900ff" 
d="m267.0 203.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 
0c2.5185242 0 4.9338684 1.000473 6.7147217 2.7813263c1.7808533 1.7808685 
2.7813416 4.196228 2.7813416 6.714737l0 0c0 5.2445374 -4.251526 9.496063 
-9.496063 9.496063l0 0c-5.2445374 0 -9.496063 -4.251526 -9.496063 -9.496063z" 
fill-rule="nonzero"></path><path fill="#9900ff" d="m292.0 203.49606l0 0c0 
-5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 0c2.5185242 0 4.9338684 
1.000473 6.7147217 2.7813263c1.7808533 1.7808685 2.7813416 4.196228 2.7813416 
6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 0c-5.2445374 0 
-9.496063 -4.251526 -9.496063 -9.496063z" fill-rule="nonzero"></path><path 
fill="#9900f
 f" d="m568.4803 203.49606l0 0c0 -5.2445374 4.251587 -9.496063 9.496094 
-9.496063l0 0c2.5184937 0 4.933899 1.000473 6.7147217 2.7813263c1.7808838 
1.7808685 2.781311 4.196228 2.781311 6.714737l0 0c0 5.2445374 -4.251526 
9.496063 -9.496033 9.496063l0 0c-5.244507 0 -9.496094 -4.251526 -9.496094 
-9.496063z" fill-rule="nonzero"></path><path fill="#9900ff" d="m594.9764 
203.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496033 -9.496063l0 0c2.5185547 
0 4.933899 1.000473 6.7147827 2.7813263c1.7808228 1.7808685 2.781311 4.196228 
2.781311 6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496094 9.496063l0 
0c-5.244507 0 -9.496033 -4.251526 -9.496033 -9.496063z" 
fill-rule="nonzero"></path><path fill="#9900ff" d="m618.4803 203.49606l0 0c0 
-5.2445374 4.251587 -9.496063 9.496094 -9.496063l0 0c2.5184937 0 4.933899 
1.000473 6.7147217 2.7813263c1.7808838 1.7808685 2.781311 4.196228 2.781311 
6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496033 9.496063l0 0c-5.244507 0 
-9.496094 -4.251526 -9.496094 -9.496063z
 " fill-rule="nonzero"></path><path fill="#9900ff" d="m477.0 203.49606l0 0c0 
-5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 0c2.5185242 0 4.9338684 
1.000473 6.7147217 2.7813263c1.7808533 1.7808685 2.7813416 4.196228 2.7813416 
6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 0c-5.2445374 0 
-9.496063 -4.251526 -9.496063 -9.496063z" fill-rule="nonzero"></path><path 
fill="#9900ff" d="m487.99213 260.49606l0 0c0 -5.2445374 4.251526 -9.496063 
9.496063 -9.496063l0 0c2.5185242 0 4.9338684 1.000473 6.7147217 
2.7813263c1.7808533 1.7808685 2.7813416 4.196213 2.7813416 6.714737l0 0c0 
5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 0c-5.2445374 0 -9.496063 
-4.251526 -9.496063 -9.496063z" fill-rule="nonzero"></path><path fill="#9900ff" 
d="m514.48816 260.49606l0 0c0 -5.2445374 4.251587 -9.496063 9.496094 
-9.496063l0 0c2.5184937 0 4.933899 1.000473 6.7147217 2.7813263c1.7808838 
1.7808685 2.781311 4.196213 2.781311 6.714737l0 0c0 5.2445374 -4.251526 
9.496063 -9.496033 9.496063l0 
 0c-5.244507 0 -9.496094 -4.251526 -9.496094 -9.496063z" 
fill-rule="nonzero"></path><path fill="#9900ff" d="m185.76378 260.49606l0 0c0 
-5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 0c2.518509 0 4.9338684 
1.000473 6.714737 2.7813263c1.7808533 1.7808685 2.7813263 4.196213 2.7813263 
6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 0c-5.2445374 0 
-9.496063 -4.251526 -9.496063 -9.496063z" fill-rule="nonzero"></path><path 
fill="#9900ff" d="m265.0 260.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496063 
-9.496063l0 0c2.5185242 0 4.9338684 1.000473 6.7147217 2.7813263c1.7808533 
1.7808685 2.7813416 4.196213 2.7813416 6.714737l0 0c0 5.2445374 -4.251526 
9.496063 -9.496063 9.496063l0 0c-5.2445374 0 -9.496063 -4.251526 -9.496063 
-9.496063z" fill-rule="nonzero"></path><path fill="#9900ff" d="m291.49606 
260.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496063 -9.496063l0 0c2.5185242 
0 4.9338684 1.000473 6.7147217 2.7813263c1.7808533 1.7808685 2.7813416 4.196213 
2.7813416 6.714737l0
  0c0 5.2445374 -4.251526 9.496063 -9.496063 9.496063l0 0c-5.2445374 0 
-9.496063 -4.251526 -9.496063 -9.496063z" fill-rule="nonzero"></path><path 
fill="#9900ff" d="m315.0 260.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496063 
-9.496063l0 0c2.5185242 0 4.9338684 1.000473 6.7147217 2.7813263c1.7808533 
1.7808685 2.7813416 4.196213 2.7813416 6.714737l0 0c0 5.2445374 -4.251526 
9.496063 -9.496063 9.496063l0 0c-5.2445374 0 -9.496063 -4.251526 -9.496063 
-9.496063z" fill-rule="nonzero"></path><path fill="#9900ff" d="m558.01575 
260.49606l0 0c0 -5.2445374 4.251526 -9.496063 9.496094 -9.496063l0 0c2.5184937 
0 4.933838 1.000473 6.7147217 2.7813263c1.7808228 1.7808685 2.781311 4.196213 
2.781311 6.714737l0 0c0 5.2445374 -4.251526 9.496063 -9.496033 9.496063l0 
0c-5.244568 0 -9.496094 -4.251526 -9.496094 -9.496063z" 
fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d="m173.0 
111.0l0 354.99213" fill-rule="nonzero"></path><path stroke="#000000" 
stroke-width="1.0" stroke-linejoin="round
 " stroke-linecap="butt" stroke-dasharray="4.0,3.0" d="m173.0 111.0l0 
354.99213" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" 
d="m266.59973 110.00787l0 354.99213" fill-rule="nonzero"></path><path 
stroke="#000000" stroke-width="1.0" stroke-linejoin="round" 
stroke-linecap="butt" stroke-dasharray="4.0,3.0" d="m266.59973 110.00787l0 
354.99213" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" 
d="m360.19946 110.00787l0 354.99213" fill-rule="nonzero"></path><path 
stroke="#000000" stroke-width="1.0" stroke-linejoin="round" 
stroke-linecap="butt" stroke-dasharray="4.0,3.0" d="m360.19946 110.00787l0 
354.99213" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" 
d="m453.79922 110.00787l0 354.99213" fill-rule="nonzero"></path><path 
stroke="#000000" stroke-width="1.0" stroke-linejoin="round" 
stroke-linecap="butt" stroke-dasharray="4.0,3.0" d="m453.79922 110.00787l0 
354.99213" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d
 ="m547.3989 111.0l0 354.99213" fill-rule="nonzero"></path><path 
stroke="#000000" stroke-width="1.0" stroke-linejoin="round" 
stroke-linecap="butt" stroke-dasharray="4.0,3.0" d="m547.3989 111.0l0 
354.99213" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" 
d="m640.99866 111.0l0 354.99213" fill-rule="nonzero"></path><path 
stroke="#000000" stroke-width="1.0" stroke-linejoin="round" 
stroke-linecap="butt" stroke-dasharray="4.0,3.0" d="m640.99866 111.0l0 
354.99213" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" 
d="m186.75 86.0l102.99213 0l0 38.992126l-102.99213 0z" 
fill-rule="nonzero"></path><path fill="#000000" d="m197.84375 107.8l-2.0625 
-6.734375l1.1875 0l1.078125 3.890625l0.390625 1.4375q0.03125 -0.109375 0.359375 
-1.390625l1.0625 -3.9375l1.171875 0l1.015625 3.90625l0.34375 1.28125l0.375 
-1.296875l1.15625 -3.890625l1.109375 0l-2.109375 6.734375l-1.171875 0l-1.078125 
-4.03125l-0.265625 -1.15625l-1.359375 5.1875l-1.203125 0zm8.390778 -7.984375l0 
-1.32
 8125l1.140625 0l0 1.328125l-1.140625 0zm0 7.984375l0 -6.734375l1.140625 0l0 
6.734375l-1.140625 0zm2.96109 0l0 -6.734375l1.03125 0l0 0.953125q0.734375 
-1.109375 2.140625 -1.109375q0.609375 0 1.109375 0.21875q0.515625 0.21875 
0.765625 0.578125q0.265625 0.34375 0.359375 0.84375q0.0625 0.3125 0.0625 
1.109375l0 4.140625l-1.140625 0l0 -4.09375q0 -0.703125 -0.140625 
-1.046875q-0.125 -0.34375 -0.46875 -0.546875q-0.328125 -0.21875 -0.78125 
-0.21875q-0.734375 0 -1.265625 0.46875q-0.53125 0.453125 -0.53125 1.75l0 
3.6875l-1.140625 0zm11.787476 0l0 -0.84375q-0.640625 1.0 -1.890625 
1.0q-0.796875 0 -1.484375 -0.4375q-0.671875 -0.453125 -1.046875 -1.25q-0.375 
-0.796875 -0.375 -1.828125q0 -1.015625 0.34375 -1.828125q0.34375 -0.828125 
1.015625 -1.265625q0.671875 -0.4375 1.5 -0.4375q0.609375 0 1.078125 
0.265625q0.484375 0.25 0.78125 0.65625l0 -3.34375l1.140625 0l0 9.3125l-1.0625 
0zm-3.609375 -3.359375q0 1.296875 0.53125 1.9375q0.546875 0.640625 1.296875 
0.640625q0.75 0 1.265625 -0.609375q0.53125 -0.62
 5 0.53125 -1.875q0 -1.390625 -0.53125 -2.03125q-0.53125 -0.65625 -1.3125 
-0.65625q-0.765625 0 -1.28125 0.625q-0.5 0.625 -0.5 1.96875zm6.2249756 
-0.015625q0 -1.875 1.03125 -2.765625q0.875 -0.75 2.125 -0.75q1.390625 0 
2.265625 0.90625q0.890625 0.90625 0.890625 2.515625q0 1.296875 -0.390625 
2.046875q-0.390625 0.75 -1.140625 1.171875q-0.75 0.40625 -1.625 
0.40625q-1.421875 0 -2.296875 -0.90625q-0.859375 -0.90625 -0.859375 
-2.625zm1.171875 0q0 1.296875 0.5625 1.953125q0.5625 0.640625 1.421875 
0.640625q0.84375 0 1.40625 -0.640625q0.578125 -0.65625 0.578125 -1.984375q0 
-1.25 -0.578125 -1.890625q-0.5625 -0.65625 -1.40625 -0.65625q-0.859375 0 
-1.421875 0.640625q-0.5625 0.640625 -0.5625 1.9375zm7.8968506 3.375l-2.0625 
-6.734375l1.1875 0l1.078125 3.890625l0.390625 1.4375q0.03125 -0.109375 0.359375 
-1.390625l1.0625 -3.9375l1.171875 0l1.015625 3.90625l0.34375 1.28125l0.375 
-1.296875l1.15625 -3.890625l1.109375 0l-2.109375 6.734375l-1.171875 0l-1.078125 
-4.03125l-0.265625 -1.15625l-1.359375 5.1875l
 -1.203125 0zm16.07814 0l-1.140625 0l0 -7.28125q-0.421875 0.390625 -1.09375 
0.796875q-0.65625 0.390625 -1.1875 0.578125l0 -1.109375q0.953125 -0.4375 
1.671875 -1.078125q0.71875 -0.640625 1.015625 -1.25l0.734375 0l0 9.34375z" 
fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" 
d="m278.97604 86.0l102.99213 0l0 38.992126l-102.99213 0z" 
fill-rule="nonzero"></path><path fill="#000000" d="m290.0698 107.8l-2.0625 
-6.734375l1.1875 0l1.078125 3.890625l0.390625 1.4375q0.03125 -0.109375 0.359375 
-1.390625l1.0625 -3.9375l1.171875 0l1.015625 3.90625l0.34375 1.28125l0.375 
-1.296875l1.15625 -3.890625l1.109375 0l-2.109375 6.734375l-1.171875 0l-1.078125 
-4.03125l-0.265625 -1.15625l-1.359375 5.1875l-1.203125 0zm8.390778 -7.984375l0 
-1.328125l1.140625 0l0 1.328125l-1.140625 0zm0 7.984375l0 -6.734375l1.140625 
0l0 6.734375l-1.140625 0zm2.96109 0l0 -6.734375l1.03125 0l0 0.953125q0.734375 
-1.109375 2.140625 -1.109375q0.609375 0 1.109375 0.21875q0.515625 0.21875 
0.765625 0.578125q0.265625 0.34
 375 0.359375 0.84375q0.0625 0.3125 0.0625 1.109375l0 4.140625l-1.140625 0l0 
-4.09375q0 -0.703125 -0.140625 -1.046875q-0.125 -0.34375 -0.46875 
-0.546875q-0.328125 -0.21875 -0.78125 -0.21875q-0.734375 0 -1.265625 
0.46875q-0.53125 0.453125 -0.53125 1.75l0 3.6875l-1.140625 0zm11.787476 0l0 
-0.84375q-0.640625 1.0 -1.890625 1.0q-0.796875 0 -1.484375 -0.4375q-0.671875 
-0.453125 -1.046875 -1.25q-0.375 -0.796875 -0.375 -1.828125q0 -1.015625 0.34375 
-1.828125q0.34375 -0.828125 1.015625 -1.265625q0.671875 -0.4375 1.5 
-0.4375q0.609375 0 1.078125 0.265625q0.484375 0.25 0.78125 0.65625l0 
-3.34375l1.140625 0l0 9.3125l-1.0625 0zm-3.609375 -3.359375q0 1.296875 0.53125 
1.9375q0.546875 0.640625 1.296875 0.640625q0.75 0 1.265625 -0.609375q0.53125 
-0.625 0.53125 -1.875q0 -1.390625 -0.53125 -2.03125q-0.53125 -0.65625 -1.3125 
-0.65625q-0.765625 0 -1.28125 0.625q-0.5 0.625 -0.5 1.96875zm6.2249756 
-0.015625q0 -1.875 1.03125 -2.765625q0.875 -0.75 2.125 -0.75q1.390625 0 
2.265625 0.90625q0.890625 0.90625 0.890
 625 2.515625q0 1.296875 -0.390625 2.046875q-0.390625 0.75 -1.140625 
1.171875q-0.75 0.40625 -1.625 0.40625q-1.421875 0 -2.296875 -0.90625q-0.859375 
-0.90625 -0.859375 -2.625zm1.171875 0q0 1.296875 0.5625 1.953125q0.5625 
0.640625 1.421875 0.640625q0.84375 0 1.40625 -0.640625q0.578125 -0.65625 
0.578125 -1.984375q0 -1.25 -0.578125 -1.890625q-0.5625 -0.65625 -1.40625 
-0.65625q-0.859375 0 -1.421875 0.640625q-0.5625 0.640625 -0.5625 
1.9375zm7.8968506 3.375l-2.0625 -6.734375l1.1875 0l1.078125 3.890625l0.390625 
1.4375q0.03125 -0.109375 0.359375 -1.390625l1.0625 -3.9375l1.171875 0l1.015625 
3.90625l0.34375 1.28125l0.375 -1.296875l1.15625 -3.890625l1.109375 0l-2.109375 
6.734375l-1.171875 0l-1.078125 -4.03125l-0.265625 -1.15625l-1.359375 
5.1875l-1.203125 0zm17.78128 -1.09375l0 1.09375l-6.15625 0q-0.015625 -0.40625 
0.140625 -0.796875q0.234375 -0.625 0.75 -1.234375q0.515625 -0.609375 1.5 
-1.40625q1.515625 -1.25 2.046875 -1.96875q0.53125 -0.734375 0.53125 -1.375q0 
-0.6875 -0.484375 -1.140625q-0.484
 375 -0.46875 -1.265625 -0.46875q-0.828125 0 -1.328125 0.5q-0.484375 0.484375 
-0.5 1.359375l-1.171875 -0.125q0.125 -1.3125 0.90625 -2.0q0.78125 -0.6875 
2.109375 -0.6875q1.34375 0 2.125 0.75q0.78125 0.734375 0.78125 1.828125q0 
0.5625 -0.234375 1.109375q-0.21875 0.53125 -0.75 1.140625q-0.53125 0.59375 
-1.765625 1.625q-1.03125 0.859375 -1.328125 1.171875q-0.28125 0.3125 -0.46875 
0.625l4.5625 0z" fill-rule="nonzero"></path><path fill="#000000" 
fill-opacity="0.0" d="m372.83102 86.0l102.99213 0l0 38.992126l-102.99213 0z" 
fill-rule="nonzero"></path><path fill="#000000" d="m383.92477 107.8l-2.0625 
-6.734375l1.1875 0l1.078125 3.890625l0.390625 1.4375q0.03125 -0.109375 0.359375 
-1.390625l1.0625 -3.9375l1.171875 0l1.015625 3.90625l0.34375 1.28125l0.375 
-1.296875l1.15625 -3.890625l1.109375 0l-2.109375 6.734375l-1.171875 0l-1.078125 
-4.03125l-0.265625 -1.15625l-1.359375 5.1875l-1.203125 0zm8.390778 -7.984375l0 
-1.328125l1.140625 0l0 1.328125l-1.140625 0zm0 7.984375l0 -6.734375l1.140625 
0l0 6.7343
 75l-1.140625 0zm2.96109 0l0 -6.734375l1.03125 0l0 0.953125q0.734375 -1.109375 
2.140625 -1.109375q0.609375 0 1.109375 0.21875q0.515625 0.21875 0.765625 
0.578125q0.265625 0.34375 0.359375 0.84375q0.0625 0.3125 0.0625 1.109375l0 
4.140625l-1.140625 0l0 -4.09375q0 -0.703125 -0.140625 -1.046875q-0.125 -0.34375 
-0.46875 -0.546875q-0.328125 -0.21875 -0.78125 -0.21875q-0.734375 0 -1.265625 
0.46875q-0.53125 0.453125 -0.53125 1.75l0 3.6875l-1.140625 0zm11.787476 0l0 
-0.84375q-0.640625 1.0 -1.890625 1.0q-0.796875 0 -1.484375 -0.4375q-0.671875 
-0.453125 -1.046875 -1.25q-0.375 -0.796875 -0.375 -1.828125q0 -1.015625 0.34375 
-1.828125q0.34375 -0.828125 1.015625 -1.265625q0.671875 -0.4375 1.5 
-0.4375q0.609375 0 1.078125 0.265625q0.484375 0.25 0.78125 0.65625l0 
-3.34375l1.140625 0l0 9.3125l-1.0625 0zm-3.609375 -3.359375q0 1.296875 0.53125 
1.9375q0.546875 0.640625 1.296875 0.640625q0.75 0 1.265625 -0.609375q0.53125 
-0.625 0.53125 -1.875q0 -1.390625 -0.53125 -2.03125q-0.53125 -0.65625 -1.3125 
-0.65625q
 -0.765625 0 -1.28125 0.625q-0.5 0.625 -0.5 1.96875zm6.2249756 -0.015625q0 
-1.875 1.03125 -2.765625q0.875 -0.75 2.125 -0.75q1.390625 0 2.265625 
0.90625q0.890625 0.90625 0.890625 2.515625q0 1.296875 -0.390625 
2.046875q-0.390625 0.75 -1.140625 1.171875q-0.75 0.40625 -1.625 
0.40625q-1.421875 0 -2.296875 -0.90625q-0.859375 -0.90625 -0.859375 
-2.625zm1.171875 0q0 1.296875 0.5625 1.953125q0.5625 0.640625 1.421875 
0.640625q0.84375 0 1.40625 -0.640625q0.578125 -0.65625 0.578125 -1.984375q0 
-1.25 -0.578125 -1.890625q-0.5625 -0.65625 -1.40625 -0.65625q-0.859375 0 
-1.421875 0.640625q-0.5625 0.640625 -0.5625 1.9375zm7.8968506 3.375l-2.0625 
-6.734375l1.1875 0l1.078125 3.890625l0.390625 1.4375q0.03125 -0.109375 0.359375 
-1.390625l1.0625 -3.9375l1.171875 0l1.015625 3.90625l0.34375 1.28125l0.375 
-1.296875l1.15625 -3.890625l1.109375 0l-2.109375 6.734375l-1.171875 0l-1.078125 
-4.03125l-0.265625 -1.15625l-1.359375 5.1875l-1.203125 0zm11.7812805 
-2.453125l1.140625 -0.15625q0.203125 0.96875 0.671875 1.40
 625q0.46875 0.421875 1.15625 0.421875q0.796875 0 1.34375 -0.546875q0.5625 
-0.5625 0.5625 -1.390625q0 -0.796875 -0.515625 -1.296875q-0.5 -0.515625 
-1.296875 -0.515625q-0.328125 0 -0.8125 0.125l0.125 -1.0q0.125 0.015625 0.1875 
0.015625q0.734375 0 1.3125 -0.375q0.59375 -0.390625 0.59375 -1.1875q0 -0.625 
-0.4375 -1.03125q-0.421875 -0.421875 -1.09375 -0.421875q-0.671875 0 -1.109375 
0.421875q-0.4375 0.421875 -0.578125 1.25l-1.140625 -0.203125q0.21875 -1.140625 
0.953125 -1.765625q0.75 -0.640625 1.84375 -0.640625q0.765625 0 1.40625 
0.328125q0.640625 0.328125 0.984375 0.890625q0.34375 0.5625 0.34375 1.203125q0 
0.59375 -0.328125 1.09375q-0.328125 0.5 -0.953125 0.78125q0.8125 0.203125 
1.265625 0.796875q0.46875 0.59375 0.46875 1.5q0 1.21875 -0.890625 
2.078125q-0.890625 0.84375 -2.25 0.84375q-1.21875 0 -2.03125 -0.734375q-0.8125 
-0.734375 -0.921875 -1.890625z" fill-rule="nonzero"></path><path fill="#000000" 
fill-opacity="0.0" d="m467.55054 86.0l102.99213 0l0 38.992126l-102.99213 0z" 
fill-rule="n
 onzero"></path><path fill="#000000" d="m478.6443 107.8l-2.0625 
-6.734375l1.1875 0l1.078125 3.890625l0.390625 1.4375q0.03125 -0.109375 0.359375 
-1.390625l1.0625 -3.9375l1.171875 0l1.015625 3.90625l0.34375 1.28125l0.375 
-1.296875l1.15625 -3.890625l1.109375 0l-2.109375 6.734375l-1.171875 0l-1.078125 
-4.03125l-0.265625 -1.15625l-1.359375 5.1875l-1.203125 0zm8.390778 -7.984375l0 
-1.328125l1.140625 0l0 1.328125l-1.140625 0zm0 7.984375l0 -6.734375l1.140625 
0l0 6.734375l-1.140625 0zm2.96109 0l0 -6.734375l1.03125 0l0 0.953125q0.734375 
-1.109375 2.140625 -1.109375q0.609375 0 1.109375 0.21875q0.515625 0.21875 
0.765625 0.578125q0.265625 0.34375 0.359375 0.84375q0.0625 0.3125 0.0625 
1.109375l0 4.140625l-1.140625 0l0 -4.09375q0 -0.703125 -0.140625 
-1.046875q-0.125 -0.34375 -0.46875 -0.546875q-0.328125 -0.21875 -0.78125 
-0.21875q-0.734375 0 -1.265625 0.46875q-0.53125 0.453125 -0.53125 1.75l0 
3.6875l-1.140625 0zm11.787476 0l0 -0.84375q-0.640625 1.0 -1.890625 
1.0q-0.796875 0 -1.484375 -0.4375q-0.671
 875 -0.453125 -1.046875 -1.25q-0.375 -0.796875 -0.375 -1.828125q0 -1.015625 
0.34375 -1.828125q0.34375 -0.828125 1.015625 -1.265625q0.671875 -0.4375 1.5 
-0.4375q0.609375 0 1.078125 0.265625q0.484375 0.25 0.78125 0.65625l0 
-3.34375l1.140625 0l0 9.3125l-1.0625 0zm-3.609375 -3.359375q0 1.296875 0.53125 
1.9375q0.546875 0.640625 1.296875 0.640625q0.75 0 1.265625 -0.609375q0.53125 
-0.625 0.53125 -1.875q0 -1.390625 -0.53125 -2.03125q-0.53125 -0.65625 -1.3125 
-0.65625q-0.765625 0 -1.28125 0.625q-0.5 0.625 -0.5 1.96875zm6.2249756 
-0.015625q0 -1.875 1.03125 -2.765625q0.875 -0.75 2.125 -0.75q1.390625 0 
2.265625 0.90625q0.890625 0.90625 0.890625 2.515625q0 1.296875 -0.390625 
2.046875q-0.390625 0.75 -1.140625 1.171875q-0.75 0.40625 -1.625 
0.40625q-1.421875 0 -2.296875 -0.90625q-0.859375 -0.90625 -0.859375 
-2.625zm1.171875 0q0 1.296875 0.5625 1.953125q0.5625 0.640625 1.421875 
0.640625q0.84375 0 1.40625 -0.640625q0.578125 -0.65625 0.578125 -1.984375q0 
-1.25 -0.578125 -1.890625q-0.5625 -0.65625 -1.4
 0625 -0.65625q-0.859375 0 -1.421875 0.640625q-0.5625 0.640625 -0.5625 
1.9375zm7.8968506 3.375l-2.0625 -6.734375l1.1875 0l1.078125 3.890625l0.390625 
1.4375q0.03125 -0.109375 0.359375 -1.390625l1.0625 -3.9375l1.171875 0l1.015625 
3.90625l0.34375 1.28125l0.375 -1.296875l1.15625 -3.890625l1.109375 0l-2.109375 
6.734375l-1.171875 0l-1.078125 -4.03125l-0.265625 -1.15625l-1.359375 
5.1875l-1.203125 0zm15.4375 0l0 -2.234375l-4.03125 0l0 -1.046875l4.234375 
-6.03125l0.9375 0l0 6.03125l1.265625 0l0 1.046875l-1.265625 0l0 
2.234375l-1.140625 0zm0 -3.28125l0 -4.1875l-2.921875 4.1875l2.921875 0z" 
fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" 
d="m559.92816 86.0l102.99213 0l0 38.992126l-102.99213 0z" 
fill-rule="nonzero"></path><path fill="#000000" d="m571.0219 107.8l-2.0625 
-6.734375l1.1875 0l1.078125 3.890625l0.390625 1.4375q0.03125 -0.109375 0.359375 
-1.390625l1.0625 -3.9375l1.171875 0l1.015625 3.90625l0.34375 1.28125l0.375 
-1.296875l1.15625 -3.890625l1.109375 0l-2.109375 6.73437
 5l-1.171875 0l-1.078125 -4.03125l-0.265625 -1.15625l-1.359375 5.1875l-1.203125 
0zm8.390747 -7.984375l0 -1.328125l1.140625 0l0 1.328125l-1.140625 0zm0 
7.984375l0 -6.734375l1.140625 0l0 6.734375l-1.140625 0zm2.9611206 0l0 
-6.734375l1.03125 0l0 0.953125q0.734375 -1.109375 2.140625 -1.109375q0.609375 0 
1.109375 0.21875q0.515625 0.21875 0.765625 0.578125q0.265625 0.34375 0.359375 
0.84375q0.0625 0.3125 0.0625 1.109375l0 4.140625l-1.140625 0l0 -4.09375q0 
-0.703125 -0.140625 -1.046875q-0.125 -0.34375 -0.46875 -0.546875q-0.328125 
-0.21875 -0.78125 -0.21875q-0.734375 0 -1.265625 0.46875q-0.53125 0.453125 
-0.53125 1.75l0 3.6875l-1.140625 0zm11.787476 0l0 -0.84375q-0.640625 1.0 
-1.890625 1.0q-0.796875 0 -1.484375 -0.4375q-0.671875 -0.453125 -1.046875 
-1.25q-0.375 -0.796875 -0.375 -1.828125q0 -1.015625 0.34375 -1.828125q0.34375 
-0.828125 1.015625 -1.265625q0.671875 -0.4375 1.5 -0.4375q0.609375 0 1.078125 
0.265625q0.484375 0.25 0.78125 0.65625l0 -3.34375l1.140625 0l0 9.3125l-1.0625 
0zm-3.609375 -
 3.359375q0 1.296875 0.53125 1.9375q0.546875 0.640625 1.296875 0.640625q0.75 0 
1.265625 -0.609375q0.53125 -0.625 0.53125 -1.875q0 -1.390625 -0.53125 
-2.03125q-0.53125 -0.65625 -1.3125 -0.65625q-0.765625 0 -1.28125 0.625q-0.5 
0.625 -0.5 1.96875zm6.2249756 -0.015625q0 -1.875 1.03125 -2.765625q0.875 -0.75 
2.125 -0.75q1.390625 0 2.265625 0.90625q0.890625 0.90625 0.890625 2.515625q0 
1.296875 -0.390625 2.046875q-0.390625 0.75 -1.140625 1.171875q-0.75 0.40625 
-1.625 0.40625q-1.421875 0 -2.296875 -0.90625q-0.859375 -0.90625 -0.859375 
-2.625zm1.171875 0q0 1.296875 0.5625 1.953125q0.5625 0.640625 1.421875 
0.640625q0.84375 0 1.40625 -0.640625q0.578125 -0.65625 0.578125 -1.984375q0 
-1.25 -0.578125 -1.890625q-0.5625 -0.65625 -1.40625 -0.65625q-0.859375 0 
-1.421875 0.640625q-0.5625 0.640625 -0.5625 1.9375zm7.8968506 3.375l-2.0625 
-6.734375l1.1875 0l1.078125 3.890625l0.390625 1.4375q0.03125 -0.109375 0.359375 
-1.390625l1.0625 -3.9375l1.171875 0l1.015625 3.90625l0.34375 1.28125l0.375 
-1.296875l1.156
 25 -3.890625l1.109375 0l-2.109375 6.734375l-1.171875 0l-1.078125 
-4.03125l-0.265625 -1.15625l-1.359375 5.1875l-1.203125 0zm11.78125 
-2.4375l1.1875 -0.109375q0.140625 0.890625 0.625 1.328125q0.484375 0.4375 
1.171875 0.4375q0.828125 0 1.390625 -0.625q0.578125 -0.625 0.578125 -1.640625q0 
-0.984375 -0.546875 -1.546875q-0.546875 -0.5625 -1.4375 -0.5625q-0.5625 0 
-1.015625 0.25q-0.4375 0.25 -0.6875 0.640625l-1.0625 -0.140625l0.890625 
-4.765625l4.625 0l0 1.078125l-3.703125 0l-0.5 2.5q0.828125 -0.578125 1.75 
-0.578125q1.21875 0 2.046875 0.84375q0.84375 0.84375 0.84375 2.171875q0 
1.265625 -0.734375 2.1875q-0.890625 1.125 -2.4375 1.125q-1.265625 0 -2.078125 
-0.703125q-0.796875 -0.71875 -0.90625 -1.890625z" 
fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" 
d="m277.40027 412.37534l72.0 0" fill-rule="nonzero"></path><path 
stroke="#000000" stroke-width="1.0" stroke-linejoin="round" 
stroke-linecap="butt" d="m280.82733 412.37534l65.14584 0" 
fill-rule="evenodd"></path><path fill="#0
 00000" stroke="#000000" stroke-width="1.0" stroke-linecap="butt" d="m280.82736 
412.37534l1.1245728 -1.1246033l-3.0897827 1.1246033l3.0897827 1.1245728z" 
fill-rule="evenodd"></path><path fill="#000000" stroke="#000000" 
stroke-width="1.0" stroke-linecap="butt" d="m345.97318 412.37534l-1.1245728 
1.1245728l3.0897522 -1.1245728l-3.0897522 -1.1246033z" 
fill-rule="evenodd"></path><path fill="#000000" fill-opacity="0.0" 
d="m166.29134 504.00787l53.70079 -130.89764" fill-rule="nonzero"></path><path 
stroke="#000000" stroke-width="1.0" stroke-linejoin="round" 
stroke-linecap="butt" d="m166.29134 504.00787l51.423477 -125.34662" 
fill-rule="evenodd"></path><path fill="#000000" stroke="#000000" 
stroke-width="1.0" stroke-linecap="butt" d="m219.24295 379.28818l0.19430542 
-4.8254395l-3.2505798 3.5715942z" fill-rule="evenodd"></path><path 
fill="#000000" fill-opacity="0.0" d="m104.59055 504.00787l123.40157 0l0 
42.992126l-123.40157 0z" fill-rule="nonzero"></path><path fill="#000000" 
d="m116.66868 530.9278
 6l-3.015625 -9.859375l1.71875 0l1.5625 5.6875l0.59375 2.125q0.03125 -0.15625 
0.5 -2.03125l1.578125 -5.78125l1.71875 0l1.46875 5.71875l0.484375 
1.890625l0.578125 -1.90625l1.6875 -5.703125l1.625 0l-3.078125 
9.859375l-1.734375 0l-1.578125 -5.90625l-0.375 -1.671875l-2.0 
7.578125l-1.734375 0zm11.660439 -11.6875l0 -1.90625l1.671875 0l0 
1.90625l-1.671875 0zm0 11.6875l0 -9.859375l1.671875 0l0 9.859375l-1.671875 
0zm4.129196 0l0 -9.859375l1.5 0l0 1.40625q1.09375 -1.625 3.140625 
-1.625q0.890625 0 1.640625 0.328125q0.75 0.3125 1.109375 0.84375q0.375 0.515625 
0.53125 1.21875q0.09375 0.46875 0.09375 1.625l0 6.0625l-1.671875 0l0 -6.0q0 
-1.015625 -0.203125 -1.515625q-0.1875 -0.515625 -0.6875 -0.8125q-0.5 -0.296875 
-1.171875 -0.296875q-1.0625 0 -1.84375 0.671875q-0.765625 0.671875 -0.765625 
2.578125l0 5.375l-1.671875 0zm16.766342 0l0 -1.25q-0.9375 1.46875 -2.75 
1.46875q-1.171875 0 -2.171875 -0.640625q-0.984375 -0.65625 -1.53125 
-1.8125q-0.53125 -1.171875 -0.53125 -2.6875q0 -1.46875 0.484375 -2.67187
 5q0.5 -1.203125 1.46875 -1.84375q0.984375 -0.640625 2.203125 
-0.640625q0.890625 0 1.578125 0.375q0.703125 0.375 1.140625 0.984375l0 
-4.875l1.65625 0l0 13.59375l-1.546875 0zm-5.28125 -4.921875q0 1.890625 0.796875 
2.828125q0.8125 0.9375 1.890625 0.9375q1.09375 0 1.859375 -0.890625q0.765625 
-0.890625 0.765625 -2.734375q0 -2.015625 -0.78125 -2.953125q-0.78125 -0.953125 
-1.921875 -0.953125q-1.109375 0 -1.859375 0.90625q-0.75 0.90625 -0.75 
2.859375zm8.641342 0q0 -2.734375 1.53125 -4.0625q1.265625 -1.09375 3.09375 
-1.09375q2.03125 0 3.3125 1.34375q1.296875 1.328125 1.296875 3.671875q0 1.90625 
-0.578125 3.0q-0.5625 1.078125 -1.65625 1.6875q-1.078125 0.59375 -2.375 
0.59375q-2.0625 0 -3.34375 -1.328125q-1.28125 -1.328125 -1.28125 
-3.8125zm1.71875 0q0 1.890625 0.828125 2.828125q0.828125 0.9375 2.078125 
0.9375q1.25 0 2.0625 -0.9375q0.828125 -0.953125 0.828125 -2.890625q0 -1.828125 
-0.828125 -2.765625q-0.828125 -0.9375 -2.0625 -0.9375q-1.25 0 -2.078125 
0.9375q-0.828125 0.9375 -0.828125 2.828125z
 m11.110092 4.921875l-3.015625 -9.859375l1.71875 0l1.5625 5.6875l0.59375 
2.125q0.03125 -0.15625 0.5 -2.03125l1.578125 -5.78125l1.71875 0l1.46875 
5.71875l0.484375 1.890625l0.578125 -1.90625l1.6875 -5.703125l1.625 0l-3.078125 
9.859375l-1.734375 0l-1.578125 -5.90625l-0.375 -1.671875l-2.0 
7.578125l-1.734375 0zm16.15625 -2.9375l1.65625 -0.265625q0.140625 1.0 0.765625 
1.53125q0.640625 0.515625 1.78125 0.515625q1.15625 0 1.703125 -0.46875q0.5625 
-0.46875 0.5625 -1.09375q0 -0.5625 -0.484375 -0.890625q-0.34375 -0.21875 
-1.703125 -0.5625q-1.84375 -0.46875 -2.5625 -0.796875q-0.703125 -0.34375 
-1.078125 -0.9375q-0.359375 -0.609375 -0.359375 -1.328125q0 -0.65625 0.296875 
-1.21875q0.3125 -0.5625 0.828125 -0.9375q0.390625 -0.28125 1.0625 
-0.484375q0.671875 -0.203125 1.4375 -0.203125q1.171875 0 2.046875 0.34375q0.875 
0.328125 1.28125 0.90625q0.421875 0.5625 0.578125 1.515625l-1.625 
0.21875q-0.109375 -0.75 -0.65625 -1.171875q-0.53125 -0.4375 -1.5 
-0.4375q-1.15625 0 -1.640625 0.390625q-0.484375 0.375 
 -0.484375 0.875q0 0.328125 0.203125 0.59375q0.203125 0.265625 0.640625 
0.4375q0.25 0.09375 1.46875 0.4375q1.765625 0.46875 2.46875 0.765625q0.703125 
0.296875 1.09375 0.875q0.40625 0.578125 0.40625 1.4375q0 0.828125 -0.484375 
1.578125q-0.484375 0.734375 -1.40625 1.140625q-0.921875 0.390625 -2.078125 
0.390625q-1.921875 0 -2.9375 -0.796875q-1.0 -0.796875 -1.28125 
-2.359375zm10.015625 -8.75l0 -1.90625l1.671875 0l0 1.90625l-1.671875 0zm0 
11.6875l0 -9.859375l1.671875 0l0 9.859375l-1.671875 0zm3.2541962 0l0 
-1.359375l6.265625 -7.1875q-1.0625 0.046875 -1.875 0.046875l-4.015625 0l0 
-1.359375l8.046875 0l0 1.109375l-5.34375 6.25l-1.015625 1.140625q1.109375 
-0.078125 2.09375 -0.078125l4.5625 0l0 1.4375l-8.71875 0zm16.953125 
-3.171875l1.71875 0.21875q-0.40625 1.5 -1.515625 2.34375q-1.09375 0.828125 
-2.8125 0.828125q-2.15625 0 -3.421875 -1.328125q-1.265625 -1.328125 -1.265625 
-3.734375q0 -2.484375 1.265625 -3.859375q1.28125 -1.375 3.328125 
-1.375q1.984375 0 3.234375 1.34375q1.25 1.34375 1.25 3.79
 6875q0 0.140625 -0.015625 0.4375l-7.34375 0q0.09375 1.625 0.921875 
2.484375q0.828125 0.859375 2.0625 0.859375q0.90625 0 1.546875 -0.46875q0.65625 
-0.484375 1.046875 -1.546875zm-5.484375 -2.703125l5.5 0q-0.109375 -1.234375 
-0.625 -1.859375q-0.796875 -0.96875 -2.078125 -0.96875q-1.140625 0 -1.9375 
0.78125q-0.78125 0.765625 -0.859375 2.046875z" fill-rule="nonzero"></path><path 
fill="#000000" fill-opacity="0.0" d="m176.99213 352.62466l178.01575 0" 
fill-rule="nonzero"></path><path stroke="#000000" stroke-width="1.0" 
stroke-linejoin="round" stroke-linecap="butt" d="m180.4192 352.62466l171.16158 
0" fill-rule="evenodd"></path><path fill="#000000" stroke="#000000" 
stroke-width="1.0" stroke-linecap="butt" d="m180.41922 352.62466l1.1245728 
-1.1245728l-3.0897675 1.1245728l3.0897675 1.1246033z" 
fill-rule="evenodd"></path><path fill="#000000" stroke="#000000" 
stroke-width="1.0" stroke-linecap="butt" d="m351.58078 352.62466l-1.1245728 
1.1246033l3.0897522 -1.1246033l-3.0897522 -1.1245728z" fill-rul
 e="evenodd"></path><path fill="#000000" fill-opacity="0.0" d="m326.58298 
510.63254l-0.9133911 -88.75589" fill-rule="nonzero"></path><path 
stroke="#000000" stroke-width="1.0" stroke-linejoin="round" 
stroke-linecap="butt" d="m326.58298 510.63254l-0.85162354 -82.756226" 
fill-rule="evenodd"></path><path fill="#000000" stroke="#000000" 
stroke-width="1.0" stroke-linecap="butt" d="m327.383 427.8593l-1.6983643 
-4.5208435l-1.60495 4.55484z" fill-rule="evenodd"></path><path fill="#000000" 
fill-opacity="0.0" d="m251.70108 510.63254l149.7638 0l0 42.992157l-149.7638 0z" 
fill-rule="nonzero"></path><path fill="#000000" d="m263.7792 
537.55255l-3.015625 -9.859375l1.71875 0l1.5625 5.6875l0.59375 2.125q0.03125 
-0.15625 0.5 -2.03125l1.578125 -5.78125l1.71875 0l1.46875 5.71875l0.484375 
1.890625l0.578125 -1.90625l1.6875 -5.703125l1.625 0l-3.078125 
9.859375l-1.734375 0l-1.578125 -5.90625l-0.375 -1.671875l-2.0 
7.578125l-1.734375 0zm11.660461 -11.6875l0 -1.90625l1.671875 0l0 
1.90625l-1.671875 0zm0 11.6875l0
  -9.859375l1.671875 0l0 9.859375l-1.671875 0zm4.129181 0l0 -9.859375l1.5 0l0 
1.40625q1.09375 -1.625 3.140625 -1.625q0.890625 0 1.640625 0.328125q0.75 0.3125 
1.109375 0.84375q0.375 0.515625 0.53125 1.21875q0.09375 0.46875 0.09375 1.625l0 
6.0625l-1.671875 0l0 -6.0q0 -1.015625 -0.203125 -1.515625q-0.1875 -0.515625 
-0.6875 -0.8125q-0.5 -0.296875 -1.171875 -0.296875q-1.0625 0 -1.84375 
0.671875q-0.765625 0.671875 -0.765625 2.578125l0 5.375l-1.671875 0zm16.766357 
0l0 -1.25q-0.9375 1.46875 -2.75 1.46875q-1.171875 0 -2.171875 
-0.640625q-0.984375 -0.65625 -1.53125 -1.8125q-0.53125 -1.171875 -0.53125 
-2.6875q0 -1.46875 0.484375 -2.671875q0.5 -1.203125 1.46875 -1.84375q0.984375 
-0.640625 2.203125 -0.640625q0.890625 0 1.578125 0.375q0.703125 0.375 1.140625 
0.984375l0 -4.875l1.65625 0l0 13.59375l-1.546875 0zm-5.28125 -4.921875q0 
1.890625 0.796875 2.828125q0.8125 0.9375 1.890625 0.9375q1.09375 0 1.859375 
-0.890625q0.765625 -0.890625 0.765625 -2.734375q0 -2.015625 -0.78125 
-2.953125q-0.78125 -0.953
 125 -1.921875 -0.953125q-1.109375 0 -1.859375 0.90625q-0.75 0.90625 -0.75 
2.859375zm8.641327 0q0 -2.734375 1.53125 -4.0625q1.265625 -1.09375 3.09375 
-1.09375q2.03125 0 3.3125 1.34375q1.296875 1.328125 1.296875 3.671875q0 1.90625 
-0.578125 3.0q-0.5625 1.078125 -1.65625 1.6875q-1.078125 0.59375 -2.375 
0.59375q-2.0625 0 -3.34375 -1.328125q-1.28125 -1.328125 -1.28125 
-3.8125zm1.71875 0q0 1.890625 0.828125 2.828125q0.828125 0.9375 2.078125 
0.9375q1.25 0 2.0625 -0.9375q0.828125 -0.953125 0.828125 -2.890625q0 -1.828125 
-0.828125 -2.765625q-0.828125 -0.9375 -2.0625 -0.9375q-1.25 0 -2.078125 
0.9375q-0.828125 0.9375 -0.828125 2.828125zm11.110107 4.921875l-3.015625 
-9.859375l1.71875 0l1.5625 5.6875l0.59375 2.125q0.03125 -0.15625 0.5 
-2.03125l1.578125 -5.78125l1.71875 0l1.46875 5.71875l0.484375 1.890625l0.578125 
-1.90625l1.6875 -5.703125l1.625 0l-3.078125 9.859375l-1.734375 0l-1.578125 
-5.90625l-0.375 -1.671875l-2.0 7.578125l-1.734375 0zm16.15625 -2.9375l1.65625 
-0.265625q0.140625 1.0 0.765625 
 1.53125q0.640625 0.515625 1.78125 0.515625q1.15625 0 1.703125 -0.46875q0.5625 
-0.46875 0.5625 -1.09375q0 -0.5625 -0.484375 -0.890625q-0.34375 -0.21875 
-1.703125 -0.5625q-1.84375 -0.46875 -2.5625 -0.796875q-0.703125 -0.34375 
-1.078125 -0.9375q-0.359375 -0.609375 -0.359375 -1.328125q0 -0.65625 0.296875 
-1.21875q0.3125 -0.5625 0.828125 -0.9375q0.390625 -0.28125 1.0625 
-0.484375q0.671875 -0.203125 1.4375 -0.203125q1.171875 0 2.046875 0.34375q0.875 
0.328125 1.28125 0.90625q0.421875 0.5625 0.578125 1.515625l-1.625 
0.21875q-0.109375 -0.75 -0.65625 -1.171875q-0.53125 -0.4375 -1.5 
-0.4375q-1.15625 0 -1.640625 0.390625q-0.484375 0.375 -0.484375 0.875q0 
0.328125 0.203125 0.59375q0.203125 0.265625 0.640625 0.4375q0.25 0.09375 
1.46875 0.4375q1.765625 0.46875 2.46875 0.765625q0.703125 0.296875 1.09375 
0.875q0.40625 0.578125 0.40625 1.4375q0 0.828125 -0.484375 1.578125q-0.484375 
0.734375 -1.40625 1.140625q-0.921875 0.390625 -2.078125 0.390625q-1.921875 0 
-2.9375 -0.796875q-1.0 -0.796875 -1.28125 -
 2.359375zm9.96875 2.9375l0 -13.59375l1.671875 0l0 13.59375l-1.671875 
0zm4.191681 -11.6875l0 -1.90625l1.671875 0l0 1.90625l-1.671875 0zm0 11.6875l0 
-9.859375l1.671875 0l0 9.859375l-1.671875 0zm10.519836 0l0 -1.25q-0.9375 
1.46875 -2.75 1.46875q-1.171875 0 -2.171875 -0.640625q-0.984375 -0.65625 
-1.53125 -1.8125q-0.53125 -1.171875 -0.53125 -2.6875q0 -1.46875 0.484375 
-2.671875q0.5 -1.203125 1.46875 -1.84375q0.984375 -0.640625 2.203125 
-0.640625q0.890625 0 1.578125 0.375q0.703125 0.375 1.140625 0.984375l0 
-4.875l1.65625 0l0 13.59375l-1.546875 0zm-5.28125 -4.921875q0 1.890625 0.796875 
2.828125q0.8125 0.9375 1.890625 0.9375q1.09375 0 1.859375 -0.890625q0.765625 
-0.890625 0.765625 -2.734375q0 -2.015625 -0.78125 -2.953125q-0.78125 -0.953125 
-1.921875 -0.953125q-1.109375 0 -1.859375 0.90625q-0.75 0.90625 -0.75 
2.859375zm16.016327 1.75l1.71875 0.21875q-0.40625 1.5 -1.515625 
2.34375q-1.09375 0.828125 -2.8125 0.828125q-2.15625 0 -3.421875 
-1.328125q-1.265625 -1.328125 -1.265625 -3.734375q0 -2.48
 4375 1.265625 -3.859375q1.28125 -1.375 3.328125 -1.375q1.984375 0 3.234375 
1.34375q1.25 1.34375 1.25 3.796875q0 0.140625 -0.015625 0.4375l-7.34375 
0q0.09375 1.625 0.921875 2.484375q0.828125 0.859375 2.0625 0.859375q0.90625 0 
1.546875 -0.46875q0.65625 -0.484375 1.046875 -1.546875zm-5.484375 -2.703125l5.5 
0q-0.109375 -1.234375 -0.625 -1.859375q-0.796875 -0.96875 -2.078125 
-0.96875q-1.140625 0 -1.9375 0.78125q-0.78125 0.765625 -0.859375 2.046875z" 
fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d="m175.0 
130.0l185.19684 0l0 152.0l-185.19684 0z" fill-rule="nonzero"></path><path 
stroke="#ff0000" stroke-width="4.0" stroke-linejoin="round" 
stroke-linecap="butt" d="m175.0 130.0l185.19684 0l0 152.0l-185.19684 0z" 
fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d="m264.7979 
133.24672l190.01575 0l0 145.51183l-190.01575 0z" 
fill-rule="nonzero"></path><path stroke="#4a86e8" stroke-width="4.0" 
stroke-linejoin="round" stroke-linecap="butt" d="m264.7979 133.246
 72l190.01575 0l0 145.51183l-190.01575 0z" fill-rule="nonzero"></path><path 
fill="#000000" fill-opacity="0.0" d="m362.6378 129.99738l185.19687 0l0 
152.0l-185.19687 0z" fill-rule="nonzero"></path><path stroke="#00ff00" 
stroke-width="4.0" stroke-linejoin="round" stroke-linecap="butt" d="m362.6378 
129.99738l185.19687 0l0 152.0l-185.19687 0z" fill-rule="nonzero"></path><path 
fill="#000000" fill-opacity="0.0" d="m457.9265 133.24672l180.34644 0l0 
145.51183l-180.34644 0z" fill-rule="nonzero"></path><path stroke="#ff00ff" 
stroke-width="4.0" stroke-linejoin="round" stroke-linecap="butt" d="m457.9265 
133.24672l180.34644 0l0 145.51183l-180.34644 0z" 
fill-rule="nonzero"></path></g></svg>
-

http://git-wip-us.apache.org/repos/asf/flink/blob/844c874b/docs/apis/streaming/state.md
----------------------------------------------------------------------
diff --git a/docs/apis/streaming/state.md b/docs/apis/streaming/state.md
deleted file mode 100644
index f32d504..0000000
--- a/docs/apis/streaming/state.md
+++ /dev/null
@@ -1,295 +0,0 @@
----
-title: "Working with State"
-
-sub-nav-parent: fault_tolerance
-sub-nav-group: streaming
-sub-nav-pos: 1
----
-<!--
-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.
--->
-
-All transformations in Flink may look like functions (in the functional 
processing terminology), but
-are in fact stateful operators. You can make *every* transformation (`map`, 
`filter`, etc) stateful
-by using Flink's state interface or checkpointing instance fields of your 
function. You can register
-any instance field
-as ***managed*** state by implementing an interface. In this case, and also in 
the case of using
-Flink's native state interface, Flink will automatically take consistent 
snapshots of your state
-periodically, and restore its value in the case of a failure.
-
-The end effect is that updates to any form of state are the same under 
failure-free execution and
-execution under failures.
-
-First, we look at how to make instance fields consistent under failures, and 
then we look at
-Flink's state interface.
-
-By default state checkpoints will be stored in-memory at the JobManager. For 
proper persistence of large
-state, Flink supports storing the checkpoints on file systems (HDFS, S3, or 
any mounted POSIX file system),
-which can be configured in the `flink-conf.yaml` or via 
`StreamExecutionEnvironment.setStateBackend(…)`.
-See [state backends]({{ site.baseurl }}/apis/streaming/state_backends.html) 
for information
-about the available state backends and how to configure them.
-
-* ToC
-{:toc}
-
-## Using the Key/Value State Interface
-
-The Key/Value state interface provides access to different types of state that 
are all scoped to
-the key of the current input element. This means that this type of state can 
only be used
-on a `KeyedStream`, which can be created via `stream.keyBy(…)`.
-
-Now, we will first look at the different types of state available and then we 
will see
-how they can be used in a program. The available state primitives are:
-
-* `ValueState<T>`: This keeps a value that can be updated and
-retrieved (scoped to key of the input element, mentioned above, so there will 
possibly be one value
-for each key that the operation sees). The value can be set using `update(T)` 
and retrieved using
-`T value()`.
-
-* `ListState<T>`: This keeps a list of elements. You can append elements and 
retrieve an `Iterable`
-over all currently stored elements. Elements are added using `add(T)`, the 
Iterable can
-be retrieved using `Iterable<T> get()`.
-
-* `ReducingState<T>`: This keeps a single value that represents the 
aggregation of all values
-added to the state. The interface is the same as for `ListState` but elements 
added using
-`add(T)` are reduced to an aggregate using a specified `ReduceFunction`.
-
-All types of state also have a method `clear()` that clears the state for the 
currently
-active key (i.e. the key of the input element).
-
-It is important to keep in mind that these state objects are only used for 
interfacing
-with state. The state is not necessarily stored inside but might reside on 
disk or somewhere else.
-The second thing to keep in mind is that the value you get from the state
-depend on the key of the input element. So the value you get in one invocation 
of your
-user function can be different from the one you get in another invocation if 
the key of
-the element is different.
-
-To get a state handle you have to create a `StateDescriptor` this holds the 
name of the state
-(as we will later see you can create several states, and they have to have 
unique names so
-that you can reference them), the type of the values that the state holds and 
possibly
-a user-specified function, such as a `ReduceFunction`. Depending on what type 
of state you
-want to retrieve you create one of `ValueStateDescriptor`, 
`ListStateDescriptor` or
-`ReducingStateDescriptor`.
-
-State is accessed using the `RuntimeContext`, so it is only possible in *rich 
functions*.
-Please see [here]({{ site.baseurl 
}}/apis/common/#specifying-transformation-functions) for
-information about that but we will also see an example shortly. The 
`RuntimeContext` that
-is available in a `RichFunction` has these methods for accessing state:
-
-* `ValueState<T> getState(ValueStateDescriptor<T>)`
-* `ReducingState<T> getReducingState(ReducingStateDescriptor<T>)`
-* `ListState<T> getListState(ListStateDescriptor<T>)`
-
-This is an example `FlatMapFunction` that shows how all of the parts fit 
together:
-
-{% highlight java %}
-public class CountWindowAverage extends RichFlatMapFunction<Tuple2<Long, 
Long>, Tuple2<Long, Long>> {
-
-    /**
-     * The ValueState handle. The first field is the count, the second field a 
running sum.
-     */
-    private transient ValueState<Tuple2<Long, Long>> sum;
-
-    @Override
-    public void flatMap(Tuple2<Long, Long> input, Collector<Tuple2<Long, 
Long>> out) throws Exception {
-
-        // access the state value
-        Tuple2<Long, Long> currentSum = sum.value();
-
-        // update the count
-        currentSum.f0 += 1;
-
-        // add the second field of the input value
-        currentSum.f1 += input.f1;
-
-        // update the state
-        sum.update(currentSum);
-
-        // if the count reaches 2, emit the average and clear the state
-        if (currentSum.f0 >= 2) {
-            out.collect(new Tuple2<>(input.f0, currentSum.f1 / currentSum.f0));
-            sum.clear();
-        }
-    }
-
-    @Override
-    public void open(Configuration config) {
-        ValueStateDescriptor<Tuple2<Long, Long>> descriptor =
-                new ValueStateDescriptor<>(
-                        "average", // the state name
-                        TypeInformation.of(new TypeHint<Tuple2<Long, Long>>() 
{}), // type information
-                        Tuple2.of(0L, 0L)); // default value of the state, if 
nothing was set
-        sum = getRuntimeContext().getState(descriptor);
-    }
-}
-
-// this can be used in a streaming program like this (assuming we have a 
StreamExecutionEnvironment env)
-env.fromElements(Tuple2.of(1L, 3L), Tuple2.of(1L, 5L), Tuple2.of(1L, 7L), 
Tuple2.of(1L, 4L), Tuple2.of(1L, 2L))
-        .keyBy(0)
-        .flatMap(new CountWindowAverage())
-        .print();
-
-// the printed output will be (1,4) and (1,5)
-{% endhighlight %}
-
-This example implements a poor man's counting window. We key the tuples by the 
first field
-(in the example all have the same key `1`). The function stores the count and 
a running sum in
-a `ValueState`, once the count reaches 2 it will emit the average and clear 
the state so that
-we start over from `0`. Note that this would keep a different state value for 
each different input
-key if we had tuples with different values in the first field.
-
-### State in the Scala DataStream API
-
-In addition to the interface described above, the Scala API has shortcuts for 
stateful
-`map()` or `flatMap()` functions with a single `ValueState` on `KeyedStream`. 
The user function
-gets the current value of the `ValueState` in an `Option` and must return an 
updated value that
-will be used to update the state.
-
-{% highlight scala %}
-val stream: DataStream[(String, Int)] = ...
-
-val counts: DataStream[(String, Int)] = stream
-  .keyBy(_._1)
-  .mapWithState((in: (String, Int), count: Option[Int]) =>
-    count match {
-      case Some(c) => ( (in._1, c), Some(c + in._2) )
-      case None => ( (in._1, 0), Some(in._2) )
-    })
-{% endhighlight %}
-
-## Checkpointing Instance Fields
-
-Instance fields can be checkpointed by using the `Checkpointed` interface.
-
-When the user-defined function implements the `Checkpointed` interface, the 
`snapshotState(…)` and `restoreState(…)`
-methods will be executed to draw and restore function state.
-
-In addition to that, user functions can also implement the 
`CheckpointNotifier` interface to receive notifications on
-completed checkpoints via the `notifyCheckpointComplete(long checkpointId)` 
method.
-Note that there is no guarantee for the user function to receive a 
notification if a failure happens between
-checkpoint completion and notification. The notifications should hence be 
treated in a way that notifications from
-later checkpoints can subsume missing notifications.
-
-The above example for `ValueState` can be implemented using instance fields 
like this:
-
-{% highlight java %}
-
-public class CountWindowAverage
-        extends RichFlatMapFunction<Tuple2<Long, Long>, Tuple2<Long, Long>>
-        implements Checkpointed<Tuple2<Long, Long>> {
-
-    private Tuple2<Long, Long> sum = null;
-
-    @Override
-    public void flatMap(Tuple2<Long, Long> input, Collector<Tuple2<Long, 
Long>> out) throws Exception {
-
-        // update the count
-        sum.f0 += 1;
-
-        // add the second field of the input value
-        sum.f1 += input.f1;
-
-
-        // if the count reaches 2, emit the average and clear the state
-        if (sum.f0 >= 2) {
-            out.collect(new Tuple2<>(input.f0, sum.f1 / sum.f0));
-            sum = Tuple2.of(0L, 0L);
-        }
-    }
-
-    @Override
-    public void open(Configuration config) {
-        if (sum == null) {
-            // only recreate if null
-            // restoreState will be called before open()
-            // so this will already set the sum to the restored value
-            sum = Tuple2.of(0L, 0L);
-        }
-    }
-
-    // regularly persists state during normal operation
-    @Override
-    public Serializable snapshotState(long checkpointId, long 
checkpointTimestamp) {
-        return sum;
-    }
-
-    // restores state on recovery from failure
-    @Override
-    public void restoreState(Tuple2<Long, Long> state) {
-        sum = state;
-    }
-}
-{% endhighlight %}
-
-## Stateful Source Functions
-
-Stateful sources require a bit more care as opposed to other operators.
-In order to make the updates to the state and output collection atomic 
(required for exactly-once semantics
-on failure/recovery), the user is required to get a lock from the source's 
context.
-
-{% highlight java %}
-public static class CounterSource
-        extends RichParallelSourceFunction<Long>
-        implements Checkpointed<Long> {
-
-    /**  current offset for exactly once semantics */
-    private long offset;
-
-    /** flag for job cancellation */
-    private volatile boolean isRunning = true;
-
-    @Override
-    public void run(SourceContext<Long> ctx) {
-        final Object lock = ctx.getCheckpointLock();
-
-        while (isRunning) {
-            // output and state update are atomic
-            synchronized (lock) {
-                ctx.collect(offset);
-                offset += 1;
-            }
-        }
-    }
-
-    @Override
-    public void cancel() {
-        isRunning = false;
-    }
-
-    @Override
-    public Long snapshotState(long checkpointId, long checkpointTimestamp) {
-        return offset;
-
-    }
-
-    @Override
-       public void restoreState(Long state) {
-        offset = state;
-    }
-}
-{% endhighlight %}
-
-Some operators might need the information when a checkpoint is fully 
acknowledged by Flink to communicate that with the outside world. In this case 
see the `flink.streaming.api.checkpoint.CheckpointNotifier` interface.
-
-## State Checkpoints in Iterative Jobs
-
-Flink currently only provides processing guarantees for jobs without 
iterations. Enabling checkpointing on an iterative job causes an exception. In 
order to force checkpointing on an iterative program the user needs to set a 
special flag when enabling checkpointing: `env.enableCheckpointing(interval, 
force = true)`.
-
-Please note that records in flight in the loop edges (and the state changes 
associated with them) will be lost during failure.
-
-{% top %}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flink/blob/844c874b/docs/apis/streaming/state_backends.md
----------------------------------------------------------------------
diff --git a/docs/apis/streaming/state_backends.md 
b/docs/apis/streaming/state_backends.md
deleted file mode 100644
index 027148a..0000000
--- a/docs/apis/streaming/state_backends.md
+++ /dev/null
@@ -1,163 +0,0 @@
----
-title:  "State Backends"
-sub-nav-group: streaming
-sub-nav-pos: 2
-sub-nav-parent: fault_tolerance
----
-<!--
-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.
--->
-
-Programs written in the [Data Stream API](index.html) often hold state in 
various forms:
-
-- Windows gather elements or aggregates until they are triggered
-- Transformation functions may use the key/value state interface to store 
values
-- Transformation functions may implement the `Checkpointed` interface to make 
their local variables fault tolerant
-
-See also [Working with State](state.html) in the streaming API guide.
-
-When checkpointing is activated, such state is persisted upon checkpoints to 
guard against data loss and recover consistently.
-How the state is represented internally, and how and where it is persisted 
upon checkpoints depends on the
-chosen **State Backend**.
-
-* ToC
-{:toc}
-
-## Available State Backends
-
-Out of the box, Flink bundles these state backends:
-
- - *MemoryStateBacked*
- - *FsStateBackend*
- - *RocksDBStateBackend*
-
-If nothing else is configured, the system will use the MemoryStateBacked.
-
-
-### The MemoryStateBackend
-
-The *MemoryStateBacked* holds data internally as objects on the Java heap. 
Key/value state and window operators hold hash tables
-that store the values, triggers, etc.
-
-Upon checkpoints, this state backend will snapshot the state and send it as 
part of the checkpoint acknowledgement messages to the
-JobManager (master), which stores it on its heap as well.
-
-Limitations of the MemoryStateBackend:
-
-  - The size of each individual state is by default limited to 5 MB. This 
value can be increased in the constructor of the MemoryStateBackend.
-  - Irrespective of the configured maximal state size, the state cannot be 
larger than the akka frame size (see [Configuration]({{ site.baseurl 
}}/setup/config.html)).
-  - The aggregate state must fit into the JobManager memory.
-
-The MemoryStateBackend is encouraged for:
-
-  - Local development and debugging
-  - Jobs that do hold little state, such as jobs that consist only of 
record-at-a-time functions (Map, FlatMap, Filter, ...). The Kafka Consumer 
requires very little state.
-
-
-### The FsStateBackend
-
-The *FsStateBackend* is configured with a file system URL (type, address, 
path), such as "hdfs://namenode:40010/flink/checkpoints" or 
"file:///data/flink/checkpoints".
-
-The FsStateBackend holds in-flight data in the TaskManager's memory. Upon 
checkpointing, it writes state snapshots into files in the configured file 
system and directory. Minimal metadata is stored in the JobManager's memory 
(or, in high-availability mode, in the metadata checkpoint).
-
-The FsStateBackend is encouraged for:
-
-  - Jobs with large state, long windows, large key/value states.
-  - All high-availability setups.
-
-### The RocksDBStateBackend
-
-The *RocksDBStateBackend* is configured with a file system URL (type, address, 
path), such as "hdfs://namenode:40010/flink/checkpoints" or 
"file:///data/flink/checkpoints".
-
-The RocksDBStateBackend holds in-flight data in a 
[RocksDB](http://rocksdb.org) data base
-that is (per default) stored in the TaskManager data directories. Upon 
checkpointing, the whole
-RocksDB data base will be checkpointed into the configured file system and 
directory. Minimal
-metadata is stored in the JobManager's memory (or, in high-availability mode, 
in the metadata checkpoint).
-
-The RocksDBStateBackend is encouraged for:
-
-  - Jobs with very large state, long windows, large key/value states.
-  - All high-availability setups.
-
-Note that the amount of state that you can keep is only limited by the amount 
of disc space available.
-This allows keeping very large state, compared to the FsStateBackend that 
keeps state in memory.
-This also means, however, that the maximum throughput that can be achieved 
will be lower with
-this state backend.
-
-**NOTE:** To use the RocksDBStateBackend you also have to add the correct 
maven dependency to your
-project:
-
-{% highlight xml %}
-<dependency>
-  <groupId>org.apache.flink</groupId>
-  <artifactId>flink-statebackend-rocksdb{{ site.scala_version_suffix 
}}</artifactId>
-  <version>{{site.version }}</version>
-</dependency>
-{% endhighlight %}
-
-The backend is currently not part of the binary distribution. See
-[here]({{ 
site.baseurl}}/apis/cluster_execution.html#linking-with-modules-not-contained-in-the-binary-distribution)
-for an explanation of how to include it for cluster execution.
-
-## Configuring a State Backend
-
-State backends can be configured per job. In addition, you can define a 
default state backend to be used when the
-job does not explicitly define a state backend.
-
-
-### Setting the Per-job State Backend
-
-The per-job state backend is set on the `StreamExecutionEnvironment` of the 
job, as shown in the example below:
-
-<div class="codetabs" markdown="1">
-<div data-lang="java" markdown="1">
-{% highlight java %}
-StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment();
-env.setStateBackend(new 
FsStateBackend("hdfs://namenode:40010/flink/checkpoints"));
-{% endhighlight %}
-</div>
-<div data-lang="scala" markdown="1">
-{% highlight scala %}
-val env = StreamExecutionEnvironment.getExecutionEnvironment()
-env.setStateBackend(new 
FsStateBackend("hdfs://namenode:40010/flink/checkpoints"))
-{% endhighlight %}
-</div>
-</div>
-
-
-### Setting Default State Backend
-
-A default state backend can be configured in the `flink-conf.yaml`, using the 
configuration key `state.backend`.
-
-Possible values for the config entry are *jobmanager* (MemoryStateBackend), 
*filesystem* (FsStateBackend), or the fully qualified class
-name of the class that implements the state backend factory 
[FsStateBackendFactory](https://github.com/apache/flink/blob/master/flink-runtime/src/main/java/org/apache/flink/runtime/state/filesystem/FsStateBackendFactory.java).
-
-In the case where the default state backend is set to *filesystem*, the entry 
`state.backend.fs.checkpointdir` defines the directory where the checkpoint 
data will be stored.
-
-A sample section in the configuration file could look as follows:
-
-~~~
-# The backend that will be used to store operator state checkpoints
-
-state.backend: filesystem
-
-
-# Directory for storing checkpoints
-
-state.backend.fs.checkpointdir: hdfs://namenode:40010/flink/checkpoints
-~~~

http://git-wip-us.apache.org/repos/asf/flink/blob/844c874b/docs/apis/streaming/storm_compatibility.md
----------------------------------------------------------------------
diff --git a/docs/apis/streaming/storm_compatibility.md 
b/docs/apis/streaming/storm_compatibility.md
deleted file mode 100644
index 94e0042..0000000
--- a/docs/apis/streaming/storm_compatibility.md
+++ /dev/null
@@ -1,287 +0,0 @@
----
-title: "Storm Compatibility"
-is_beta: true
-sub-nav-group: streaming
-sub-nav-pos: 9
----
-<!--
-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.
--->
-
-[Flink streaming](index.html) is compatible with Apache Storm interfaces and 
therefore allows
-reusing code that was implemented for Storm.
-
-You can:
-
-- execute a whole Storm `Topology` in Flink.
-- use Storm `Spout`/`Bolt` as source/operator in Flink streaming programs.
-
-This document shows how to use existing Storm code with Flink.
-
-* This will be replaced by the TOC
-{:toc}
-
-# Project Configuration
-
-Support for Storm is contained in the `flink-storm` Maven module.
-The code resides in the `org.apache.flink.storm` package.
-
-Add the following dependency to your `pom.xml` if you want to execute Storm 
code in Flink.
-
-~~~xml
-<dependency>
-       <groupId>org.apache.flink</groupId>
-       <artifactId>flink-storm{{ site.scala_version_suffix }}</artifactId>
-       <version>{{site.version}}</version>
-</dependency>
-~~~
-
-**Please note**: Do not add `storm-core` as a dependency. It is already 
included via `flink-storm`.
-
-**Please note**: `flink-storm` is not part of the provided binary Flink 
distribution.
-Thus, you need to include `flink-storm` classes (and their dependencies) in 
your program jar (also called ueber-jar or fat-jar) that is submitted to 
Flink's JobManager.
-See *WordCount Storm* within `flink-storm-examples/pom.xml` for an example how 
to package a jar correctly.
-
-If you want to avoid large ueber-jars, you can manually copy 
`storm-core-0.9.4.jar`, `json-simple-1.1.jar` and 
`flink-storm-{{site.version}}.jar` into Flink's `lib/` folder of each cluster 
node (*before* the cluster is started).
-For this case, it is sufficient to include only your own Spout and Bolt 
classes (and their internal dependencies) into the program jar.
-
-# Execute Storm Topologies
-
-Flink provides a Storm compatible API (`org.apache.flink.storm.api`) that 
offers replacements for the following classes:
-
-- `StormSubmitter` replaced by `FlinkSubmitter`
-- `NimbusClient` and `Client` replaced by `FlinkClient`
-- `LocalCluster` replaced by `FlinkLocalCluster`
-
-In order to submit a Storm topology to Flink, it is sufficient to replace the 
used Storm classes with their Flink replacements in the Storm *client code that 
assembles* the topology.
-The actual runtime code, ie, Spouts and Bolts, can be used *unmodified*.
-If a topology is executed in a remote cluster, parameters `nimbus.host` and 
`nimbus.thrift.port` are used as `jobmanger.rpc.address` and 
`jobmanger.rpc.port`, respectively.  If a parameter is not specified, the value 
is taken from `flink-conf.yaml`.
-
-<div class="codetabs" markdown="1">
-<div data-lang="java" markdown="1">
-~~~java
-TopologyBuilder builder = new TopologyBuilder(); // the Storm topology builder
-
-// actual topology assembling code and used Spouts/Bolts can be used as-is
-builder.setSpout("source", new FileSpout(inputFilePath));
-builder.setBolt("tokenizer", new BoltTokenizer()).shuffleGrouping("source");
-builder.setBolt("counter", new BoltCounter()).fieldsGrouping("tokenizer", new 
Fields("word"));
-builder.setBolt("sink", new 
BoltFileSink(outputFilePath)).shuffleGrouping("counter");
-
-Config conf = new Config();
-if(runLocal) { // submit to test cluster
-       // replaces: LocalCluster cluster = new LocalCluster();
-       FlinkLocalCluster cluster = new FlinkLocalCluster();
-       cluster.submitTopology("WordCount", conf, 
FlinkTopology.createTopology(builder));
-} else { // submit to remote cluster
-       // optional
-       // conf.put(Config.NIMBUS_HOST, "remoteHost");
-       // conf.put(Config.NIMBUS_THRIFT_PORT, 6123);
-       // replaces: StormSubmitter.submitTopology(topologyId, conf, 
builder.createTopology());
-       FlinkSubmitter.submitTopology("WordCount", conf, 
FlinkTopology.createTopology(builder));
-}
-~~~
-</div>
-</div>
-
-# Embed Storm Operators in Flink Streaming Programs
-
-As an alternative, Spouts and Bolts can be embedded into regular streaming 
programs.
-The Storm compatibility layer offers a wrapper classes for each, namely 
`SpoutWrapper` and `BoltWrapper` (`org.apache.flink.storm.wrappers`).
-
-Per default, both wrappers convert Storm output tuples to Flink's 
[Tuple]({{site.baseurl}}/apis/batch/index.html#tuples-and-case-classes) types 
(ie, `Tuple0` to `Tuple25` according to the number of fields of the Storm 
tuples).
-For single field output tuples a conversion to the field's data type is also 
possible (eg, `String` instead of `Tuple1<String>`).
-
-Because Flink cannot infer the output field types of Storm operators, it is 
required to specify the output type manually.
-In order to get the correct `TypeInformation` object, Flink's `TypeExtractor` 
can be used.
-
-## Embed Spouts
-
-In order to use a Spout as Flink source, use 
`StreamExecutionEnvironment.addSource(SourceFunction, TypeInformation)`.
-The Spout object is handed to the constructor of `SpoutWrapper<OUT>` that 
serves as first argument to `addSource(...)`.
-The generic type declaration `OUT` specifies the type of the source output 
stream.
-
-<div class="codetabs" markdown="1">
-<div data-lang="java" markdown="1">
-~~~java
-StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment();
-
-// stream has `raw` type (single field output streams only)
-DataStream<String> rawInput = env.addSource(
-       new SpoutWrapper<String>(new FileSpout(localFilePath), new String[] { 
Utils.DEFAULT_STREAM_ID }), // emit default output stream as raw type
-       TypeExtractor.getForClass(String.class)); // output type
-
-// process data stream
-[...]
-~~~
-</div>
-</div>
-
-If a Spout emits a finite number of tuples, `SpoutWrapper` can be configures 
to terminate automatically by setting `numberOfInvocations` parameter in its 
constructor.
-This allows the Flink program to shut down automatically after all data is 
processed.
-Per default the program will run until it is 
[canceled]({{site.baseurl}}/apis/cli.html) manually.
-
-
-## Embed Bolts
-
-In order to use a Bolt as Flink operator, use `DataStream.transform(String, 
TypeInformation, OneInputStreamOperator)`.
-The Bolt object is handed to the constructor of `BoltWrapper<IN,OUT>` that 
serves as last argument to `transform(...)`.
-The generic type declarations `IN` and `OUT` specify the type of the 
operator's input and output stream, respectively.
-
-<div class="codetabs" markdown="1">
-<div data-lang="java" markdown="1">
-~~~java
-StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment();
-DataStream<String> text = env.readTextFile(localFilePath);
-
-DataStream<Tuple2<String, Integer>> counts = text.transform(
-       "tokenizer", // operator name
-       TypeExtractor.getForObject(new Tuple2<String, Integer>("", 0)), // 
output type
-       new BoltWrapper<String, Tuple2<String, Integer>>(new BoltTokenizer())); 
// Bolt operator
-
-// do further processing
-[...]
-~~~
-</div>
-</div>
-
-### Named Attribute Access for Embedded Bolts
-
-Bolts can accesses input tuple fields via name (additionally to access via 
index).
-To use this feature with embedded Bolts, you need to have either a
-
- 1. [POJO]({{site.baseurl}}/apis/batch/index.html#pojos) type input stream or
- 2. [Tuple]({{site.baseurl}}/apis/batch/index.html#tuples-and-case-classes) 
type input stream and specify the input schema (i.e. name-to-index-mapping)
-
-For POJO input types, Flink accesses the fields via reflection.
-For this case, Flink expects either a corresponding public member variable or 
public getter method.
-For example, if a Bolt accesses a field via name `sentence` (eg, `String s = 
input.getStringByField("sentence");`), the input POJO class must have a member 
variable `public String sentence;` or method `public String getSentence() { ... 
};` (pay attention to camel-case naming).
-
-For `Tuple` input types, it is required to specify the input schema using 
Storm's `Fields` class.
-For this case, the constructor of `BoltWrapper` takes an additional argument: 
`new BoltWrapper<Tuple1<String>, ...>(..., new Fields("sentence"))`.
-The input type is `Tuple1<String>` and `Fields("sentence")` specify that 
`input.getStringByField("sentence")` is equivalent to `input.getString(0)`.
-
-See 
[BoltTokenizerWordCountPojo](https://github.com/apache/flink/tree/master/flink-contrib/flink-storm-examples/src/main/java/org/apache/flink/storm/wordcount/BoltTokenizerWordCountPojo.java)
 and 
[BoltTokenizerWordCountWithNames](https://github.com/apache/flink/tree/master/flink-contrib/flink-storm-examples/src/main/java/org/apache/flink/storm/wordcount/BoltTokenizerWordCountWithNames.java)
 for examples.
-
-## Configuring Spouts and Bolts
-
-In Storm, Spouts and Bolts can be configured with a globally distributed `Map` 
object that is given to `submitTopology(...)` method of `LocalCluster` or 
`StormSubmitter`.
-This `Map` is provided by the user next to the topology and gets forwarded as 
a parameter to the calls `Spout.open(...)` and `Bolt.prepare(...)`.
-If a whole topology is executed in Flink using `FlinkTopologyBuilder` etc., 
there is no special attention required &ndash; it works as in regular Storm.
-
-For embedded usage, Flink's configuration mechanism must be used.
-A global configuration can be set in a `StreamExecutionEnvironment` via 
`.getConfig().setGlobalJobParameters(...)`.
-Flink's regular `Configuration` class can be used to configure Spouts and 
Bolts.
-However, `Configuration` does not support arbitrary key data types as Storm 
does (only `String` keys are allowed).
-Thus, Flink additionally provides `StormConfig` class that can be used like a 
raw `Map` to provide full compatibility to Storm.
-
-<div class="codetabs" markdown="1">
-<div data-lang="java" markdown="1">
-~~~java
-StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment();
-
-StormConfig config = new StormConfig();
-// set config values
-[...]
-
-// set global Storm configuration
-env.getConfig().setGlobalJobParameters(config);
-
-// assemble program with embedded Spouts and/or Bolts
-[...]
-~~~
-</div>
-</div>
-
-## Multiple Output Streams
-
-Flink can also handle the declaration of multiple output streams for Spouts 
and Bolts.
-If a whole topology is executed in Flink using `FlinkTopologyBuilder` etc., 
there is no special attention required &ndash; it works as in regular Storm.
-
-For embedded usage, the output stream will be of data type 
`SplitStreamType<T>` and must be split by using `DataStream.split(...)` and 
`SplitStream.select(...)`.
-Flink provides the predefined output selector `StormStreamSelector<T>` for 
`.split(...)` already.
-Furthermore, the wrapper type `SplitStreamTuple<T>` can be removed using 
`SplitStreamMapper<T>`.
-
-<div class="codetabs" markdown="1">
-<div data-lang="java" markdown="1">
-~~~java
-[...]
-
-// get DataStream from Spout or Bolt which declares two output streams s1 and 
s2 with output type SomeType
-DataStream<SplitStreamType<SomeType>> multiStream = ...
-
-SplitStream<SplitStreamType<SomeType>> splitStream = multiStream.split(new 
StormStreamSelector<SomeType>());
-
-// remove SplitStreamType using SplitStreamMapper to get data stream of type 
SomeType
-DataStream<SomeType> s1 = splitStream.select("s1").map(new 
SplitStreamMapper<SomeType>()).returns(SomeType.class);
-DataStream<SomeType> s2 = splitStream.select("s2").map(new 
SplitStreamMapper<SomeType>()).returns(SomeType.class);
-
-// do further processing on s1 and s2
-[...]
-~~~
-</div>
-</div>
-
-See 
[SpoutSplitExample.java](https://github.com/apache/flink/tree/master/flink-contrib/flink-storm-examples/src/main/java/org/apache/flink/storm/split/SpoutSplitExample.java)
 for a full example.
-
-# Flink Extensions
-
-## Finite Spouts
-
-In Flink, streaming sources can be finite, ie, emit a finite number of records 
and stop after emitting the last record. However, Spouts usually emit infinite 
streams.
-The bridge between the two approaches is the `FiniteSpout` interface which, in 
addition to `IRichSpout`, contains a `reachedEnd()` method, where the user can 
specify a stopping-condition.
-The user can create a finite Spout by implementing this interface instead of 
(or additionally to) `IRichSpout`, and implementing the `reachedEnd()` method 
in addition.
-In contrast to a `SpoutWrapper` that is configured to emit a finite number of 
tuples, `FiniteSpout` interface allows to implement more complex termination 
criteria.
-
-Although finite Spouts are not necessary to embed Spouts into a Flink 
streaming program or to submit a whole Storm topology to Flink, there are cases 
where they may come in handy:
-
- * to achieve that a native Spout behaves the same way as a finite Flink 
source with minimal modifications
- * the user wants to process a stream only for some time; after that, the 
Spout can stop automatically
- * reading a file into a stream
- * for testing purposes
-
-An example of a finite Spout that emits records for 10 seconds only:
-
-<div class="codetabs" markdown="1">
-<div data-lang="java" markdown="1">
-~~~java
-public class TimedFiniteSpout extends BaseRichSpout implements FiniteSpout {
-       [...] // implement open(), nextTuple(), ...
-
-       private long starttime = System.currentTimeMillis();
-
-       public boolean reachedEnd() {
-               return System.currentTimeMillis() - starttime > 10000l;
-       }
-}
-~~~
-</div>
-</div>
-
-# Storm Compatibility Examples
-
-You can find more examples in Maven module `flink-storm-examples`.
-For the different versions of WordCount, see 
[README.md](https://github.com/apache/flink/tree/master/flink-contrib/flink-storm-examples/README.md).
-To run the examples, you need to assemble a correct jar file.
-`flink-storm-examples-{{ site.version }}.jar` is **no** valid jar file for job 
execution (it is only a standard maven artifact).
-
-There are example jars for embedded Spout and Bolt, namely 
`WordCount-SpoutSource.jar` and `WordCount-BoltTokenizer.jar`, respectively.
-Compare `pom.xml` to see how both jars are built.
-Furthermore, there is one example for whole Storm topologies 
(`WordCount-StormTopology.jar`).
-
-You can run each of those examples via `bin/flink run <jarname>.jar`. The 
correct entry point class is contained in each jar's manifest file.

Reply via email to