diff --git a/README.md b/README.md new file mode 100644 index 0000000..8dd9259 --- /dev/null +++ b/README.md @@ -0,0 +1,53 @@ +# ReliableAI 2022 Course Project + +This is the project for Reliable and Trustworthy Artificial Intelligence course at ETH Zurich. + +## Folder structure +In the directory `code` you can find several files. +File `networks.py` and `resnet.py` contain encodings of fully connected, convolutional and residual neural network architectures as PyTorch classes. +The architectures extend `nn.Module` object and consist of standard PyTorch layers (e.g. `Linear`, `Flatten`, `ReLU`, `Conv2d`). Please note that first layer of each network performs normalization of the input image. +File `verifier.py` contains a template of verifier. Loading of the stored networks and test cases is already implemented in `main` function. If you decide to modify `main` function, please ensure that parsing of the test cases works correctly. Your task is to modify `analyze` function by building upon DeepPoly convex relaxation. Note that provided verifier template is guaranteed to achieve **0** points (by always outputting `not verified`). + +In folder `nets` you can find 10 neural networks (3 fully connected, 4 convolutional, and 3 residual). These networks are loaded using PyTorch in `verifier.py`. +You can find architectures of these networks in `networks.py`. +Note that for ResNet we prepend Normalization layer after loading the network (see `get_net` function in `verifier.py`). +Name of each network contains the dataset the network is trained used on, e.g. `net3_cifar10_fc3.pt` is network which receives CIFAR-10 images as inputs. +In folder `examples` you can find 10 subfolders. Each subfolder is associated with one of the 10 networks. In a subfolder corresponding to a network, you can find 2 example test cases for this network. +As explained in the lecture, these test cases **are not** part of the set of test cases which we will use for the final evaluation, and they are only here for you to develop your verifier. + +## Setup instructions + +We recommend you to install Python virtual environment to ensure dependencies are same as the ones we will use for evaluation. +To evaluate your solution, we are going to use Python 3.7. +You can create virtual environment and install the dependencies using the following commands: + +```bash +$ virtualenv venv --python=python3.7 +$ source venv/bin/activate +$ pip install -r requirements.txt +``` + +## Running the verifier + +We will run your verifier from `code` directory using the command: + +```bash +$ python verifier.py --net {net} --spec ../examples/{net}/img{test_idx}_{eps}.txt +``` + +In this command, `{net}` is equal to one of the following values (each representing one of the networks we want to verify): `net1, net2, net3, net4, net5, net6, net7, net8, net9, net10`. +`test_idx` is an integer representing index of the test case, while `eps` is perturbation that verifier should certify in this test case. + +To test your verifier, you can run for example: + +```bash +$ python verifier.py --net net1 --spec ../examples/net1/img1_0.0500.txt +``` + +To evaluate the verifier on all networks and sample test cases, we provide the evaluation script. +You can run this script using the following commands: + +```bash +chmod +x evaluate +./evaluate ../examples +``` diff --git a/code/evaluate b/code/evaluate new file mode 100755 index 0000000..34f1e28 --- /dev/null +++ b/code/evaluate @@ -0,0 +1,13 @@ +#!/bin/bash + +rm $1/res.txt +for net in {1..10} +do + echo Evaluating network net${net}... + for spec in `ls $1/net${net}/` + do + echo ${spec} + res=$(python verifier.py --net net${net} --spec $1/net${net}/${spec}) + echo net${k}_${net},$spec,$res >> $1/res.txt + done +done diff --git a/code/networks.py b/code/networks.py new file mode 100644 index 0000000..8ea6ac9 --- /dev/null +++ b/code/networks.py @@ -0,0 +1,129 @@ +import torch +import torch.nn as nn +from resnet import ResNet, BasicBlock + +class Normalization(nn.Module): + + def __init__(self, device, dataset): + super(Normalization, self).__init__() + if dataset == 'mnist': + self.mean = torch.FloatTensor([0.1307]).view((1, 1, 1, 1)).to(device) + self.sigma = torch.FloatTensor([0.3081]).view((1, 1, 1, 1)).to(device) + elif dataset == 'cifar10': + self.mean = torch.FloatTensor([0.4914, 0.4822, 0.4465]).view((1, 3, 1, 1)).to(device) + self.sigma = torch.FloatTensor([0.2023, 0.1994, 0.201]).view((1, 3, 1, 1)).to(device) + else: + assert False + + def forward(self, x): + return (x - self.mean) / self.sigma + + +class FullyConnected(nn.Module): + + def __init__(self, device, dataset, input_size, input_channels, fc_layers, act='relu'): + super(FullyConnected, self).__init__() + + layers = [Normalization(device, dataset), nn.Flatten()] + prev_fc_size = input_size * input_size * input_channels + for i, fc_size in enumerate(fc_layers): + layers += [nn.Linear(prev_fc_size, fc_size)] + if i + 1 < len(fc_layers): + if act == 'relu': + layers += [nn.ReLU()] + else: + assert False + prev_fc_size = fc_size + self.layers = nn.Sequential(*layers) + + def forward(self, x): + return self.layers(x) + + +class Conv(nn.Module): + + def __init__(self, device, dataset, input_size, input_channels, conv_layers, fc_layers, n_class=10): + super(Conv, self).__init__() + + self.input_size = input_size + self.n_class = n_class + + layers = [Normalization(device, dataset)] + prev_channels = input_channels + img_dim = input_size + + for n_channels, kernel_size, stride, padding in conv_layers: + layers += [ + nn.Conv2d(prev_channels, n_channels, kernel_size, stride=stride, padding=padding), + nn.ReLU(), + ] + prev_channels = n_channels + img_dim = img_dim // stride + layers += [nn.Flatten()] + + prev_fc_size = prev_channels * img_dim * img_dim + for i, fc_size in enumerate(fc_layers): + layers += [nn.Linear(prev_fc_size, fc_size)] + if i + 1 < len(fc_layers): + layers += [nn.ReLU()] + prev_fc_size = fc_size + self.layers = nn.Sequential(*layers) + + def forward(self, x): + return self.layers(x) + + +class NormalizedResnet(nn.Module): + + def __init__(self, device, resnet): + super(NormalizedResnet, self).__init__() + + self.normalization = Normalization(device, 'cifar10') + self.resnet = resnet + + def forward(self, x): + x = self.normalization(x) + x = self.resnet(x) + return x + + +def get_net_name(net): + net_names = { + 'net1': 'net1_mnist_fc1.pt', + 'net2': 'net2_mnist_fc2.pt', + 'net3': 'net3_cifar10_fc3.pt', + 'net4': 'net4_mnist_conv1.pt', + 'net5': 'net5_mnist_conv2.pt', + 'net6': 'net6_cifar10_conv2.pt', + 'net7': 'net7_mnist_conv3.pt', + 'net8': 'net8_cifar10_resnet_2b.pt', + 'net9': 'net9_cifar10_resnet_2b2_bn.pt', + 'net10': 'net10_cifar10_resnet_4b.pt', + } + return net_names[net] + +def get_network(device, net): + if net == 'net1': + return FullyConnected(device, 'mnist', 28, 1, [50, 10]) + elif net == 'net2': + return FullyConnected(device, 'mnist', 28, 1, [100, 50, 10]) + elif net == 'net3': + return FullyConnected(device, 'cifar10', 32, 3, [100, 100, 10]) + elif net == 'net4': + return Conv(device, 'mnist', 28, 1, [(16, 3, 2, 1)], [100, 10], 10) + elif net == 'net5': + return Conv(device, 'mnist', 28, 1, [(16, 4, 2, 1), (32, 4, 2, 1)], [100, 10], 10) + elif net == 'net6': + return Conv(device, 'cifar10', 32, 3, [(16, 4, 2, 1), (32, 4, 2, 1)], [100, 10], 10) + elif net == 'net7': + return Conv(device, 'mnist', 28, 1, [(16, 4, 2, 1), (64, 4, 2, 1)], [100, 100, 10], 10) + elif net == 'net8': + return ResNet(BasicBlock, num_stages=1, num_blocks=2, in_planes=8, bn=False, last_layer="dense") + elif net == 'net9': + return ResNet( + BasicBlock, num_stages=2, num_blocks=1, in_planes=16, + bn=True, last_layer="dense", stride=[2, 2, 2]) + elif net == 'net10': + return ResNet(BasicBlock, num_stages=2, num_blocks=2, in_planes=8, bn=False, last_layer="dense") + assert False + diff --git a/code/resnet.py b/code/resnet.py new file mode 100644 index 0000000..d1c9041 --- /dev/null +++ b/code/resnet.py @@ -0,0 +1,222 @@ +import torch +import torch.nn as nn +from torch import Tensor +from typing import List, Optional, Sequence, Tuple, Type + + +class ResidualBlock(nn.Module): + def __init__( + self, + path_a: nn.Sequential, + path_b: nn.Sequential, + ) -> None: + super(ResidualBlock, self).__init__() + self.path_a = path_a + self.path_b = path_b + + def forward(self, x: Tensor) -> Tensor: + out = self.path_a(x) + self.path_b(x) + return out + + +class BasicBlock(ResidualBlock, nn.Module): + expansion = 1 + + in_planes: int + planes: int + stride: int + bn: bool + kernel: int + + out_dim: int + + def __init__( + self, + in_planes: int, + planes: int, + stride: int = 1, + bn: bool = True, + kernel: int = 3, + in_dim: int = -1, + ) -> None: + self.in_planes = in_planes + self.planes = planes + self.stride = stride + self.bn = bn + self.kernel = kernel + + kernel_size = kernel + assert kernel_size in [1, 2, 3], "kernel not supported!" + p_1 = 1 if kernel_size > 1 else 0 + p_2 = 1 if kernel_size > 2 else 0 + + layers_b: List[nn.Module] = [] + layers_b.append( + nn.Conv2d( + in_planes, + planes, + kernel_size=kernel_size, + stride=stride, + padding=p_1, + bias=(not bn), + ) + ) + _, _, in_dim = self._getShapeConv( + (in_planes, in_dim, in_dim), + (self.in_planes, kernel_size, kernel_size), + stride=stride, + padding=p_1, + ) + + if bn: + layers_b.append(nn.BatchNorm2d(planes)) + layers_b.append(nn.ReLU()) + layers_b.append( + nn.Conv2d( + planes, + self.expansion * planes, + kernel_size=kernel_size, + stride=1, + padding=p_2, + bias=(not bn), + ) + ) + _, _, in_dim = self._getShapeConv( + (planes, in_dim, in_dim), + (self.in_planes, kernel_size, kernel_size), + stride=1, + padding=p_2, + ) + if bn: + layers_b.append(nn.BatchNorm2d(self.expansion * planes)) + path_b = nn.Sequential(*layers_b) + + layers_a: List[nn.Module] = [torch.nn.Identity()] + if stride != 1 or in_planes != self.expansion * planes: + layers_a.append( + nn.Conv2d( + in_planes, + self.expansion * planes, + kernel_size=1, + stride=stride, + bias=(not bn), + ) + ) + if bn: + layers_a.append(nn.BatchNorm2d(self.expansion * planes)) + path_a = nn.Sequential(*layers_a) + self.out_dim = in_dim + super(BasicBlock, self).__init__(path_a, path_b) + + def _getShapeConv( + self, + in_shape: Tuple[int, int, int], + conv_shape: Tuple[int, ...], + stride: int = 1, + padding: int = 0, + ) -> Tuple[int, int, int]: + inChan, inH, inW = in_shape + outChan, kH, kW = conv_shape[:3] + + outH = 1 + int((2 * padding + inH - kH) / stride) + outW = 1 + int((2 * padding + inW - kW) / stride) + return (outChan, outH, outW) + +def getShapeConv( + in_shape: Tuple[int, int, int], + conv_shape: Tuple[int, ...], + stride: int = 1, + padding: int = 0, +) -> Tuple[int, int, int]: + inChan, inH, inW = in_shape + outChan, kH, kW = conv_shape[:3] + + outH = 1 + int((2 * padding + inH - kH) / stride) + outW = 1 + int((2 * padding + inW - kW) / stride) + return (outChan, outH, outW) + + +class ResNet(nn.Sequential): + def __init__( + self, + block: Type[BasicBlock], + in_ch: int = 3, + num_stages: int = 1, + num_blocks: int = 2, + num_classes: int = 10, + in_planes: int = 64, + bn: bool = True, + last_layer: str = "dense", + in_dim: int = 32, + stride: Optional[Sequence[int]] = None, + ): + layers: List[nn.Module] = [] + self.in_planes = in_planes + if stride is None: + stride = (num_stages + 1) * [2] + + layers.append( + nn.Conv2d( + in_ch, + self.in_planes, + kernel_size=3, + stride=stride[0], + padding=1, + bias=not bn, + ) + ) + + _, _, in_dim = getShapeConv( + (in_ch, in_dim, in_dim), (self.in_planes, 3, 3), stride=stride[0], padding=1 + ) + + if bn: + layers.append(nn.BatchNorm2d(self.in_planes)) + + layers.append(nn.ReLU()) + + for s in stride[1:]: + block_layers, in_dim = self._make_layer( + block, + self.in_planes * 2, + num_blocks, + stride=s, + bn=bn, + kernel=3, + in_dim=in_dim, + ) + layers.append(block_layers) + + if last_layer == "dense": + layers.append(nn.Flatten()) + layers.append( + nn.Linear(self.in_planes * block.expansion * in_dim**2, 100) + ) + layers.append(nn.ReLU()) + layers.append(nn.Linear(100, num_classes)) + else: + exit("last_layer type not supported!") + + super(ResNet, self).__init__(*layers) + + def _make_layer( + self, + block: Type[BasicBlock], + planes: int, + num_layers: int, + stride: int, + bn: bool, + kernel: int, + in_dim: int, + ) -> Tuple[nn.Sequential, int]: + strides = [stride] + [1] * (num_layers - 1) + cur_dim: int = in_dim + layers: List[nn.Module] = [] + for stride in strides: + layer = block(self.in_planes, planes, stride, bn, kernel, in_dim=cur_dim) + layers.append(layer) + cur_dim = layer.out_dim + layers.append(nn.ReLU()) + self.in_planes = planes * block.expansion + return nn.Sequential(*layers), cur_dim + diff --git a/code/verifier.py b/code/verifier.py new file mode 100644 index 0000000..1d720d8 --- /dev/null +++ b/code/verifier.py @@ -0,0 +1,78 @@ +import argparse +import csv +import torch +import torch.nn.functional as F +from networks import get_network, get_net_name, NormalizedResnet + + +DEVICE = 'cpu' +DTYPE = torch.float32 + +def transform_image(pixel_values, input_dim): + normalized_pixel_values = torch.tensor([float(p) / 255.0 for p in pixel_values]) + if len(input_dim) > 1: + input_dim_in_hwc = (input_dim[1], input_dim[2], input_dim[0]) + image_in_hwc = normalized_pixel_values.view(input_dim_in_hwc) + image_in_chw = image_in_hwc.permute(2, 0, 1) + image = image_in_chw + else: + image = normalized_pixel_values + + assert (image >= 0).all() + assert (image <= 1).all() + return image + +def get_spec(spec, dataset): + input_dim = [1, 28, 28] if dataset == 'mnist' else [3, 32, 32] + eps = float(spec[:-4].split('/')[-1].split('_')[-1]) + test_file = open(spec, "r") + test_instances = csv.reader(test_file, delimiter=",") + for i, (label, *pixel_values) in enumerate(test_instances): + inputs = transform_image(pixel_values, input_dim) + inputs = inputs.to(DEVICE).to(dtype=DTYPE) + true_label = int(label) + inputs = inputs.unsqueeze(0) + return inputs, true_label, eps + + +def get_net(net, net_name): + net = get_network(DEVICE, net) + state_dict = torch.load('../nets/%s' % net_name, map_location=torch.device(DEVICE)) + if "state_dict" in state_dict.keys(): + state_dict = state_dict["state_dict"] + net.load_state_dict(state_dict) + net = net.to(dtype=DTYPE) + net.eval() + if 'resnet' in net_name: + net = NormalizedResnet(DEVICE, net) + return net + + +def analyze(net, inputs, eps, true_label): + return 0 + + +def main(): + parser = argparse.ArgumentParser(description='Neural network verification using DeepPoly relaxation') + parser.add_argument('--net', type=str, required=True, help='Neural network architecture to be verified.') + parser.add_argument('--spec', type=str, required=True, help='Test case to verify.') + args = parser.parse_args() + + net_name = get_net_name(args.net) + dataset = 'mnist' if 'mnist' in net_name else 'cifar10' + + inputs, true_label, eps = get_spec(args.spec, dataset) + net = get_net(args.net, net_name) + + outs = net(inputs) + pred_label = outs.max(dim=1)[1].item() + assert pred_label == true_label + + if analyze(net, inputs, eps, true_label): + print('verified') + else: + print('not verified') + + +if __name__ == '__main__': + main() diff --git a/examples/gt.txt b/examples/gt.txt new file mode 100644 index 0000000..7db2b6d --- /dev/null +++ b/examples/gt.txt @@ -0,0 +1,20 @@ +net_1,img1_0.0500.txt,verified +net_1,img2_0.0550.txt,verified +net_2,img1_0.2400.txt,verified +net_2,img2_0.2360.txt,verified +net_3,img1_0.0065.txt,not verified +net_3,img2_0.0081.txt,verified +net_4,img1_0.2240.txt,verified +net_4,img2_0.2290.txt,not verified +net_5,img1_0.0260.txt,verified +net_5,img2_0.0470.txt,verified +net_6,img1_0.0140.txt,verified +net_6,img2_0.0147.txt,not verified +net_7,img1_0.0540.txt,verified +net_7,img2_0.1440.txt,not verified +net_8,img1_0.0096.txt,verified +net_8,img2_0.0100.txt,verified +net_9,img1_0.0040.txt,verified +net_9,img2_0.0040.txt,verified +net_10,img1_0.0014.txt,verified +net_10,img2_0.0015.txt,not verified diff --git a/examples/net1/img1_0.0500.txt b/examples/net1/img1_0.0500.txt new file mode 100644 index 0000000..7de9913 --- /dev/null +++ b/examples/net1/img1_0.0500.txt @@ -0,0 +1 @@ +3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,113,193,254,253,254,253,254,172,82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,183,253,252,253,252,253,252,253,252,243,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,255,233,183,102,203,203,234,253,254,151,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,81,151,50,0,0,0,41,193,252,253,111,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,213,254,253,203,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,123,213,252,253,252,81,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,253,254,253,254,151,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,212,253,252,253,232,223,122,82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,123,223,254,253,254,253,254,71,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,50,131,213,252,253,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,162,254,253,102,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,203,253,252,61,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,253,254,91,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,142,253,252,233,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,214,253,254,213,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,163,243,253,252,172,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,173,173,253,255,253,224,81,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,252,253,252,253,171,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,153,253,244,203,82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,92,192,122,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/examples/net1/img2_0.0550.txt b/examples/net1/img2_0.0550.txt new file mode 100644 index 0000000..65fb44f --- /dev/null +++ b/examples/net1/img2_0.0550.txt @@ -0,0 +1 @@ +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,150,253,202,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,251,251,253,107,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,197,251,251,253,107,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,110,190,251,251,251,253,169,109,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,251,251,251,251,253,251,251,220,51,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,182,255,253,253,253,253,234,222,253,253,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,221,253,251,251,251,147,77,62,128,251,251,105,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,231,251,253,251,220,137,10,0,0,31,230,251,243,113,5,0,0,0,0,0,0,0,0,0,0,0,0,37,251,251,253,188,20,0,0,0,0,0,109,251,253,251,35,0,0,0,0,0,0,0,0,0,0,0,0,37,251,251,201,30,0,0,0,0,0,0,31,200,253,251,35,0,0,0,0,0,0,0,0,0,0,0,0,37,253,253,0,0,0,0,0,0,0,0,32,202,255,253,164,0,0,0,0,0,0,0,0,0,0,0,0,140,251,251,0,0,0,0,0,0,0,0,109,251,253,251,35,0,0,0,0,0,0,0,0,0,0,0,0,217,251,251,0,0,0,0,0,0,21,63,231,251,253,230,30,0,0,0,0,0,0,0,0,0,0,0,0,217,251,251,0,0,0,0,0,0,144,251,251,251,221,61,0,0,0,0,0,0,0,0,0,0,0,0,0,217,251,251,0,0,0,0,0,182,221,251,251,251,180,0,0,0,0,0,0,0,0,0,0,0,0,0,0,218,253,253,73,73,228,253,253,255,253,253,253,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,251,251,253,251,251,251,251,253,251,251,251,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,230,251,253,251,251,251,251,253,230,189,35,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,62,142,253,251,251,251,251,253,107,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,174,251,173,71,72,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/examples/net10/img1_0.0014.txt b/examples/net10/img1_0.0014.txt new file mode 100644 index 0000000..29da4c2 --- /dev/null +++ b/examples/net10/img1_0.0014.txt @@ -0,0 +1 @@ +3,51,49,53,57,56,61,61,61,67,65,67,73,67,69,75,67,68,73,63,64,69,59,60,65,48,48,54,47,46,52,54,53,59,68,67,73,71,70,76,77,76,82,75,74,82,73,73,84,76,76,86,77,77,88,76,76,87,77,77,88,76,76,86,79,79,89,78,78,88,75,74,85,73,75,84,71,76,86,69,73,83,72,75,85,75,76,87,72,70,80,58,54,56,55,51,53,55,52,58,60,59,65,64,64,72,63,64,73,64,64,71,64,63,69,60,60,65,62,62,68,56,56,62,58,57,63,69,68,74,72,71,77,64,63,69,68,66,72,71,71,79,71,71,81,75,75,85,75,75,85,75,75,85,76,76,86,75,75,85,77,77,87,76,76,86,75,75,85,74,75,84,70,73,81,69,72,80,75,76,85,76,75,85,70,68,77,53,51,55,46,44,50,58,55,62,61,59,67,65,64,75,65,66,77,63,62,71,64,61,68,76,73,80,92,90,96,99,96,103,101,99,106,104,103,109,101,100,106,88,87,93,82,80,86,74,74,81,72,73,83,75,75,85,73,73,83,75,75,86,75,75,85,77,77,87,78,78,88,78,78,88,74,74,84,75,76,85,70,72,79,72,73,80,78,77,85,77,74,82,77,75,83,70,73,81,45,47,56,57,55,64,59,57,67,64,64,75,65,66,77,63,61,69,71,67,73,98,94,101,108,104,111,111,108,115,115,114,120,119,118,124,120,119,125,116,115,121,111,110,116,93,92,99,85,84,93,86,85,95,77,76,85,75,74,83,77,77,87,78,78,88,77,78,88,74,74,84,73,73,83,74,74,83,70,70,76,78,77,82,78,75,82,79,74,81,98,93,100,97,93,96,54,45,45,56,58,66,59,58,64,62,62,69,60,63,72,64,63,70,83,81,86,101,99,105,110,110,115,120,121,125,130,130,135,135,134,140,132,131,137,128,127,133,124,123,129,107,103,108,87,79,84,109,102,107,98,92,98,79,74,81,76,73,81,76,77,86,75,75,83,72,71,78,75,74,81,73,71,78,72,71,77,74,69,73,77,70,73,100,95,100,123,119,126,102,88,89,67,39,32,58,48,47,61,50,49,63,57,58,60,58,63,73,71,77,100,97,102,107,105,110,126,125,130,136,138,141,143,143,148,148,147,153,148,147,153,147,146,152,137,136,143,124,121,126,87,80,85,114,107,111,130,124,128,103,95,100,71,65,71,58,53,61,59,54,62,73,68,75,77,72,79,58,53,61,56,52,58,59,51,54,96,87,87,129,124,127,139,133,138,103,81,78,81,45,34,55,30,19,55,31,21,51,34,28,56,45,45,96,89,94,118,113,119,115,111,117,132,130,135,138,138,142,142,141,147,150,149,155,157,156,162,155,154,160,151,150,156,147,145,151,116,111,118,98,92,98,144,135,140,130,121,123,84,74,77,61,49,55,62,51,58,87,78,86,105,98,107,73,67,76,62,57,61,72,64,65,113,102,101,138,130,132,132,123,126,98,67,60,93,53,41,58,28,16,61,30,18,57,30,19,55,34,28,97,85,88,127,120,127,119,113,120,132,128,133,139,137,142,144,143,148,150,149,155,158,156,162,157,156,162,156,155,161,153,152,159,141,139,147,106,101,108,134,125,129,125,113,114,93,79,79,80,66,68,78,67,71,109,101,108,173,169,177,150,146,154,109,102,106,89,79,78,94,81,80,130,121,122,137,125,126,100,64,57,97,56,45,55,27,17,62,30,17,64,32,19,58,30,20,75,58,59,114,103,111,120,113,121,136,131,139,139,136,143,146,142,151,153,151,160,156,156,164,155,155,163,159,158,165,162,160,169,152,150,159,129,124,131,131,122,126,102,89,92,79,66,64,91,81,73,98,89,87,137,133,136,211,211,218,211,209,217,173,164,164,111,99,95,81,68,64,100,90,89,132,119,120,92,61,55,77,45,37,52,25,16,59,28,14,64,32,17,60,30,18,58,36,33,96,83,87,126,119,128,130,127,138,145,142,152,150,143,153,154,149,158,159,157,165,162,162,171,173,173,182,173,169,178,152,147,155,130,124,131,108,102,109,96,89,97,94,86,83,103,94,76,127,119,109,184,178,177,222,219,227,209,204,212,157,146,141,122,111,102,113,104,96,85,76,77,104,94,101,75,62,61,58,46,42,47,21,15,58,27,16,62,28,16,62,29,18,56,32,23,74,58,54,114,104,104,127,120,122,131,122,123,115,103,96,117,99,91,137,111,110,140,119,122,155,146,150,157,154,159,153,149,156,126,122,129,126,121,128,165,161,168,166,160,163,157,149,145,154,146,146,186,179,184,207,199,208,196,189,197,168,161,162,178,173,172,179,176,176,140,138,144,132,129,138,102,99,100,89,86,85,44,24,23,52,24,17,60,28,18,62,29,19,71,35,25,69,35,28,76,46,42,86,57,53,88,57,51,102,68,53,113,69,55,114,60,58,102,55,60,111,86,91,150,142,147,161,158,165,149,146,153,170,167,174,193,190,197,197,194,202,210,206,214,207,201,210,189,180,190,188,176,186,192,182,192,210,208,216,212,212,220,194,195,204,186,189,199,164,167,176,110,113,114,95,96,95,81,72,72,51,32,25,50,26,14,59,32,20,74,36,25,76,36,27,71,34,28,77,39,32,98,56,46,119,73,65,133,86,83,139,96,97,131,100,105,148,131,138,167,161,168,169,168,174,162,161,167,174,173,179,192,191,197,188,188,194,183,185,192,207,204,212,202,192,202,176,160,171,193,179,190,212,209,219,190,188,202,175,174,189,176,178,189,145,150,154,103,107,103,97,100,95,109,106,108,86,76,72,57,40,31,54,32,21,67,37,26,71,38,29,71,39,31,78,44,34,90,51,39,98,58,49,125,94,92,153,139,142,157,153,161,168,165,176,173,170,179,180,178,185,174,173,179,172,171,177,193,192,197,191,192,196,172,174,179,196,194,200,205,195,205,172,157,169,184,169,182,193,189,200,176,173,187,171,169,184,158,157,168,116,117,121,94,95,90,90,90,81,103,101,106,112,108,112,102,91,91,59,39,35,59,31,24,69,36,29,71,36,28,80,41,31,101,58,47,103,60,46,104,71,61,132,115,116,159,154,163,174,174,186,179,177,188,186,183,192,189,186,193,175,173,178,183,181,184,196,195,198,187,186,190,172,168,175,167,160,169,164,153,165,159,150,163,157,154,165,169,167,178,170,168,179,131,129,140,79,77,86,81,79,79,91,90,81,84,86,93,105,105,113,125,120,125,97,84,85,57,36,32,58,31,23,69,36,24,87,47,33,110,67,53,108,63,53,104,59,51,109,69,60,131,106,102,157,150,155,180,179,189,192,189,197,198,195,202,189,187,191,182,180,183,186,184,186,186,185,185,180,177,179,165,160,165,158,152,158,159,154,162,161,159,169,165,163,174,150,148,159,94,92,103,63,61,71,68,67,69,80,80,78,42,49,60,59,66,79,83,86,99,105,102,111,82,74,76,49,31,26,63,32,21,94,53,39,109,66,54,98,63,53,99,65,52,117,73,58,116,71,63,126,88,92,166,148,158,193,190,199,201,198,205,199,197,202,196,194,197,195,192,194,188,186,185,180,178,179,176,174,177,175,174,178,173,172,178,166,164,175,158,156,167,144,142,153,72,70,81,53,52,61,69,70,71,86,86,87,22,33,47,22,35,52,27,38,56,51,56,72,93,93,104,63,51,53,57,27,21,90,48,39,96,51,46,97,59,49,105,71,59,130,93,86,127,84,83,114,62,62,140,110,115,187,184,193,201,198,205,205,202,207,202,200,203,197,194,197,197,193,197,191,189,194,186,186,191,181,183,190,180,181,190,177,175,186,166,164,175,151,149,160,72,70,82,42,41,49,79,81,77,103,105,105,25,36,52,24,37,54,24,35,53,26,35,53,58,65,80,76,70,78,60,34,32,85,45,39,99,54,50,94,48,40,110,66,57,127,86,84,136,95,95,132,86,84,151,121,123,190,183,192,196,195,203,198,199,206,195,195,197,194,191,195,194,191,198,192,190,198,186,185,193,187,188,196,189,189,197,178,176,184,171,169,179,151,150,161,66,67,77,63,65,71,96,100,97,100,105,100,24,35,52,26,37,54,24,35,51,21,32,49,25,36,55,61,63,77,71,54,57,75,42,37,95,53,46,102,62,51,104,66,54,124,80,74,117,72,70,119,76,76,143,111,114,177,162,170,191,189,197,187,192,200,189,190,195,193,191,196,195,194,201,191,190,197,189,188,194,195,194,200,188,187,192,177,175,180,166,163,174,115,114,127,52,55,64,82,87,91,101,106,107,100,105,97,21,34,51,20,32,49,20,33,50,19,32,50,16,31,54,35,44,65,78,70,80,85,60,59,87,50,43,104,65,54,119,79,69,129,86,79,143,99,97,134,95,94,130,99,99,177,157,160,204,195,199,188,187,194,188,187,197,192,190,198,187,186,191,184,183,189,185,184,190,182,181,188,175,174,182,171,171,181,125,126,140,54,55,70,54,57,67,81,85,90,98,98,102,114,114,108,21,35,54,19,33,52,19,33,52,20,34,53,17,33,57,20,32,57,52,55,71,89,77,84,90,66,64,98,62,56,100,55,52,104,57,57,127,83,86,164,126,130,184,157,160,204,188,189,206,196,196,193,189,191,190,187,195,186,184,192,185,184,188,184,184,189,180,179,187,175,173,184,161,161,173,114,118,133,54,57,75,27,30,48,54,56,68,89,91,98,107,107,111,117,117,112,21,36,57,22,37,58,23,38,59,21,36,56,21,34,57,21,33,57,30,40,61,70,71,84,104,95,100,114,91,91,100,70,70,117,86,89,124,97,104,142,123,130,195,185,190,201,197,199,199,196,193,193,190,186,190,187,189,189,187,191,184,184,185,184,183,187,178,177,185,144,141,154,93,93,109,48,54,74,30,36,58,19,22,43,29,31,45,87,89,96,117,120,122,119,123,116,20,34,53,20,34,54,20,33,55,19,32,56,19,32,55,18,30,52,20,30,50,45,51,66,107,107,117,150,145,149,145,138,141,144,136,142,163,157,166,171,168,178,186,186,194,192,193,196,197,197,195,196,194,192,177,173,176,157,155,161,166,165,171,189,186,190,179,177,183,93,92,104,45,47,65,43,48,70,37,41,64,34,36,54,18,20,30,77,81,82,125,134,126,125,135,124,22,35,53,22,35,54,20,32,55,19,31,55,17,31,54,17,31,51,19,28,47,25,31,47,57,60,74,102,103,113,129,130,138,127,128,138,121,122,133,131,131,145,153,154,166,181,181,188,189,189,191,191,190,192,187,185,189,124,121,132,115,112,124,188,183,188,189,185,189,122,122,132,52,57,75,41,48,70,38,44,65,46,51,66,47,52,56,98,105,98,133,144,133,123,135,125,20,33,52,18,31,51,18,30,51,19,31,53,18,32,53,15,27,48,13,23,42,15,23,41,21,27,44,36,41,54,60,64,76,64,67,81,50,53,69,50,53,70,70,73,90,130,133,147,176,178,185,185,185,187,192,189,193,151,148,157,99,96,108,169,164,169,184,180,184,146,146,156,63,69,87,38,50,71,36,47,65,42,53,64,86,96,95,123,134,123,119,129,120,103,112,105,20,32,55,18,31,51,17,30,48,19,32,50,17,29,49,13,25,45,15,27,46,18,30,49,16,27,46,18,26,44,28,35,52,32,38,57,36,42,62,45,51,73,46,52,76,65,72,94,131,136,148,180,180,185,190,186,189,181,176,184,143,139,151,170,166,171,181,177,181,153,153,163,71,76,94,39,49,72,38,48,67,42,52,61,92,103,97,112,123,107,106,114,101,115,122,113,23,35,60,22,34,55,19,32,50,14,27,43,10,21,40,16,27,47,18,31,50,16,29,50,16,30,51,21,32,52,30,38,58,35,43,65,40,48,73,48,55,81,50,58,88,48,57,85,77,83,100,158,160,167,191,187,189,186,181,188,175,171,183,180,176,181,184,181,185,151,151,161,70,74,93,40,46,70,39,45,65,55,60,69,103,109,102,135,141,123,140,147,128,138,144,131,23,36,56,17,32,52,11,25,42,12,21,35,14,21,41,16,25,48,18,28,48,15,27,45,20,33,49,26,38,56,30,42,63,35,47,69,41,52,76,48,57,81,50,60,85,48,61,87,55,65,89,130,133,150,190,183,190,194,184,189,182,176,183,158,152,161,149,147,159,108,111,126,48,56,75,34,45,67,35,43,56,69,74,74,127,128,116,136,137,121,102,111,105,67,76,76,31,39,53,19,32,51,9,24,43,11,23,41,13,24,48,14,25,51,15,27,49,13,26,43,19,32,47,30,40,56,39,44,62,49,50,66,63,57,70,72,61,72,74,66,76,65,65,78,54,58,77,96,102,120,176,181,189,185,186,190,177,175,184,113,112,128,63,66,85,53,58,77,42,51,69,36,47,69,31,42,54,50,59,59,69,74,70,49,53,50,32,41,46,17,27,36,45,41,48,26,30,44,12,24,45,9,26,50,11,27,53,14,29,55,15,30,53,14,27,47,20,32,49,36,42,59,46,40,54,65,46,51,95,63,62,111,70,65,118,76,72,118,81,83,106,80,87,95,83,92,135,134,140,162,165,170,152,154,165,76,80,100,35,42,66,41,48,67,43,50,67,39,45,66,33,40,55,21,30,38,14,24,33,12,22,32,14,22,31,13,21,30,53,35,34,42,33,38,29,31,46,21,33,56,19,35,60,22,37,60,21,33,54,14,22,40,24,31,47,39,43,59,33,25,35,63,35,32,106,60,50,124,69,56,139,76,68,151,83,82,152,91,93,130,83,85,105,73,72,110,91,90,92,85,91,45,48,67,37,47,73,34,44,66,36,41,58,37,40,56,21,26,37,15,21,28,12,19,28,12,20,32,10,16,28,11,18,28 diff --git a/examples/net10/img2_0.0015.txt b/examples/net10/img2_0.0015.txt new file mode 100644 index 0000000..ecf91be --- /dev/null +++ b/examples/net10/img2_0.0015.txt @@ -0,0 +1 @@ +7,248,242,244,254,248,250,254,248,250,253,247,249,253,247,249,253,247,249,253,247,249,253,247,249,253,247,249,254,247,250,254,248,250,253,247,249,253,247,249,254,248,249,254,248,250,254,248,249,251,248,250,250,249,247,231,230,224,136,136,125,108,109,92,160,160,148,224,223,219,249,247,248,251,248,249,252,247,249,253,247,249,253,247,249,252,246,248,251,245,247,251,245,247,251,245,247,245,239,241,250,244,246,250,244,246,250,244,246,250,245,246,250,245,247,250,245,247,250,244,247,250,245,246,244,238,238,238,233,233,251,245,248,253,247,250,251,245,247,251,245,248,251,245,247,248,244,245,247,243,242,226,223,218,125,122,113,80,81,70,115,117,106,199,200,193,243,241,242,247,242,247,248,242,245,248,242,244,248,242,244,248,242,244,248,242,245,248,242,246,248,242,246,245,240,242,251,245,247,251,245,247,251,245,247,251,245,247,251,245,247,251,245,247,250,245,247,250,246,245,218,215,207,165,162,151,179,174,167,221,216,213,241,236,233,241,236,233,233,228,225,220,215,206,207,203,192,224,220,210,183,180,171,105,106,97,99,103,91,173,175,165,233,231,229,248,243,247,248,242,245,248,242,244,248,242,244,248,242,244,248,242,246,248,242,246,248,242,246,245,240,241,251,245,247,251,245,247,251,245,247,251,245,247,251,245,247,251,245,247,250,245,248,250,245,248,234,230,228,171,167,159,102,98,87,144,141,129,208,206,190,208,206,188,204,202,188,203,202,184,202,201,182,197,195,178,192,191,175,129,132,116,108,113,95,141,144,130,208,207,202,246,241,244,247,241,245,247,241,244,247,241,244,247,241,245,247,241,245,247,241,245,247,241,245,246,240,242,251,245,247,251,245,247,251,245,247,251,245,247,251,245,247,251,245,247,250,245,247,249,244,246,250,244,244,238,234,227,206,203,192,186,188,173,164,166,151,154,157,142,198,201,185,198,202,183,188,191,172,185,189,169,175,178,159,148,153,134,122,128,108,142,145,130,207,206,202,245,240,244,246,240,244,246,240,244,246,240,244,246,240,244,246,240,244,246,240,244,246,240,244,244,237,237,252,245,246,252,245,248,251,244,248,251,245,247,250,245,244,250,245,246,251,245,248,246,242,243,229,227,220,201,201,188,172,175,160,124,130,115,85,91,78,119,125,111,158,165,146,161,168,148,156,163,144,152,159,140,165,172,153,168,174,157,152,157,139,159,162,147,205,205,200,239,236,239,244,239,243,244,238,242,244,238,242,244,238,242,244,238,244,244,237,243,244,237,243,233,225,221,240,232,230,244,236,236,246,239,242,248,242,244,249,243,244,249,243,245,237,232,232,210,208,200,175,176,160,150,155,134,151,157,140,152,156,143,167,170,157,181,184,170,165,169,154,138,144,129,129,135,120,127,134,119,133,139,125,158,163,151,172,176,164,167,171,158,166,170,155,201,201,193,238,233,235,245,238,242,244,238,242,243,237,242,243,236,243,243,236,244,243,236,244,221,215,206,230,222,216,231,224,220,235,228,223,238,232,228,241,235,231,226,221,213,189,187,174,157,159,142,154,158,138,174,178,159,191,197,180,182,189,169,154,161,143,111,116,105,74,79,73,79,85,78,96,104,95,111,119,108,103,111,99,118,126,109,151,158,141,163,169,153,141,146,128,155,158,143,211,209,206,243,239,242,244,239,244,244,237,243,243,236,242,243,236,243,243,236,243,214,207,197,218,212,199,216,210,196,218,212,200,224,217,207,230,224,213,218,211,199,174,171,159,161,162,149,190,194,179,194,200,182,170,178,157,144,152,127,122,130,108,81,88,73,62,68,58,61,71,59,78,88,75,99,110,95,110,121,106,110,121,102,139,151,129,161,170,149,153,159,139,150,155,138,189,191,182,234,232,234,243,238,245,244,238,244,244,238,242,244,238,242,244,238,242,218,212,203,224,218,209,223,216,208,219,212,204,218,211,203,218,212,202,217,212,200,210,206,195,203,202,190,192,195,180,164,173,151,147,158,131,153,162,136,153,161,135,136,145,120,126,134,111,120,130,105,123,134,109,132,143,121,133,143,124,132,143,122,149,160,136,164,173,150,158,165,144,156,162,143,185,188,178,226,225,225,244,239,245,245,240,246,246,240,244,246,240,244,246,240,244,213,208,202,221,216,211,224,218,213,220,214,208,221,215,207,221,217,209,217,216,206,208,210,197,192,195,178,171,176,155,160,165,142,161,167,141,161,169,142,149,158,131,141,149,124,144,152,128,142,150,127,129,137,115,121,129,106,122,130,106,123,131,105,139,148,121,155,163,138,146,154,130,135,144,122,165,171,156,218,217,214,244,239,245,243,240,246,245,240,244,246,240,244,246,240,244,212,207,200,220,214,206,219,214,206,217,211,203,218,212,204,216,213,204,206,206,196,192,194,181,179,183,165,170,175,154,164,169,146,155,161,135,134,142,115,107,114,93,100,106,91,92,97,86,89,95,82,100,108,90,113,121,97,124,133,104,127,136,106,138,147,119,152,160,135,140,148,125,110,119,98,126,132,118,195,194,191,241,236,241,243,240,245,245,240,244,246,240,244,246,240,244,209,203,194,215,209,200,220,214,205,214,210,200,205,204,191,196,198,182,181,186,166,164,170,148,157,163,140,158,163,140,148,153,130,125,130,107,111,117,93,99,103,88,76,79,73,52,54,51,74,79,68,93,100,83,120,128,105,126,135,107,127,136,108,133,141,115,138,146,123,131,139,118,105,112,94,104,110,96,165,167,159,230,228,227,245,240,243,246,241,245,246,240,244,246,240,244,201,201,190,215,215,204,214,213,203,211,210,198,201,202,188,179,182,166,169,174,156,163,169,149,145,150,128,132,137,114,134,139,115,129,134,110,131,137,113,125,130,107,105,109,93,60,62,58,54,58,51,70,75,63,107,114,96,117,125,102,117,126,100,113,121,97,102,110,87,113,120,100,117,125,105,115,120,102,152,154,141,212,211,205,239,234,232,242,236,238,246,240,243,252,246,250,179,182,162,181,184,165,185,188,170,148,152,139,106,111,103,62,66,62,57,62,57,96,100,90,125,130,113,132,137,114,138,144,119,131,136,114,107,111,93,77,81,66,65,68,60,43,45,46,34,36,36,44,47,42,82,86,76,93,97,83,83,89,73,74,80,66,69,75,63,98,105,88,125,132,111,134,139,117,161,161,144,206,200,190,235,226,219,231,222,215,223,216,209,217,212,208,172,167,145,140,140,111,147,151,125,104,110,96,66,71,65,56,61,57,67,72,65,90,95,82,116,121,103,123,128,107,98,102,83,73,76,63,73,76,64,75,78,68,73,75,68,68,70,66,60,62,61,48,51,42,95,99,85,60,63,56,39,43,40,49,53,51,58,63,57,90,97,81,121,128,106,140,144,122,171,171,151,205,200,183,227,218,205,226,216,208,210,202,191,175,170,161,164,162,137,145,146,120,153,157,133,137,145,123,111,119,100,98,104,88,93,96,83,107,112,96,124,132,112,117,122,104,106,106,93,122,119,109,147,144,133,168,168,152,147,149,131,86,88,75,71,73,68,48,50,44,103,107,88,87,90,79,50,52,50,55,58,55,60,66,57,86,95,78,114,125,102,132,141,118,165,169,149,202,201,184,222,217,205,235,227,223,234,226,224,231,223,223,149,156,135,121,127,109,99,103,88,84,87,75,68,71,60,76,80,68,88,94,80,94,101,85,105,109,94,138,138,126,197,191,184,234,226,220,228,223,215,208,205,190,145,146,128,78,81,68,68,71,64,43,45,44,84,89,71,103,108,87,67,70,60,65,69,62,74,80,69,83,93,76,96,108,86,115,126,102,151,156,136,192,192,176,219,214,204,240,233,229,243,234,236,248,239,243,170,174,161,186,186,174,159,157,147,97,96,89,72,73,67,77,77,70,84,84,75,91,90,82,122,120,110,179,175,163,225,220,211,240,232,230,226,220,211,207,203,186,167,167,146,124,125,107,96,103,87,49,57,46,75,81,66,106,111,89,81,86,71,65,70,60,78,84,74,78,85,73,79,87,73,100,108,90,133,140,120,180,182,164,218,213,203,239,232,229,241,234,235,243,236,239,171,171,151,190,188,168,202,198,178,167,167,147,167,168,151,187,185,173,204,198,190,210,204,198,209,205,194,203,200,183,210,206,193,234,229,225,214,210,202,191,191,173,163,166,144,127,132,112,98,108,91,70,80,68,70,76,66,98,103,87,86,91,77,67,74,62,77,83,73,76,82,72,73,79,68,92,99,84,128,136,115,176,179,161,220,214,205,238,232,229,240,234,234,243,238,240,131,142,111,137,146,117,171,175,153,154,160,141,154,160,144,176,179,166,206,205,195,221,217,210,212,208,199,199,196,184,211,207,198,231,226,223,208,205,197,182,182,170,176,178,163,137,142,123,72,78,65,65,70,63,54,57,51,83,87,75,82,86,74,70,74,65,73,76,71,72,76,69,71,76,67,87,95,81,123,132,113,175,179,160,220,215,204,238,231,227,242,234,234,246,238,242,116,131,91,123,138,100,171,177,151,172,179,159,170,177,160,183,186,172,207,205,195,216,211,203,208,203,193,205,201,189,217,213,204,233,228,223,213,209,200,189,186,178,204,204,195,147,150,132,90,94,81,64,66,60,49,51,46,74,78,66,81,84,72,61,63,57,64,66,63,69,71,66,68,73,64,82,91,78,114,124,105,162,167,146,216,211,200,239,230,230,242,233,236,244,235,237,139,145,100,130,135,100,172,176,146,165,170,139,175,180,154,192,193,177,214,211,202,223,219,212,213,211,199,205,204,187,215,212,198,235,230,224,223,219,212,209,206,200,212,210,202,146,147,131,64,67,57,62,64,56,80,83,73,82,85,73,85,88,78,59,63,57,65,69,64,71,75,69,65,69,62,76,82,70,104,111,93,143,148,129,198,198,185,234,229,224,241,235,231,239,231,227,120,126,78,90,93,64,146,150,123,133,143,108,145,157,126,174,180,160,197,198,182,190,192,173,166,171,145,156,161,133,175,177,155,213,213,200,212,213,204,213,213,207,206,207,200,149,151,136,51,53,46,70,73,64,93,97,82,92,96,82,83,88,79,61,66,60,64,69,63,72,77,71,67,71,65,72,75,65,96,100,84,129,133,116,174,176,163,214,212,205,234,229,223,232,225,217,99,108,62,75,80,50,129,129,105,109,120,90,100,117,86,109,123,95,143,150,123,135,144,113,103,118,84,125,137,109,173,178,160,199,200,191,207,209,201,204,207,199,188,194,182,137,144,126,75,79,69,101,105,89,80,84,70,70,73,63,63,67,59,59,63,57,63,68,61,71,75,67,65,69,61,67,70,60,90,93,78,120,124,107,163,166,152,199,198,189,213,209,203,235,227,224,95,102,60,85,92,55,138,138,104,134,136,99,116,124,85,117,125,89,151,154,123,145,148,120,121,128,100,146,153,130,188,191,176,209,210,202,204,205,194,196,199,186,174,180,166,112,120,104,85,90,79,125,130,107,80,83,71,54,56,53,52,54,50,56,59,53,63,66,58,73,76,66,69,73,62,66,71,60,90,96,80,127,134,116,163,169,153,192,194,181,200,200,189,217,214,207,89,95,59,94,99,62,144,145,104,139,141,98,130,136,94,138,145,106,171,173,137,169,169,134,153,155,124,176,178,160,200,202,192,201,204,191,196,198,182,191,194,178,170,175,160,123,130,115,128,132,117,133,139,114,88,91,78,61,64,59,55,58,52,53,55,50,57,60,53,71,74,65,79,85,75,82,92,79,102,114,95,136,148,127,163,173,155,181,188,171,191,196,181,199,201,188,85,91,57,103,107,74,113,115,78,120,123,82,128,135,92,128,137,95,150,154,115,154,154,116,158,160,130,191,192,179,198,200,194,188,193,181,186,189,174,184,187,171,183,186,167,171,175,153,158,163,138,134,139,117,91,95,80,75,78,69,77,80,69,67,70,60,65,68,60,78,81,71,90,95,81,102,112,93,123,133,110,140,151,125,152,162,138,166,176,155,180,187,170,184,188,174,63,70,51,72,77,57,87,91,61,111,114,79,113,117,78,118,122,82,135,135,97,130,128,94,143,144,118,182,184,167,183,186,172,178,183,167,180,183,167,183,186,169,169,173,154,157,162,140,146,152,127,135,140,115,108,114,90,100,105,84,104,109,87,98,103,84,90,95,78,99,104,85,114,120,94,122,129,100,129,136,109,132,140,110,136,144,112,141,149,123,161,168,146,169,173,154,68,76,52,56,63,45,102,104,79,150,151,120,159,158,124,153,149,112,153,148,110,146,146,110,154,158,128,175,178,159,172,174,160,170,173,154,175,178,159,161,165,145,142,149,128,134,142,121,113,119,97,118,124,96,125,132,101,119,125,99,110,116,95,86,92,75,81,88,72,102,109,88,116,125,97,115,124,94,112,121,92,114,122,96,116,124,101,114,121,101,130,136,115,138,141,119,60,72,47,45,55,40,100,104,86,122,129,99,105,117,84,88,101,67,105,115,77,124,129,93,142,146,116,160,164,141,156,159,141,158,161,144,151,154,135,110,114,95,100,107,88,99,107,87,93,99,80,110,115,93,116,122,97,98,102,83,93,98,82,79,85,73,68,74,63,80,86,71,101,109,87,111,119,94,102,110,87,89,96,76,87,95,76,91,101,82,109,119,98,135,143,120,55,64,43,42,50,37,92,95,79,118,121,97,92,99,73,79,88,62,119,124,92,145,146,109,144,146,111,141,144,117,134,139,116,143,149,126,135,139,118,96,99,83,80,83,70,79,82,67,86,90,73,91,96,79,87,91,76,72,76,63,81,86,71,94,100,87,96,102,91,86,93,79,84,91,71,91,99,76,90,97,78,80,87,72,74,80,69,77,85,71,112,123,107,151,162,141 diff --git a/examples/net2/img1_0.2400.txt b/examples/net2/img1_0.2400.txt new file mode 100644 index 0000000..488b405 --- /dev/null +++ b/examples/net2/img1_0.2400.txt @@ -0,0 +1 @@ +1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,229,239,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,140,253,238,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,253,238,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,254,253,167,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,180,254,235,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,253,254,175,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194,253,254,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194,253,255,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194,253,236,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194,253,149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,196,254,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,111,243,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,240,253,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,134,253,253,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,134,253,253,253,133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,134,253,253,253,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,134,253,253,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135,253,253,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,134,253,245,86,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135,253,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/examples/net2/img2_0.2360.txt b/examples/net2/img2_0.2360.txt new file mode 100644 index 0000000..53fa490 --- /dev/null +++ b/examples/net2/img2_0.2360.txt @@ -0,0 +1 @@ +9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,139,218,209,124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,85,103,211,252,252,252,211,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,128,237,252,253,252,252,252,252,106,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,232,252,252,252,253,231,136,111,242,38,43,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,89,236,252,252,252,164,42,28,9,106,184,236,239,17,0,0,0,0,0,0,0,0,0,0,0,0,0,82,253,254,186,53,0,0,0,15,192,253,253,255,183,4,0,0,0,0,0,0,0,0,0,0,0,0,0,169,252,151,16,0,0,0,146,211,245,224,173,253,153,5,0,0,0,0,0,0,0,0,0,0,0,0,11,211,252,171,127,135,232,232,253,245,124,14,162,253,63,0,0,0,0,0,0,0,0,0,0,0,0,0,7,196,252,253,252,252,252,252,253,98,0,43,239,253,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,81,252,253,252,252,182,103,86,11,0,108,252,174,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,107,106,9,0,0,0,0,31,218,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,252,217,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,180,252,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,57,246,210,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,252,189,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,253,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,190,245,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,221,178,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,252,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,155,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/examples/net3/img1_0.0065.txt b/examples/net3/img1_0.0065.txt new file mode 100644 index 0000000..9d70112 --- /dev/null +++ b/examples/net3/img1_0.0065.txt @@ -0,0 +1 @@ +6,209,101,121,209,101,113,214,105,110,215,103,100,211,97,93,208,94,94,203,89,90,202,88,88,198,88,87,199,87,84,196,82,76,205,89,81,215,97,85,211,95,82,204,91,77,202,93,79,203,98,86,208,91,76,205,77,61,201,80,66,202,86,70,193,76,59,199,81,68,202,82,73,191,73,64,200,83,69,205,89,71,199,83,66,196,78,69,189,74,66,203,91,70,203,90,70,206,101,118,206,100,111,214,103,110,221,101,93,212,103,96,196,99,105,202,92,95,207,87,82,203,91,82,204,91,84,200,85,78,206,89,81,217,94,83,209,90,77,208,94,79,200,92,76,197,98,89,204,100,90,193,80,67,195,82,67,203,87,72,190,71,56,195,78,65,199,85,72,191,76,64,206,88,73,210,94,74,207,90,71,201,83,72,194,76,67,205,89,71,203,87,69,201,104,120,185,94,103,193,94,102,210,106,108,176,92,96,147,83,85,204,124,108,211,107,86,204,93,85,205,89,82,208,88,81,209,86,78,217,94,80,216,95,80,216,99,82,208,97,80,195,99,92,202,111,106,183,90,81,193,94,83,195,85,72,190,74,61,199,84,70,203,90,74,194,80,64,204,87,70,205,89,66,203,86,66,203,85,71,198,80,69,206,88,73,206,87,73,188,105,121,158,89,98,147,73,81,173,96,109,131,73,82,103,61,56,178,127,103,179,106,85,194,106,99,193,96,87,204,94,83,211,94,80,214,95,78,217,97,80,216,94,77,214,94,78,184,83,74,191,109,104,189,115,111,176,96,90,185,86,75,188,79,65,196,83,68,203,86,70,201,83,66,205,88,69,208,92,68,199,83,60,204,87,70,208,87,75,206,85,74,206,85,74,163,92,108,132,83,91,127,77,85,142,88,101,134,89,90,127,86,74,139,93,83,119,71,67,140,89,82,150,84,71,191,107,87,198,102,79,212,108,86,215,104,84,212,91,75,218,92,80,185,82,72,171,95,91,198,137,137,179,114,115,186,101,93,185,85,72,188,78,64,208,87,73,210,88,73,208,90,70,207,92,66,206,90,67,198,80,64,203,82,68,193,71,61,202,79,69,182,126,128,135,100,96,143,102,113,118,80,101,122,92,86,168,124,99,141,90,84,103,67,75,116,87,85,142,98,86,173,116,96,160,99,76,163,98,68,198,123,93,190,109,93,180,86,78,173,93,88,154,91,90,161,105,105,154,97,96,189,130,129,160,90,89,177,86,82,194,83,77,202,79,70,208,85,68,205,90,68,204,89,70,197,79,67,202,85,69,193,74,59,207,86,72,223,161,159,174,135,127,134,94,102,79,51,73,75,56,56,185,143,125,167,116,104,91,56,56,102,69,69,133,88,79,134,82,70,156,101,89,153,91,68,157,96,76,117,70,60,122,70,52,135,73,57,117,59,50,132,80,72,134,84,73,129,82,77,147,93,95,172,99,99,174,83,82,194,89,84,197,82,69,203,85,68,203,84,68,200,82,70,204,89,69,196,79,59,204,84,66,212,128,133,187,133,130,148,108,111,73,51,66,58,44,55,159,121,122,181,132,119,145,106,86,127,84,70,139,87,71,145,88,76,148,96,85,137,89,69,111,60,55,101,55,59,138,80,60,147,79,54,129,71,55,135,87,75,153,105,91,144,96,84,152,100,93,150,90,87,159,91,90,161,84,81,166,70,62,201,82,70,212,87,72,198,82,64,201,85,62,204,85,62,207,85,63,210,111,124,177,104,110,162,112,116,101,73,84,82,64,79,130,89,101,157,105,94,206,161,129,213,161,128,190,134,102,158,104,80,103,58,39,104,72,48,94,56,52,106,63,70,154,87,70,166,93,73,144,87,80,96,49,46,121,70,62,134,81,66,122,71,57,173,122,113,156,107,102,140,87,83,159,84,76,176,72,59,202,84,67,206,90,70,205,87,63,212,92,68,215,92,69,209,107,130,194,106,124,174,109,119,160,115,122,134,100,109,134,85,94,153,93,90,169,114,92,189,129,97,192,133,101,184,134,108,145,101,82,158,104,82,138,94,78,87,58,50,129,83,62,148,84,68,101,48,47,109,64,64,129,72,61,153,91,70,148,92,73,184,134,118,141,96,84,123,76,67,141,82,71,189,113,94,189,91,72,203,87,73,219,98,78,219,96,76,221,95,77,190,94,123,192,95,124,186,108,126,187,124,132,192,142,143,144,87,88,149,82,86,151,87,83,174,109,94,142,83,67,129,84,72,179,141,131,208,160,132,182,144,110,119,90,69,145,90,74,162,99,80,100,54,44,125,82,72,177,115,89,179,112,85,194,135,114,196,144,124,166,119,99,136,88,72,159,111,93,216,168,143,206,128,109,181,67,57,210,88,73,215,91,76,217,90,76,140,65,99,149,66,99,163,81,108,163,93,109,182,122,126,182,117,117,154,81,81,155,85,79,163,103,90,128,81,73,78,43,44,93,62,65,144,97,83,196,148,128,195,167,146,214,156,127,217,152,116,188,145,121,159,122,97,162,111,76,122,67,49,138,93,88,142,92,79,196,147,125,199,157,129,191,155,124,150,106,91,196,118,110,173,68,56,183,64,57,191,72,67,201,79,73,125,60,96,124,56,87,129,58,86,128,63,83,143,81,94,168,101,108,181,108,110,206,137,129,167,112,98,132,90,81,107,73,73,79,44,48,144,89,85,150,91,84,99,67,50,190,137,101,199,143,109,167,125,102,205,169,138,180,140,113,146,108,90,164,134,122,155,112,98,173,126,108,116,78,61,156,120,101,148,95,90,162,78,77,162,63,55,160,58,54,154,54,52,164,59,54,128,64,100,122,62,91,117,59,84,115,56,79,116,55,76,133,70,84,159,91,101,154,90,93,137,85,80,131,88,81,128,87,83,100,57,55,153,101,92,136,79,67,111,66,50,194,133,105,168,121,100,116,70,51,195,145,111,152,113,94,141,113,97,132,108,91,179,140,126,177,132,117,127,89,84,124,77,73,154,93,80,158,77,66,151,53,51,142,55,52,135,51,48,142,51,45,130,66,105,120,64,94,111,61,84,110,56,81,109,51,76,108,49,70,168,106,123,155,97,108,113,64,69,131,88,88,132,88,85,150,102,98,136,86,77,129,74,60,143,88,76,169,105,85,147,99,83,183,125,104,208,145,105,165,120,102,109,80,88,54,30,42,105,66,64,159,114,95,172,133,120,152,95,82,191,123,92,211,142,112,153,62,54,143,53,55,141,53,55,151,55,50,129,65,106,119,61,94,114,61,88,105,52,77,106,52,76,99,44,66,137,83,102,189,136,153,161,114,127,172,133,140,108,69,71,146,100,104,147,97,94,147,96,84,157,99,94,138,80,67,128,76,61,175,114,98,181,123,95,163,121,112,106,75,96,59,31,57,106,63,66,153,103,80,187,147,116,194,129,98,199,126,92,209,158,124,171,95,84,142,48,51,149,53,55,174,69,63,130,65,106,121,59,94,116,55,86,108,51,77,104,51,73,101,50,70,105,55,73,156,107,125,165,120,137,207,171,183,103,71,80,108,68,80,128,77,82,126,78,71,126,71,72,136,87,80,142,93,81,138,91,88,154,119,114,144,118,125,126,100,110,86,56,60,125,79,69,174,120,96,190,146,111,209,140,102,175,98,77,126,86,70,161,97,94,139,50,51,152,59,58,187,83,73,130,68,106,123,60,94,120,53,84,118,53,81,108,49,75,101,47,69,104,47,68,138,82,106,157,108,120,218,179,174,131,100,105,86,45,63,99,51,67,87,45,53,92,47,58,108,64,72,124,84,84,132,110,118,147,145,162,140,121,133,155,122,117,148,100,82,190,135,101,162,113,88,129,80,67,181,114,89,151,90,73,116,86,89,169,106,116,134,52,53,150,59,61,175,67,64,128,64,104,121,59,94,117,55,87,117,51,82,112,50,77,105,47,71,111,46,69,122,59,84,151,94,102,228,180,164,190,154,155,95,49,68,92,49,67,79,45,61,75,44,59,76,41,60,90,58,75,128,95,101,134,109,115,92,57,61,132,87,79,105,54,42,203,149,114,156,113,89,105,64,68,171,108,93,185,129,109,168,126,126,159,79,86,137,53,56,147,52,57,172,60,58,130,60,101,119,56,93,113,58,90,111,54,82,110,50,74,109,48,70,119,50,71,120,52,75,141,76,83,219,163,150,185,140,143,116,62,78,95,44,62,79,41,58,93,62,81,101,72,94,86,54,75,148,95,93,185,128,115,137,82,70,167,104,83,97,53,47,164,114,88,149,101,78,69,41,48,144,90,84,218,157,145,176,113,105,153,56,56,154,60,65,155,55,56,191,78,67,155,72,110,131,58,93,115,58,87,119,63,87,112,50,70,117,51,70,132,61,79,133,63,82,132,60,64,186,121,110,123,71,74,138,74,88,120,46,64,87,28,48,78,34,57,79,39,64,107,64,68,135,89,80,135,93,83,179,120,92,231,145,103,156,106,91,176,122,99,182,125,101,87,61,64,97,56,62,162,104,107,147,72,68,159,58,59,159,56,59,177,70,62,210,94,74,200,102,128,177,86,112,142,69,91,145,80,100,143,74,93,130,59,77,145,79,92,162,98,110,152,78,78,167,98,87,131,76,77,167,97,106,152,60,73,121,48,63,84,32,54,74,29,51,158,105,87,123,77,57,76,46,44,111,63,43,203,123,82,185,128,99,148,96,82,150,95,86,176,137,129,157,111,114,121,56,65,144,59,57,159,58,61,176,66,61,203,89,71,217,99,73,219,109,125,211,103,122,180,90,105,150,74,91,159,84,103,162,88,104,173,113,122,163,106,113,165,94,92,179,111,100,126,71,70,161,92,94,164,73,75,123,53,60,75,30,45,77,40,56,168,116,92,192,126,94,151,100,92,66,30,33,143,88,73,186,131,98,105,66,67,118,79,95,187,135,119,195,129,118,148,65,68,154,52,46,169,62,62,208,92,78,215,97,71,220,100,71,217,108,127,207,102,117,199,103,111,183,99,112,159,81,98,155,86,100,165,111,120,121,73,81,153,95,98,178,110,109,139,71,78,170,96,104,148,68,67,86,34,43,66,30,46,91,52,61,148,104,89,151,93,76,169,117,94,73,40,41,142,97,107,170,112,98,160,113,112,108,69,82,128,75,71,172,97,88,155,62,61,164,54,49,187,75,68,215,97,73,224,97,74,225,98,77,208,102,124,202,102,113,205,109,112,204,112,118,180,94,106,140,66,77,140,77,89,117,62,73,135,76,84,130,57,64,145,67,78,159,81,98,115,45,62,63,21,43,77,43,59,142,96,94,128,88,77,102,58,60,151,108,86,126,89,82,128,81,99,161,105,105,206,148,142,147,95,98,124,65,70,154,69,65,160,56,51,182,65,59,203,83,68,214,92,63,223,98,75,228,103,81,208,101,117,211,109,115,211,112,110,208,106,105,197,97,100,166,73,81,147,62,74,140,61,75,143,66,75,129,48,55,134,51,60,138,59,74,94,31,61,58,17,46,74,36,50,142,92,87,113,68,63,122,76,85,150,104,95,163,118,117,120,76,92,121,73,77,180,121,119,154,88,93,145,68,71,156,57,50,173,59,52,195,72,64,201,76,63,216,96,73,211,107,82,203,97,72,219,110,124,218,113,117,219,114,112,218,108,103,210,98,96,195,87,90,181,76,85,171,70,81,169,73,82,154,61,70,149,58,66,147,61,68,107,42,56,74,27,46,91,45,64,120,63,76,115,64,72,129,82,95,139,90,93,172,120,120,157,109,118,110,60,65,122,58,60,124,44,50,143,54,59,167,69,67,185,76,75,188,73,72,181,65,62,183,77,68,157,77,63,157,75,59,224,113,127,223,113,120,224,112,112,222,108,106,216,100,100,207,92,93,202,87,90,189,76,80,179,71,78,170,67,77,165,62,70,166,63,64,155,69,65,121,55,60,100,43,61,106,46,68,125,72,85,126,78,90,113,62,72,157,98,97,190,127,125,141,76,78,117,45,47,136,49,54,149,55,60,159,65,64,168,66,67,163,58,61,161,59,60,156,60,61,132,56,52,148,68,60,223,110,128,218,104,115,221,105,109,215,101,105,211,97,101,206,91,92,202,84,82,194,75,74,182,68,73,173,65,74,175,64,72,189,69,71,192,79,77,162,74,75,129,63,68,141,83,91,146,93,102,114,65,75,122,68,82,163,101,95,158,80,67,147,64,60,138,56,55,145,54,58,156,57,57,165,63,55,176,68,63,177,71,66,176,74,69,172,73,69,171,77,71,181,81,72,221,109,131,215,98,109,205,95,102,192,85,96,196,84,93,200,84,85,205,90,86,196,81,80,179,68,76,167,62,72,183,77,82,201,90,89,202,96,95,188,101,99,153,82,80,131,64,64,120,54,57,127,66,70,161,97,101,150,72,65,172,75,60,189,85,73,180,76,68,179,71,67,187,72,63,202,83,66,208,86,72,206,85,73,202,83,72,204,87,76,213,96,84,213,96,78,203,99,124,220,109,119,194,94,101,176,75,89,192,81,91,201,85,86,206,92,88,197,86,87,176,69,79,161,61,70,173,75,78,192,92,88,183,87,81,166,80,72,155,70,64,166,77,74,163,73,74,169,85,86,153,66,65,168,64,60,196,81,68,200,83,66,208,87,72,209,86,73,202,76,60,211,82,62,214,84,67,210,80,66,205,75,62,202,74,61,211,85,70,222,100,79,172,77,107,209,109,123,205,108,118,187,84,98,196,84,93,210,93,93,210,95,90,200,88,87,183,75,82,167,66,73,162,63,66,189,85,82,195,88,78,204,101,87,213,106,91,218,103,90,190,82,80,180,79,81,163,60,59,192,72,67,202,78,64,204,82,63,210,86,67,214,87,69,209,80,61,211,82,62,214,84,67,208,78,64,207,77,64,204,75,62,205,79,63,215,92,73 diff --git a/examples/net3/img2_0.0081.txt b/examples/net3/img2_0.0081.txt new file mode 100644 index 0000000..6d44f49 --- /dev/null +++ b/examples/net3/img2_0.0081.txt @@ -0,0 +1 @@ +4,88,93,72,60,63,55,78,80,79,73,78,68,76,88,77,125,141,129,122,135,124,104,114,101,155,170,144,134,148,125,75,85,69,60,66,56,85,94,83,82,88,78,70,66,60,83,68,66,64,52,48,68,73,57,92,108,86,69,85,84,111,124,126,203,214,215,155,166,167,111,123,122,89,101,97,101,115,116,78,93,94,61,77,72,124,139,137,81,96,101,69,91,91,135,159,141,110,116,86,54,57,46,65,66,66,86,91,82,71,81,68,88,102,88,115,127,114,118,126,112,123,134,113,99,110,90,63,71,56,55,62,51,72,81,70,72,79,69,73,69,62,84,69,66,69,56,55,82,85,73,106,119,100,73,87,87,158,169,171,211,221,225,154,165,167,102,114,109,87,100,89,87,104,97,62,78,76,58,71,68,84,98,96,74,93,94,87,111,113,136,162,148,101,107,77,70,73,62,51,52,52,99,102,92,84,92,79,54,67,52,88,99,85,147,152,139,106,112,96,97,103,88,68,74,61,56,63,51,70,80,68,67,73,63,70,66,60,85,70,67,72,57,59,71,70,64,105,115,99,79,91,92,175,184,187,197,207,210,158,169,170,72,85,78,68,82,68,70,89,78,53,69,66,69,78,79,54,67,65,95,117,113,103,127,126,96,119,110,77,82,59,70,73,65,57,59,58,90,93,81,94,101,86,55,67,50,77,87,71,145,148,135,137,138,128,87,89,79,64,69,57,63,71,58,71,82,69,65,71,61,70,66,60,78,64,60,69,54,57,56,53,52,70,78,66,76,86,88,170,179,181,148,159,156,111,123,119,62,75,67,63,76,65,64,85,72,61,78,72,56,62,65,40,52,49,78,102,90,72,92,86,75,93,86,69,73,60,62,65,59,59,62,59,57,59,48,69,73,58,77,86,69,87,95,79,145,147,134,158,157,151,112,112,104,98,100,89,59,66,54,60,71,59,53,60,51,62,59,53,79,64,62,76,60,62,52,48,47,55,62,52,59,69,70,106,115,112,87,99,89,66,79,68,59,72,63,62,73,68,64,84,74,62,78,71,35,41,44,40,52,50,52,74,61,66,81,71,82,92,88,66,71,64,83,88,80,78,83,80,74,73,69,83,82,71,94,99,84,102,107,92,155,155,144,166,164,158,120,115,107,124,119,110,84,84,77,79,88,78,72,82,73,75,75,73,98,83,83,96,78,75,74,67,63,74,79,76,85,97,89,100,114,95,90,104,85,82,96,78,87,98,86,77,84,82,89,100,94,67,80,73,41,52,52,60,72,70,61,76,69,68,81,77,89,89,91,64,67,63,75,79,70,73,76,74,71,72,69,77,79,68,86,91,77,106,106,92,157,149,138,178,164,159,118,104,96,102,93,84,98,98,93,60,67,59,60,67,60,68,67,67,90,75,75,85,65,63,66,58,57,59,62,63,88,100,89,119,133,108,91,106,82,121,135,111,124,134,115,72,78,70,91,99,90,59,71,61,30,41,38,56,67,64,60,72,66,60,69,64,90,84,85,57,58,53,58,60,52,59,59,58,68,70,65,67,71,60,70,71,60,117,109,95,165,144,130,177,148,137,139,114,101,111,96,85,98,95,90,58,61,54,50,52,47,60,57,58,88,73,73,85,65,65,63,52,56,54,55,59,97,107,98,128,141,116,108,121,96,141,153,129,126,135,111,79,83,69,97,104,91,57,67,56,40,48,44,80,89,85,62,71,64,57,60,57,104,97,96,68,68,64,65,65,58,62,62,60,80,78,74,89,86,77,104,96,90,176,157,145,192,162,141,177,139,115,182,146,123,165,140,124,136,126,118,83,80,73,56,55,51,65,60,61,92,78,78,89,70,69,73,60,63,62,61,66,110,117,113,133,142,125,115,125,109,156,165,148,154,160,143,78,80,70,126,130,121,96,103,96,64,70,69,141,147,147,130,136,134,94,97,98,124,119,119,115,112,108,98,96,88,59,56,56,103,93,90,149,132,128,171,151,152,164,136,127,185,149,121,190,150,110,209,169,133,203,170,146,160,139,127,94,84,77,79,74,72,91,84,85,97,83,84,89,70,66,77,64,60,66,63,68,129,132,135,127,132,127,142,147,147,213,217,214,188,189,184,88,86,88,160,161,160,155,159,158,78,81,87,138,141,147,193,198,201,188,192,199,151,151,155,113,111,110,103,101,99,69,62,63,137,119,117,191,167,161,201,175,168,192,162,142,195,159,124,194,153,111,209,166,125,208,169,138,140,112,94,94,80,71,93,88,85,94,88,90,100,87,87,95,76,71,76,61,57,61,57,62,85,89,95,72,77,80,80,84,95,115,118,129,101,103,111,86,86,96,119,121,129,106,111,119,59,63,76,79,84,96,100,105,116,111,119,132,113,116,126,56,54,57,73,68,72,125,108,108,173,147,141,203,174,163,228,199,179,234,204,171,207,174,135,189,149,116,198,152,116,179,138,104,116,88,64,106,92,81,133,129,128,101,100,104,97,87,87,96,76,72,80,63,64,67,64,69,59,65,71,44,51,56,45,49,65,50,54,72,59,63,78,79,83,96,81,85,97,62,67,79,42,48,61,47,53,66,66,74,88,72,84,102,91,95,114,83,77,78,136,121,118,179,150,139,200,162,147,221,182,165,219,183,160,209,175,145,199,167,134,195,159,131,196,154,121,167,129,98,113,87,66,124,111,101,192,189,189,164,163,170,121,112,114,101,82,79,91,74,75,94,91,96,98,104,110,80,86,92,74,77,90,77,79,95,80,82,95,96,98,108,103,103,113,75,74,83,59,62,70,60,67,74,61,72,81,64,78,96,87,94,115,114,103,103,184,160,150,191,154,135,202,160,133,220,179,147,209,173,139,206,173,137,214,186,150,203,173,145,192,155,123,165,128,99,121,95,78,110,97,91,125,123,127,100,101,111,110,102,108,113,95,93,101,84,82,96,92,97,104,110,118,89,95,104,88,90,102,96,97,110,80,81,91,87,89,96,112,115,126,96,101,115,79,88,100,71,86,95,68,84,94,80,90,107,101,108,130,106,95,98,207,183,172,202,171,153,209,175,148,218,187,151,220,191,154,232,206,167,240,216,178,212,185,155,186,148,116,152,113,84,116,86,68,90,77,73,86,86,94,64,67,80,93,86,96,109,92,91,92,76,71,77,74,77,82,88,97,66,73,84,71,76,89,74,78,92,69,74,84,77,82,90,83,90,103,75,85,103,76,87,105,69,82,99,69,81,96,81,86,98,91,96,114,82,75,82,156,139,133,176,158,148,170,153,141,178,160,146,189,170,152,205,184,164,226,204,180,219,190,157,194,153,117,152,108,76,114,78,58,85,70,68,86,87,97,71,75,90,98,93,105,112,96,96,92,76,69,76,73,76,83,88,98,74,80,93,79,88,104,81,91,107,87,97,110,100,111,121,100,106,115,99,100,108,105,101,111,108,98,110,115,104,115,106,102,109,108,107,121,80,77,84,94,87,86,108,101,102,96,91,99,95,91,100,101,94,100,125,113,115,214,196,180,232,202,169,200,158,122,149,104,73,105,69,51,97,82,78,124,127,133,119,125,136,131,126,136,121,103,103,94,77,71,79,78,84,103,111,125,98,109,125,96,114,132,102,117,133,97,106,114,98,101,104,112,105,104,120,105,104,132,112,117,138,113,118,139,114,115,116,100,100,118,109,118,132,131,137,130,130,132,114,113,121,94,93,111,87,91,106,100,103,119,118,114,124,218,206,187,236,206,175,202,161,127,150,108,80,104,70,55,107,93,89,147,151,153,169,177,181,152,148,154,119,101,102,94,77,73,78,77,85,108,116,130,111,121,135,112,122,137,106,109,120,113,105,107,116,98,93,135,112,103,144,119,115,149,123,125,125,100,99,131,105,97,125,96,91,112,97,99,155,154,160,170,169,174,133,132,140,103,101,117,102,104,116,104,107,119,113,110,121,204,194,180,230,203,175,203,163,131,151,109,81,103,70,54,104,90,88,145,146,150,145,148,154,122,117,122,114,100,99,101,86,83,84,76,79,117,113,119,123,115,120,130,112,113,128,106,104,130,103,99,129,98,92,134,104,95,124,95,87,118,88,83,111,82,75,121,91,80,115,84,74,102,82,79,85,84,92,104,103,110,119,118,124,111,109,121,111,111,120,113,117,125,110,109,122,185,176,170,219,196,173,201,165,135,154,113,86,108,73,57,98,82,80,135,130,135,123,118,122,110,99,100,113,99,94,123,109,102,121,104,98,126,107,103,124,101,97,135,105,91,128,99,83,124,97,83,134,108,95,127,99,87,122,92,81,118,89,77,109,79,68,114,83,70,110,79,66,93,69,63,84,82,91,97,95,107,117,116,123,132,128,139,147,146,151,135,139,143,126,125,140,167,161,161,214,195,175,201,168,141,164,124,98,123,88,71,99,78,73,126,110,111,135,116,117,124,104,97,123,103,91,134,114,100,143,115,100,143,112,101,135,105,97,138,110,91,129,102,82,128,105,87,131,111,95,126,102,90,123,95,83,119,92,76,109,82,69,112,83,73,101,74,61,104,82,75,107,106,115,114,112,126,125,124,131,155,151,160,155,153,156,139,142,144,131,132,146,156,152,157,223,206,189,208,177,151,166,127,101,124,89,71,91,65,57,102,77,74,111,81,77,119,90,76,126,100,80,128,102,81,128,93,71,142,106,90,144,112,103,139,107,94,149,117,102,142,113,100,134,106,95,132,106,99,115,91,81,111,88,72,111,88,75,107,84,76,89,68,57,114,95,89,123,121,130,131,129,140,129,128,135,142,140,149,124,123,131,120,121,129,120,120,134,146,142,150,226,209,194,218,191,165,174,138,112,130,89,73,91,61,51,103,77,66,105,73,59,127,91,70,131,95,71,117,81,59,126,89,68,155,118,101,137,103,90,145,107,95,144,106,90,124,88,73,122,87,76,129,99,87,103,77,63,96,72,59,101,78,65,87,66,55,85,65,56,113,91,84,129,128,137,126,124,132,121,120,128,124,122,132,116,114,125,116,115,126,122,120,132,141,137,145,222,206,194,228,205,178,190,157,127,146,105,83,110,74,59,118,86,69,126,92,70,128,91,64,126,86,60,118,77,54,130,91,69,150,113,93,136,100,82,132,91,75,127,89,69,120,84,63,129,94,80,128,97,81,99,70,54,107,80,69,98,74,63,84,62,48,91,69,58,122,98,86,131,130,138,113,112,120,118,117,125,129,127,136,132,129,139,129,126,136,126,124,134,134,129,137,208,193,187,230,210,185,207,179,144,166,128,96,131,88,66,125,83,62,142,102,77,137,99,69,129,89,58,128,84,58,138,96,71,146,107,84,138,100,79,140,99,81,150,112,90,147,111,88,139,105,89,129,99,83,120,93,78,108,83,74,90,68,58,111,90,76,97,75,60,116,94,79,119,118,127,110,109,117,112,111,119,123,120,128,121,116,124,120,115,123,118,114,121,111,105,112,185,173,173,233,216,195,222,198,162,194,160,126,162,119,92,137,92,67,144,101,73,157,117,86,161,120,90,156,114,86,160,120,94,152,115,89,148,111,89,158,118,98,157,120,95,146,110,86,131,97,79,126,97,80,111,86,72,100,76,68,111,91,82,147,128,114,116,92,75,106,87,69,129,128,136,120,119,127,119,118,126,122,119,126,118,113,119,119,113,120,125,120,126,116,110,118,148,139,143,224,210,195,233,211,183,218,187,161,195,158,132,158,119,91,142,101,74,158,114,88,174,133,107,173,136,110,157,122,97,148,116,93,152,119,97,160,121,99,157,120,93,147,112,85,137,103,83,131,103,86,118,96,83,127,105,98,133,114,107,127,108,96,119,93,80,111,92,78,116,114,123,113,112,120,113,112,120,121,116,124,126,119,126,118,111,118,128,120,127,131,124,132,131,123,127,188,175,165,228,207,187,223,194,176,211,182,157,185,154,125,162,124,98,158,112,90,160,117,95,166,132,108,155,124,102,151,124,103,163,134,114,156,121,98,156,120,93,157,123,97,169,136,116,161,133,117,151,129,120,142,122,118,122,104,99,115,95,86,111,83,74,109,90,83,104,96,109,103,95,106,106,99,107,114,106,114,115,105,114,105,96,104,107,98,103,109,100,105,118,108,111,136,121,120,198,180,170,221,200,181,223,201,171,211,186,153,185,152,119,176,136,103,167,123,92,157,118,90,151,120,99,147,119,100,156,126,106,170,145,120,172,148,114,167,140,112,177,147,120,168,145,113,146,129,106,133,117,101,135,123,101,146,133,101,123,101,77,114,96,95,105,94,108,104,94,105,106,96,105,111,101,110,109,99,108,109,99,106,107,98,102,101,92,94,110,101,104,105,93,98,143,129,127,212,198,182,232,215,188,226,204,172,209,179,146,195,159,123,173,131,96,150,108,79,146,114,92,155,126,107,139,109,89,163,140,113,177,157,112,172,150,97,173,150,83,177,162,87,155,145,85,156,146,93,171,165,105,172,166,95,160,147,88,127,115,94,107,96,108,108,98,107,107,98,105,113,104,111,114,104,111,120,111,116,121,112,114,114,106,106,115,109,112,103,96,102,113,105,107,197,189,182,239,225,206,233,212,186,225,198,169,206,173,139,178,141,107,146,109,80,141,108,84,164,136,115,152,125,106,159,133,109,172,149,104,180,158,101,185,165,91,185,173,89,169,161,91,166,158,98,159,155,90,168,165,90,173,164,100,132,123,95,114,104,113,120,110,117,111,102,107,111,102,107,107,98,103,114,105,108,129,120,120,136,128,125,151,144,144,133,127,131,116,111,116,166,162,161,225,214,203,233,215,197,226,202,177,210,180,149,187,153,121,153,118,90,143,110,82,158,130,106,148,124,106,160,135,116,173,151,122,181,158,137,180,157,136,166,152,121,151,141,121,138,128,120,122,115,104,131,126,104,161,150,129,135,126,121 diff --git a/examples/net4/img1_0.2240.txt b/examples/net4/img1_0.2240.txt new file mode 100644 index 0000000..c7c6c42 --- /dev/null +++ b/examples/net4/img1_0.2240.txt @@ -0,0 +1 @@ +9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,114,236,255,253,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,252,252,253,252,247,163,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,180,251,252,252,250,152,189,252,244,128,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,218,252,252,252,199,70,0,127,252,252,253,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,253,252,252,155,7,0,36,223,252,252,253,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,38,236,254,253,127,0,0,43,183,253,253,253,247,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,252,253,252,47,0,36,227,252,252,252,252,211,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,252,253,174,13,119,241,253,252,252,252,252,211,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,242,253,224,211,252,252,253,205,247,252,252,185,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,79,253,252,252,252,252,86,11,144,252,252,150,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,106,203,211,211,0,0,145,253,253,194,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,197,252,252,106,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,180,252,252,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,252,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,252,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,233,253,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,252,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,252,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,206,252,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,252,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/examples/net4/img2_0.2290.txt b/examples/net4/img2_0.2290.txt new file mode 100644 index 0000000..694853f --- /dev/null +++ b/examples/net4/img2_0.2290.txt @@ -0,0 +1 @@ +7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,163,195,47,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,177,236,252,253,253,136,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,128,245,253,254,240,253,253,118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,211,253,245,169,54,78,253,253,155,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,221,253,227,41,0,0,120,253,253,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,59,39,0,0,0,0,236,254,254,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,235,253,223,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,244,253,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,73,253,253,54,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,73,253,253,54,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,254,230,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,182,253,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,43,128,254,253,248,108,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,128,207,253,253,254,253,253,245,67,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,73,253,240,162,194,254,253,129,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,53,78,0,92,255,254,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,190,254,253,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,253,254,253,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,253,254,210,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,194,254,102,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/examples/net5/img1_0.0260.txt b/examples/net5/img1_0.0260.txt new file mode 100644 index 0000000..cc99051 --- /dev/null +++ b/examples/net5/img1_0.0260.txt @@ -0,0 +1 @@ +7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,31,51,51,132,152,193,214,213,21,0,0,0,0,0,0,0,0,0,0,0,102,183,203,203,203,203,203,243,233,252,253,252,253,252,253,252,102,0,0,0,0,0,0,0,0,0,0,62,254,253,254,253,254,253,244,243,203,243,224,122,102,183,255,253,102,0,0,0,0,0,0,0,0,0,0,20,172,252,253,252,253,252,122,40,0,40,20,0,0,82,253,252,61,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,62,102,0,0,0,0,0,0,0,102,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,142,253,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,254,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,253,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,254,213,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,253,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,254,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,243,253,111,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,253,254,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,252,253,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,173,253,203,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,253,252,203,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,254,253,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,253,252,102,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,254,253,102,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,213,171,20,0,0,0,0,0,0,0,0,0,0 diff --git a/examples/net5/img2_0.0470.txt b/examples/net5/img2_0.0470.txt new file mode 100644 index 0000000..cc99051 --- /dev/null +++ b/examples/net5/img2_0.0470.txt @@ -0,0 +1 @@ +7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,31,51,51,132,152,193,214,213,21,0,0,0,0,0,0,0,0,0,0,0,102,183,203,203,203,203,203,243,233,252,253,252,253,252,253,252,102,0,0,0,0,0,0,0,0,0,0,62,254,253,254,253,254,253,244,243,203,243,224,122,102,183,255,253,102,0,0,0,0,0,0,0,0,0,0,20,172,252,253,252,253,252,122,40,0,40,20,0,0,82,253,252,61,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,62,102,0,0,0,0,0,0,0,102,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,142,253,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,254,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,253,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,254,213,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,253,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,254,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,243,253,111,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,253,254,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,252,253,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,173,253,203,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,253,252,203,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,254,253,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,253,252,102,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,254,253,102,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,213,171,20,0,0,0,0,0,0,0,0,0,0 diff --git a/examples/net6/img1_0.0140.txt b/examples/net6/img1_0.0140.txt new file mode 100644 index 0000000..9629dd0 --- /dev/null +++ b/examples/net6/img1_0.0140.txt @@ -0,0 +1 @@ +6,14,15,18,15,16,19,17,18,21,16,19,21,17,21,22,19,22,25,19,21,26,19,21,26,21,22,26,22,23,28,23,24,29,25,26,31,26,27,32,26,27,32,26,27,32,25,26,31,23,24,29,22,23,28,23,24,28,22,23,28,23,24,29,25,26,31,26,27,32,26,27,32,26,27,32,27,28,33,26,28,33,25,28,33,25,28,33,24,27,32,24,27,32,23,26,31,12,12,20,14,14,21,16,16,23,15,18,21,15,19,21,14,18,22,15,19,24,18,20,25,20,22,27,22,23,28,23,24,30,24,26,31,24,26,31,24,26,31,25,26,31,25,26,31,23,24,29,22,23,28,22,23,28,21,22,27,22,23,28,23,25,30,24,25,30,24,25,30,25,26,31,27,28,33,26,27,32,24,27,32,24,27,32,22,25,30,22,25,30,21,24,29,12,14,20,13,15,21,15,16,23,15,20,21,21,24,26,34,32,32,20,23,31,20,23,29,21,23,30,22,26,30,23,26,32,24,27,31,25,29,30,24,27,32,23,27,33,23,26,32,22,25,30,22,24,29,21,22,27,21,22,27,21,22,27,23,24,29,23,24,29,23,24,29,24,25,30,25,26,31,25,26,31,23,26,31,23,26,31,23,26,31,23,26,31,22,25,30,13,16,21,14,17,21,16,18,23,8,15,20,65,61,50,134,114,93,57,52,50,19,24,27,26,28,30,22,23,27,21,24,30,26,29,33,29,30,33,29,29,37,26,29,35,26,29,34,25,28,33,25,27,32,23,25,30,21,22,27,21,22,27,23,24,29,23,24,29,24,25,30,25,26,31,25,26,31,25,26,31,24,27,32,24,27,32,24,27,32,24,27,32,23,26,31,14,17,22,15,18,23,16,19,24,19,20,27,112,95,81,162,138,110,105,92,70,85,76,61,89,82,74,55,52,49,48,46,38,41,40,33,30,34,33,28,31,34,28,29,32,27,27,31,22,25,30,21,24,29,21,22,28,21,22,28,20,21,27,23,24,29,23,24,29,23,25,30,25,26,32,26,27,32,26,27,32,24,27,31,24,27,32,24,27,32,24,27,32,23,26,31,15,18,23,16,19,23,16,18,24,48,39,35,130,108,84,133,110,86,128,98,70,158,117,81,167,134,103,146,121,96,143,112,72,136,103,66,123,95,70,120,92,71,112,88,69,102,82,64,90,75,58,76,65,55,58,53,48,41,39,37,42,38,38,39,33,35,35,31,34,32,30,32,32,30,31,26,29,29,21,28,28,24,27,30,23,26,35,20,28,34,22,27,30,24,27,31,16,19,24,17,19,24,17,18,24,52,43,35,132,105,77,138,106,76,137,95,60,163,111,64,181,141,100,181,145,111,187,135,82,199,141,87,199,141,91,202,155,114,203,158,118,205,153,106,204,154,107,199,157,121,200,171,146,175,151,126,192,167,138,186,158,139,172,145,131,161,136,118,151,129,114,133,116,102,101,86,72,59,44,43,54,40,46,43,38,36,27,27,26,15,25,28,16,19,24,17,19,24,16,17,23,50,44,38,144,109,77,158,110,69,158,107,63,170,113,64,167,133,96,166,137,104,190,131,78,196,135,77,191,133,80,187,147,109,195,149,105,203,142,87,204,145,93,189,139,91,183,146,112,202,163,134,220,181,145,224,188,153,224,190,162,228,197,170,233,198,170,220,181,155,169,130,107,97,58,37,116,78,58,115,83,60,103,76,56,91,70,55,16,19,24,17,19,25,17,18,23,64,50,42,156,118,79,163,114,66,168,114,67,178,126,77,146,124,94,134,117,91,170,125,82,173,131,91,144,118,92,133,114,96,159,122,90,194,135,83,200,140,83,175,122,67,150,108,60,173,124,81,188,135,93,183,135,90,181,132,89,179,134,95,169,130,98,139,104,79,136,90,62,157,99,60,169,113,73,174,120,78,181,126,82,170,125,87,17,20,25,16,20,25,23,24,28,87,65,52,161,120,78,172,123,72,185,131,76,178,128,76,138,118,92,126,112,98,131,110,87,126,114,96,118,106,94,108,99,96,112,97,86,132,108,84,141,112,86,128,102,83,115,95,78,123,97,75,140,110,85,119,89,65,107,76,50,126,92,59,144,110,79,153,125,93,185,139,97,204,144,87,193,129,76,182,121,78,180,118,76,160,111,78,17,20,25,16,20,26,27,28,31,96,75,58,169,124,80,176,120,67,180,124,68,169,124,78,135,114,89,118,103,90,94,89,74,74,80,62,105,90,70,118,106,94,116,111,103,110,101,92,96,88,77,82,78,75,91,89,89,86,82,79,87,83,77,82,79,72,80,74,64,125,104,82,175,145,115,193,174,148,193,164,131,184,136,93,169,109,69,168,103,58,166,102,57,149,95,56,17,20,25,18,22,27,20,21,26,93,73,54,179,134,87,176,120,69,182,128,83,149,116,84,141,130,110,132,119,103,62,63,60,43,46,44,107,95,75,132,115,91,145,132,115,138,123,109,117,102,88,94,82,72,103,91,83,101,90,86,94,86,78,92,86,75,87,82,72,74,66,60,88,77,67,116,108,94,148,125,97,157,108,68,157,107,68,159,106,67,149,94,56,138,89,51,16,21,25,18,21,30,32,28,30,101,77,52,186,139,93,189,134,87,185,132,87,145,114,80,142,135,114,147,134,117,90,85,73,61,54,44,127,117,98,133,125,107,138,128,113,145,134,121,130,117,107,108,94,85,93,81,69,90,83,77,96,90,84,87,83,76,83,76,68,76,67,60,72,66,58,66,62,49,75,64,49,117,85,60,159,124,95,143,109,82,124,86,60,122,83,53,29,28,29,58,48,45,77,57,48,127,91,59,178,125,83,182,123,84,179,117,72,154,113,68,156,140,109,166,146,122,163,146,120,156,139,112,143,133,110,123,120,110,117,111,102,134,126,114,137,124,112,117,103,90,102,90,76,81,75,62,86,82,76,88,83,80,90,85,81,81,78,72,70,66,59,75,71,60,64,60,56,77,67,56,143,115,91,135,108,84,120,96,73,120,93,68,87,65,56,115,86,62,129,94,64,158,110,69,166,117,74,163,126,90,173,138,104,145,115,83,123,95,67,153,128,94,168,147,108,172,151,121,158,140,114,130,118,93,115,104,87,138,125,108,139,126,109,131,119,104,124,108,96,94,78,62,79,72,66,96,90,90,94,90,88,80,78,75,64,61,59,68,63,57,78,75,69,55,53,46,102,85,66,128,109,90,131,115,94,133,115,94,116,84,66,139,107,77,169,131,89,167,129,90,162,125,88,155,124,88,160,130,100,150,121,94,126,94,67,128,95,64,129,102,67,134,106,73,147,112,76,151,126,92,137,121,96,186,168,141,161,146,122,127,116,104,116,103,91,104,86,69,94,82,68,108,102,94,95,91,85,83,78,76,75,70,66,71,66,60,83,78,75,60,57,56,63,57,50,91,81,73,133,111,88,143,118,89,147,120,92,169,142,107,166,137,100,159,132,103,160,135,106,158,134,101,154,126,98,150,119,93,148,118,89,141,110,79,124,92,59,102,69,40,102,66,35,129,94,64,174,147,122,203,183,154,183,162,134,147,126,111,112,97,84,96,85,68,82,69,53,97,88,78,102,97,86,95,91,82,83,78,68,75,71,61,87,82,78,65,59,57,59,53,49,67,62,60,94,81,61,139,112,78,177,141,107,165,130,95,150,122,96,154,125,97,154,126,94,151,122,88,154,123,93,158,127,99,162,134,105,170,143,112,168,134,103,124,90,58,94,66,37,110,81,57,168,140,110,196,169,133,193,166,132,164,138,114,102,86,69,70,65,49,70,62,50,89,85,80,88,85,77,92,88,80,89,85,74,80,76,63,85,80,75,66,60,59,60,54,50,62,61,58,48,48,42,115,94,70,151,116,81,145,112,81,140,112,85,140,114,83,140,112,80,145,113,82,154,122,88,164,133,100,174,145,116,182,155,123,191,164,128,153,125,89,99,75,48,151,130,108,120,100,79,113,89,63,120,96,71,98,81,59,85,70,56,85,73,65,93,85,79,101,96,91,94,88,79,87,82,76,81,76,66,79,74,62,81,77,70,75,69,66,62,57,53,51,51,45,44,44,41,88,73,56,142,118,89,135,113,85,142,121,92,140,119,89,145,120,90,157,129,101,162,136,106,167,140,108,174,144,115,178,148,120,185,156,125,154,129,101,120,99,74,166,142,116,132,113,92,68,57,39,50,40,28,61,51,35,78,65,49,83,72,60,88,82,72,84,79,71,99,91,81,94,86,77,79,72,61,65,59,47,74,70,61,86,79,70,62,56,47,49,47,38,55,53,46,72,59,47,147,126,100,141,121,95,147,126,100,152,131,102,157,131,101,161,136,107,149,128,102,141,119,94,132,110,86,122,99,80,118,100,82,84,74,62,68,56,47,106,85,68,131,103,76,118,96,71,104,83,62,99,79,57,95,76,54,111,96,77,101,90,71,79,69,55,100,88,76,85,74,63,85,77,65,79,72,61,68,62,53,80,69,59,68,58,48,69,63,52,56,51,42,69,58,46,153,131,102,146,122,94,153,125,94,157,125,96,149,122,93,138,119,89,136,115,90,129,107,85,110,92,74,94,79,64,80,70,59,50,49,46,59,57,57,68,61,55,104,78,58,123,82,51,137,105,78,158,140,114,119,94,68,113,97,77,109,95,74,85,70,52,107,91,78,105,90,78,85,73,62,76,68,55,72,65,57,67,52,46,84,69,59,66,56,46,50,44,36,67,59,46,156,136,106,165,140,108,169,138,105,171,137,108,164,136,107,140,118,87,134,113,87,122,100,78,117,95,75,112,94,78,89,76,64,56,52,48,76,76,74,61,56,52,62,52,45,101,69,47,127,92,63,135,110,82,142,118,91,120,103,82,91,73,55,84,70,53,101,85,72,107,92,79,101,87,75,97,85,71,66,58,47,45,34,23,67,54,39,42,33,25,69,64,58,71,62,51,178,151,115,183,153,118,185,156,125,182,154,125,183,155,127,178,150,120,170,142,112,154,127,94,133,106,79,119,94,75,105,83,64,75,62,47,82,70,58,35,23,20,24,18,14,43,30,22,88,63,44,122,91,64,147,116,92,114,93,74,93,73,56,86,72,55,92,77,64,94,78,66,85,70,58,84,68,52,54,46,34,26,21,13,43,36,25,71,65,57,91,88,83,68,57,45,195,161,125,193,164,129,191,163,136,174,144,117,168,137,106,163,130,100,169,134,98,172,138,100,140,110,81,132,101,79,152,118,88,152,119,86,136,103,74,112,87,63,79,59,39,43,30,22,35,27,21,59,39,27,86,58,44,93,72,55,91,70,53,85,69,57,75,58,46,76,55,38,67,47,27,56,41,22,23,18,10,29,27,23,94,93,85,113,108,101,90,88,87,81,70,55,172,145,118,180,152,119,194,162,131,189,154,124,168,133,101,155,119,87,155,119,84,154,120,83,147,113,83,151,117,88,176,138,100,189,146,102,191,141,101,187,143,97,172,129,81,143,106,71,103,77,52,67,47,34,60,44,33,81,63,43,86,68,44,81,63,48,52,37,28,41,28,15,38,25,14,25,17,11,22,17,10,78,66,53,120,117,105,88,83,81,81,80,73,102,90,72,171,139,107,177,145,109,189,154,114,178,142,107,167,132,101,161,125,93,155,119,84,157,121,83,163,124,86,172,134,92,189,149,103,199,154,107,205,156,110,198,154,109,193,152,106,169,134,93,153,123,88,165,139,108,157,129,99,110,95,71,91,81,57,81,61,39,47,32,22,52,37,24,44,30,22,49,37,20,91,71,44,108,84,59,87,78,66,70,59,51,89,76,56,101,86,64,191,164,136,194,165,134,191,159,122,174,140,105,161,125,93,153,115,81,159,123,86,180,143,102,194,153,110,204,164,116,207,166,116,210,163,115,211,164,118,210,171,128,191,154,116,165,132,101,148,116,88,163,138,112,157,140,122,123,109,91,95,80,63,71,50,32,102,77,54,124,95,62,98,73,47,101,73,48,115,81,51,104,77,51,83,67,51,100,78,57,122,96,71,122,102,79,198,172,143,200,171,142,202,171,138,193,161,126,172,135,99,177,138,102,189,153,119,201,163,120,208,165,120,207,165,119,205,162,114,208,160,114,206,163,121,205,164,126,190,148,112,182,143,108,171,129,93,151,114,78,112,87,64,119,92,66,109,81,55,121,94,66,134,101,68,128,96,64,113,84,56,97,70,48,99,68,45,97,69,43,95,72,48,109,81,57,111,83,59,111,91,66,203,174,142,198,168,135,194,163,132,192,161,129,187,154,117,194,160,124,197,160,128,200,156,114,201,154,104,203,157,106,213,167,117,209,165,120,198,155,108,184,139,98,175,132,98,161,124,88,154,114,78,135,99,71,120,89,63,131,99,69,128,95,70,122,95,68,109,84,58,110,79,53,95,69,46,83,62,41,100,73,46,104,77,49,99,75,51,106,81,56,109,85,61,105,89,67,213,189,161,203,176,143,193,161,128,188,158,127,192,158,126,191,158,122,193,159,122,202,162,121,207,165,121,207,163,117,195,151,103,192,149,106,181,139,97,160,124,85,124,98,71,108,85,65,115,88,65,113,83,63,114,89,69,107,86,65,103,82,66,97,76,54,99,77,60,94,71,53,85,67,47,93,71,47,104,79,51,104,77,51,104,81,56,114,91,63,107,85,60,90,74,59,196,173,144,190,164,130,194,160,124,189,157,119,190,154,118,185,148,113,190,158,123,202,170,135,206,169,134,195,155,117,178,135,95,172,128,88,156,116,84,136,100,68,105,80,54,102,79,57,105,82,61,106,83,60,104,83,61,98,78,56,97,76,59,93,72,56,89,69,56,84,66,53,93,73,55,111,87,61,108,84,60,112,85,58,119,95,69,116,95,72,113,92,69,100,86,64 diff --git a/examples/net6/img2_0.0147.txt b/examples/net6/img2_0.0147.txt new file mode 100644 index 0000000..7721929 --- /dev/null +++ b/examples/net6/img2_0.0147.txt @@ -0,0 +1 @@ +3,38,24,12,50,31,24,37,21,16,17,14,2,63,38,25,104,67,50,90,56,37,96,58,42,112,70,55,112,70,55,114,74,58,105,69,53,83,51,34,105,65,48,112,66,49,115,69,50,123,74,58,121,75,59,119,76,59,122,75,59,124,73,59,122,73,58,119,73,57,116,73,56,115,71,54,115,68,52,114,67,52,114,67,51,111,66,48,107,65,51,103,58,47,163,111,62,33,22,12,36,21,15,32,19,13,24,20,5,80,50,35,108,68,51,75,51,27,81,51,31,103,61,46,100,64,49,104,72,55,85,54,35,90,55,38,113,68,53,98,50,35,111,63,47,124,77,61,122,77,61,121,77,60,123,76,60,124,76,60,123,75,60,122,75,59,119,74,58,118,73,56,117,70,54,115,68,52,115,68,52,113,67,49,110,66,53,107,61,46,171,120,64,21,20,8,27,21,11,32,21,13,52,37,22,106,62,50,113,66,54,72,48,26,81,52,31,93,54,40,69,44,29,68,46,29,77,47,27,109,70,53,105,59,45,95,48,34,114,70,56,121,80,63,121,79,62,123,78,62,125,78,62,124,77,61,122,76,60,122,75,59,121,75,59,120,74,58,119,72,56,116,69,53,115,68,52,113,67,50,111,66,53,109,62,45,170,120,61,18,21,6,26,17,4,42,19,9,80,48,35,102,53,44,97,56,47,70,45,28,87,54,36,90,56,41,40,25,10,48,32,15,99,67,48,115,71,55,93,47,34,98,58,45,90,58,43,107,74,55,123,83,65,126,80,64,127,80,64,124,79,63,123,78,61,123,76,60,123,75,60,122,74,59,120,73,57,118,71,55,115,68,53,113,66,49,113,66,52,110,63,44,165,116,58,45,36,21,51,23,12,63,11,5,72,25,15,62,25,16,41,24,14,48,34,19,90,58,41,82,56,38,32,25,10,53,40,23,93,58,39,99,50,35,97,52,38,88,56,42,65,46,30,98,71,50,124,84,66,128,80,65,129,82,66,126,82,65,125,81,64,125,78,62,125,75,61,124,75,60,122,75,59,121,74,58,117,70,54,115,68,50,115,66,51,112,65,45,151,103,49,50,27,16,66,21,14,84,14,12,65,17,10,39,19,10,15,12,4,32,26,15,80,56,42,61,41,25,30,22,8,57,41,27,71,35,21,80,37,24,95,61,47,78,57,42,92,81,62,109,89,64,121,82,62,132,81,67,131,83,67,129,84,67,128,82,66,125,80,63,125,77,61,124,76,60,121,76,59,119,75,59,119,73,58,118,70,56,114,68,55,114,68,49,140,93,43,49,15,7,67,13,9,83,9,9,60,18,12,32,22,14,22,18,12,34,29,20,47,35,23,39,28,15,38,30,16,45,30,18,51,24,15,55,28,17,57,39,28,71,61,47,103,94,74,113,96,67,103,68,47,125,75,62,133,84,69,132,82,66,130,82,66,123,82,64,126,87,68,134,94,75,132,95,76,123,88,69,119,78,64,119,73,60,115,71,59,115,69,49,133,87,40,55,8,4,66,7,4,75,3,2,51,14,7,24,16,8,21,17,10,31,26,16,28,24,11,29,31,18,60,62,48,47,43,31,31,19,10,37,23,16,35,26,19,39,33,22,71,61,43,127,107,82,91,66,45,94,60,44,130,85,69,133,81,66,127,82,66,140,108,88,170,146,124,190,168,144,193,171,148,173,151,127,152,124,101,123,85,63,115,70,51,115,70,47,124,78,33,54,9,4,63,14,8,72,19,14,45,18,11,21,14,6,23,18,9,24,20,10,22,21,9,25,28,16,49,51,40,50,49,39,47,43,35,51,48,42,30,29,25,20,17,9,56,45,32,122,102,85,100,87,68,68,54,35,110,75,56,133,85,70,135,99,82,180,162,139,201,194,166,207,201,174,205,198,171,202,194,165,187,171,141,155,129,98,127,88,62,116,74,47,116,72,28,51,18,10,45,16,8,47,20,11,34,21,12,23,17,8,30,25,14,26,24,13,18,17,7,23,20,10,37,31,22,50,43,34,84,80,71,57,60,53,21,25,21,16,17,11,36,28,19,62,46,36,68,64,49,58,56,37,117,94,72,139,104,85,165,141,121,193,185,159,186,187,158,188,188,161,185,184,156,187,187,157,177,172,140,166,151,119,157,130,101,133,99,72,111,71,30,34,10,4,25,6,1,23,9,3,21,15,8,19,14,5,30,25,12,29,28,17,21,22,11,22,18,6,34,26,15,67,61,49,149,149,135,69,73,60,10,15,8,13,15,11,23,18,13,22,15,9,24,24,15,62,63,45,149,140,113,167,151,126,189,180,156,186,184,158,181,180,153,179,173,148,180,175,149,183,183,156,162,162,135,140,134,107,150,137,111,156,132,108,130,94,56,33,3,2,29,8,6,22,9,8,13,8,5,19,13,4,33,23,9,29,29,17,24,28,16,26,28,10,33,30,14,89,91,73,215,220,200,96,98,78,29,31,20,24,25,21,17,15,13,15,16,12,32,34,27,93,93,77,166,164,135,174,171,142,178,177,151,168,167,141,175,169,145,178,166,143,190,181,157,191,189,165,152,151,131,99,97,77,95,93,72,135,122,101,158,128,94,72,7,9,43,9,7,15,9,4,7,9,8,36,15,11,60,20,10,26,23,11,26,23,14,32,33,16,32,31,17,83,84,66,219,222,197,123,123,99,89,86,67,49,48,37,13,14,10,15,19,11,60,62,49,138,136,117,167,163,137,161,157,129,163,159,133,159,153,127,166,159,134,171,165,139,182,181,154,183,183,160,145,145,127,75,76,60,35,37,23,71,71,56,126,112,90,83,8,7,60,7,4,28,8,2,11,7,4,53,14,11,75,17,11,19,15,4,26,25,16,34,32,17,30,27,15,79,77,60,197,196,173,152,151,128,142,137,115,70,67,50,23,25,15,49,54,41,118,120,102,163,161,141,170,164,140,166,159,134,171,164,139,164,157,132,155,148,123,161,158,131,166,169,143,172,174,152,132,134,116,71,72,58,17,20,10,22,26,15,70,62,47,77,8,2,83,9,5,58,7,4,34,6,0,75,13,9,76,10,8,21,13,5,23,27,16,28,25,11,33,29,15,116,113,95,185,183,162,175,171,154,184,178,158,104,100,80,69,71,55,125,129,112,168,169,150,171,169,148,166,161,137,165,159,135,173,167,143,160,154,130,151,144,120,155,153,128,152,154,131,160,161,142,126,127,111,55,55,43,11,14,5,13,16,7,33,27,16,78,10,2,98,6,4,82,6,4,71,12,5,97,9,8,81,11,10,35,15,8,20,21,10,27,22,9,38,33,17,134,130,111,161,157,139,162,157,142,166,159,140,113,108,86,122,123,102,173,175,155,177,177,156,176,175,153,170,167,143,168,164,140,162,157,134,146,141,118,152,147,124,155,152,130,137,138,118,134,135,118,115,115,103,37,37,28,8,10,4,11,13,8,20,16,10,83,9,2,96,3,0,91,7,5,96,14,10,96,6,8,60,9,8,39,15,9,21,17,6,36,30,17,48,42,25,115,110,90,146,140,123,146,139,124,147,138,118,106,100,77,134,134,113,179,180,157,181,180,157,181,181,157,173,173,149,163,160,138,150,146,125,140,135,114,146,141,121,140,137,117,112,114,96,91,91,78,84,84,75,30,30,24,5,7,3,4,5,4,8,6,4,94,10,7,95,8,5,87,8,4,101,13,12,75,7,8,21,8,2,33,22,13,27,23,11,34,26,15,47,40,21,85,78,59,132,125,109,129,122,103,115,106,83,110,103,81,144,142,122,179,178,154,182,181,156,183,183,158,171,172,148,153,152,130,142,139,119,146,144,123,143,141,120,127,126,107,91,92,76,49,49,37,43,43,36,16,16,12,3,5,2,4,5,6,3,3,4,90,17,13,88,15,9,80,8,3,91,12,10,65,12,7,30,23,8,44,34,17,42,31,14,33,21,11,41,26,16,58,34,20,88,64,50,109,91,73,106,94,72,112,108,86,150,149,130,176,175,152,176,175,151,180,180,156,171,171,148,153,152,130,147,144,122,148,145,122,138,137,115,111,112,95,60,61,51,25,26,18,22,22,17,6,6,4,1,3,1,3,5,4,3,5,3,73,28,16,79,25,14,78,21,11,97,43,33,85,45,30,73,49,29,71,44,24,66,38,18,39,22,13,33,12,12,58,16,10,63,16,7,80,38,27,89,68,52,108,103,83,159,157,137,174,173,152,174,173,152,178,177,156,170,169,148,160,159,138,148,144,121,139,135,109,131,132,109,91,94,81,28,28,25,16,16,13,12,12,10,4,4,2,1,2,0,1,4,0,2,5,0,63,33,15,69,33,15,79,44,24,107,84,59,101,86,59,100,79,53,84,44,24,70,26,10,36,17,9,22,9,7,52,15,10,69,13,12,78,17,13,80,45,33,127,115,98,171,166,147,173,171,151,176,175,154,169,167,146,163,162,141,157,156,135,143,140,116,138,133,109,127,128,107,71,73,62,13,13,11,8,8,6,5,5,3,3,3,1,2,3,1,1,3,1,2,4,1,58,31,13,59,31,13,73,51,26,100,91,57,98,94,59,105,89,59,81,46,24,63,20,6,32,14,8,13,8,4,38,9,3,65,11,11,74,11,7,86,51,39,140,131,113,164,164,144,170,169,148,172,169,148,162,159,138,161,158,138,154,153,132,144,140,116,138,134,111,106,107,89,38,40,31,8,8,6,5,5,4,2,2,1,2,2,0,2,3,2,3,3,2,5,5,4,56,27,14,54,25,13,71,49,27,100,88,54,101,91,57,104,89,60,71,49,25,49,21,6,25,10,7,17,13,6,49,25,12,73,30,22,73,23,15,108,85,69,142,142,121,154,160,137,166,164,143,168,163,143,159,154,134,162,158,138,155,153,131,144,141,117,136,131,110,80,79,65,18,20,13,7,7,5,2,2,1,1,1,0,2,1,0,3,3,1,6,6,3,4,4,3,51,25,18,49,22,17,68,47,29,102,88,57,103,89,58,103,87,61,65,47,26,39,20,8,18,8,6,43,33,23,97,75,49,97,71,48,74,39,25,112,96,78,138,139,117,153,153,133,160,155,135,160,154,134,153,147,128,158,152,132,154,151,129,143,140,115,131,126,106,75,74,62,15,17,12,4,4,2,2,2,1,4,4,2,4,4,2,5,5,1,9,9,3,8,8,3,31,16,11,33,14,12,57,43,29,99,92,62,102,92,62,106,87,65,68,43,29,35,16,9,14,7,6,58,42,30,122,99,65,112,97,62,84,56,38,89,72,54,121,111,93,151,139,122,148,139,121,144,137,118,154,147,128,152,144,126,149,145,124,140,136,113,125,120,102,65,64,54,10,11,8,4,5,3,4,5,2,7,8,5,8,8,3,16,14,4,38,37,26,50,48,37,29,15,7,25,12,6,37,27,20,69,60,43,84,73,50,90,76,57,51,34,27,24,10,9,13,8,7,55,43,30,116,92,58,113,93,57,103,80,53,92,72,47,99,81,60,129,111,94,139,130,111,143,138,118,156,148,129,138,130,111,142,133,113,141,134,114,112,109,93,38,39,30,6,7,2,6,6,3,2,5,2,14,16,9,38,36,23,60,56,38,94,92,74,103,100,84,34,22,7,26,17,5,23,16,6,32,24,13,40,33,17,42,36,21,23,17,11,18,11,9,11,7,4,54,44,29,105,80,44,106,83,45,111,89,55,98,74,44,104,77,53,122,95,75,144,134,112,155,150,127,149,141,119,111,101,80,128,113,92,141,128,108,111,104,90,34,35,26,6,5,2,8,3,4,7,6,4,41,37,28,87,77,61,96,84,65,120,111,93,125,116,99,57,43,24,49,38,20,43,33,15,40,30,17,34,26,14,26,21,8,22,20,10,20,17,9,14,11,4,56,46,27,107,80,41,109,83,42,108,81,45,115,84,52,125,87,61,126,87,64,143,121,98,155,139,116,132,113,90,97,76,54,120,96,73,137,115,94,120,107,93,48,43,37,8,5,4,7,3,4,13,10,9,73,66,55,113,99,81,98,82,64,122,111,92,132,121,104,63,41,23,68,46,28,70,48,30,68,47,31,66,49,34,61,48,32,60,52,34,42,36,20,18,16,7,48,37,19,104,75,36,109,79,39,118,85,48,128,89,56,129,83,54,130,81,56,131,91,68,137,99,78,129,89,68,123,80,60,123,83,60,126,94,70,127,102,86,74,58,48,25,16,11,9,7,3,20,20,13,92,87,72,116,106,83,94,82,60,112,105,84,128,125,104,46,25,12,56,33,19,59,34,19,58,32,14,65,40,23,49,30,17,52,39,23,38,30,16,11,8,3,40,28,12,99,67,30,111,76,39,125,84,52,129,83,53,131,82,53,131,78,51,132,80,57,134,81,59,134,79,58,134,77,57,128,76,52,125,81,56,126,87,66,98,64,48,65,41,27,33,21,9,44,37,24,99,92,72,113,101,76,91,76,54,106,99,76,121,118,96,54,45,36,66,54,43,55,42,28,52,32,15,55,33,21,28,12,8,17,8,4,14,9,4,8,6,4,48,35,22,106,72,39,119,80,48,123,75,48,127,77,50,131,81,54,129,80,51,131,80,53,130,78,51,131,76,51,132,75,51,129,75,49,128,76,50,125,74,49,113,63,39,97,53,31,75,41,23,78,53,36,101,79,60,107,82,60,96,67,48,111,91,71,116,101,82,92,93,87,97,97,89,75,72,61,47,40,29,46,32,22,31,19,15,10,7,8,9,8,7,9,7,6,54,40,27,110,75,44,127,81,54,126,74,50,128,76,50,130,79,52,129,78,51,129,79,51,128,77,49,127,73,46,129,73,47,125,69,44,124,69,44,125,69,44,117,61,36,114,60,35,107,57,35,99,55,34,104,63,43,107,64,43,105,60,41,109,69,50,111,73,55 diff --git a/examples/net7/img1_0.0540.txt b/examples/net7/img1_0.0540.txt new file mode 100644 index 0000000..61074ab --- /dev/null +++ b/examples/net7/img1_0.0540.txt @@ -0,0 +1 @@ +7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,191,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,255,255,255,255,128,128,128,128,128,128,128,128,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,255,255,255,255,255,255,255,255,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,128,128,128,128,128,191,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,255,255,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,128,128,128,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,255,255,255,255,255,191,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,255,255,255,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,255,255,191,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/examples/net7/img2_0.1440.txt b/examples/net7/img2_0.1440.txt new file mode 100644 index 0000000..4c5f319 --- /dev/null +++ b/examples/net7/img2_0.1440.txt @@ -0,0 +1 @@ +9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,233,220,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,59,251,253,253,187,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,214,246,126,212,253,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,171,253,160,0,118,253,179,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,219,253,52,0,9,253,254,243,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,219,253,52,0,9,253,254,253,47,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,219,253,52,0,5,218,254,253,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,253,95,0,0,175,254,199,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,251,246,177,129,231,254,180,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,149,253,253,253,253,254,156,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,125,141,88,255,205,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,253,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,253,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,205,253,152,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,166,253,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,94,253,200,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,246,253,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,253,153,3,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,125,253,253,147,167,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,211,253,253,187,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/examples/net8/img1_0.0096.txt b/examples/net8/img1_0.0096.txt new file mode 100644 index 0000000..5eb037e --- /dev/null +++ b/examples/net8/img1_0.0096.txt @@ -0,0 +1 @@ +0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,252,253,252,173,177,169,191,194,189,255,255,255,255,254,255,255,253,253,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,254,254,254,254,254,254,254,254,254,253,253,253,255,255,255,236,237,235,74,82,70,96,103,95,243,244,245,255,252,255,255,255,255,255,255,255,253,255,255,254,254,254,254,254,253,254,254,253,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,253,253,253,255,255,255,208,208,207,46,53,41,51,58,47,221,224,221,236,238,233,198,204,191,168,178,163,216,222,218,255,255,255,255,255,253,255,255,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,166,166,165,33,34,25,27,30,18,114,120,109,96,108,89,58,77,40,63,83,42,190,200,186,255,255,255,254,254,253,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,254,255,253,252,253,251,251,251,252,255,255,255,197,196,197,47,47,45,23,28,15,35,49,22,48,70,27,54,76,30,121,134,102,237,243,234,254,255,255,253,254,251,254,255,253,255,255,255,255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255,253,253,253,254,249,250,254,251,254,254,254,255,253,251,255,253,250,254,254,252,255,255,255,255,255,255,254,254,254,255,255,255,253,254,251,248,250,245,255,255,255,219,221,220,101,105,100,37,48,28,47,64,27,54,76,26,57,83,28,107,126,88,228,231,224,250,251,252,252,253,253,253,255,250,254,255,252,255,255,255,255,255,255,255,255,255,255,254,253,255,253,250,245,254,253,243,252,251,253,255,253,255,255,255,255,254,254,255,255,252,251,254,250,246,255,252,254,255,255,255,255,255,254,254,254,255,255,255,254,254,252,252,253,248,193,200,189,79,93,70,40,59,22,61,83,29,77,100,41,63,88,32,52,79,30,121,142,109,230,239,229,248,252,249,249,249,250,255,253,254,255,255,255,255,255,255,255,255,255,255,255,255,253,254,252,251,253,246,253,255,255,247,252,254,219,216,217,182,181,169,162,182,160,209,219,210,249,251,252,248,253,255,254,255,255,255,255,255,254,254,254,254,254,254,255,255,255,217,219,213,74,84,63,59,79,40,94,119,70,123,142,104,163,178,147,87,107,73,33,56,16,59,81,44,140,154,132,236,242,230,255,254,252,251,246,251,254,252,254,255,255,255,254,254,254,252,252,252,250,254,253,255,255,255,237,230,233,157,151,142,93,77,54,80,68,23,43,90,31,104,125,97,236,232,229,255,252,255,255,254,254,255,255,255,254,254,254,255,255,254,255,255,255,226,227,225,167,173,158,186,196,173,210,222,200,232,237,232,250,252,253,201,208,200,62,74,50,56,71,36,116,130,95,119,129,100,195,197,184,231,229,230,253,252,254,255,255,255,254,253,254,255,254,255,232,232,233,163,162,163,88,90,78,78,52,25,159,27,10,162,38,9,57,73,17,102,115,87,230,238,231,247,255,252,255,254,254,255,255,255,254,254,254,255,255,255,253,254,254,254,255,255,255,255,254,255,255,255,255,255,255,254,252,252,251,250,250,255,255,255,179,182,176,70,74,52,75,71,33,69,68,33,101,108,89,184,188,185,249,252,252,255,255,255,255,255,253,198,201,195,87,93,83,39,52,24,45,72,28,70,82,28,142,51,17,158,37,17,70,73,36,176,181,169,248,251,253,247,251,252,255,254,255,255,255,255,254,254,254,255,255,255,255,255,255,254,254,254,254,254,253,253,253,254,254,253,254,255,254,253,255,254,254,254,254,254,251,252,252,159,152,144,87,20,7,87,43,23,103,110,93,155,161,154,192,203,198,207,213,203,152,165,136,86,105,65,44,68,23,55,83,31,57,90,30,55,89,29,64,78,29,73,59,35,158,161,146,244,245,240,247,245,248,253,251,254,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,240,237,232,136,79,71,58,21,1,49,58,36,101,103,87,132,145,129,168,177,166,97,113,89,58,82,36,59,91,28,54,89,26,58,88,27,58,81,30,46,63,26,130,137,119,246,246,240,254,254,251,253,253,253,254,254,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,254,253,253,254,255,255,215,199,195,58,50,29,22,34,12,50,51,33,84,94,71,147,156,145,131,144,133,69,92,53,55,88,21,55,92,24,57,84,29,53,69,32,127,133,111,240,241,232,255,255,251,253,253,252,255,255,255,255,254,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,252,255,255,245,249,247,101,112,87,23,35,13,28,35,19,47,58,34,92,102,85,114,128,110,83,106,65,56,86,24,58,88,31,44,64,25,116,125,105,236,238,230,255,255,254,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,253,253,253,178,191,171,80,102,53,61,78,37,33,54,20,26,40,14,50,62,35,70,88,49,70,95,45,55,80,29,43,60,23,103,114,95,223,228,223,253,255,254,252,252,253,255,255,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,252,254,254,254,254,254,254,255,255,250,189,195,173,74,96,50,62,90,29,81,105,47,84,112,59,53,71,36,27,39,11,49,64,28,64,86,44,41,63,26,52,60,43,203,206,199,255,255,255,250,252,252,249,249,250,246,245,246,254,253,254,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,253,253,251,253,252,254,253,254,254,174,180,165,79,94,55,56,85,28,66,96,38,75,104,45,110,140,80,113,138,89,44,60,27,34,45,20,48,61,36,48,62,40,82,85,78,148,149,145,239,240,238,254,255,255,232,232,232,236,236,236,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,253,254,255,255,255,171,174,172,36,44,32,45,63,25,72,101,43,75,104,46,80,109,53,91,120,64,104,134,77,71,92,47,24,34,10,26,32,19,75,80,70,89,92,85,62,64,59,175,177,174,248,250,250,235,236,236,248,248,248,253,253,253,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,254,254,254,255,255,255,175,175,176,29,35,27,34,48,23,75,98,52,83,112,53,90,119,62,88,117,64,72,101,50,58,87,33,48,69,27,94,100,82,90,90,87,50,51,49,65,67,61,36,38,33,128,130,128,229,231,231,251,251,252,254,254,254,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,253,254,253,255,255,255,187,185,186,31,32,29,31,41,19,78,100,56,95,123,67,103,133,73,99,128,73,78,106,56,47,75,29,50,71,35,140,150,129,233,235,229,230,231,229,123,127,123,39,42,35,42,44,39,112,114,111,211,213,213,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,254,254,255,253,253,253,253,255,255,255,187,189,190,45,46,43,31,35,19,83,104,62,100,132,74,116,144,84,111,141,81,83,111,58,47,71,29,61,82,49,170,179,165,254,255,253,254,254,254,252,255,253,242,247,241,182,184,179,147,149,145,124,125,123,175,176,176,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,254,254,254,251,252,248,255,255,255,196,191,197,64,47,50,51,29,16,102,104,66,110,142,82,121,155,93,119,148,91,82,108,57,47,66,28,99,110,90,201,206,199,255,255,255,255,255,255,254,254,254,254,254,254,255,255,255,236,236,235,197,197,197,224,224,224,232,232,232,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,254,254,254,255,254,252,215,222,210,73,63,56,109,3,5,193,26,25,174,80,51,139,156,94,134,148,97,80,103,60,48,65,34,126,134,114,231,233,224,255,255,255,252,252,252,255,255,255,255,255,255,255,255,255,255,255,255,208,208,208,225,225,225,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,254,255,254,255,255,255,243,239,236,114,130,99,83,72,36,189,25,15,236,0,0,206,42,25,126,139,81,74,98,56,72,88,64,166,172,164,245,246,241,255,255,253,254,252,251,255,254,254,255,255,255,255,255,255,255,255,255,254,254,254,238,238,238,251,251,251,254,254,254,252,252,252,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,254,254,254,255,255,255,186,188,173,78,102,52,114,119,65,186,64,35,216,33,19,178,71,46,66,84,41,92,105,84,196,209,201,255,255,255,253,251,253,254,253,254,255,255,254,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,247,250,244,130,146,111,83,112,53,119,144,89,140,136,86,122,106,58,92,91,56,134,144,127,225,224,223,253,255,255,252,252,252,252,252,252,254,255,255,254,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,249,253,247,143,159,129,80,102,51,100,125,74,82,114,67,91,115,86,178,185,174,250,251,249,255,255,255,254,250,253,255,255,254,253,254,253,254,255,255,254,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,254,255,255,219,225,219,149,159,136,141,152,124,162,170,153,221,222,219,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,254,253,255,254,252,255,251,251,251,250,250,248,255,255,255,254,254,255,251,251,251,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,255,254,255,254,253,254,255,255,254,255,255,254,254,254,254,254,254,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,254,255,255,253,255,255,253,254,255,253,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,254,254,255,255,255,255,255,255,253,255,255,254,255,255,254,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255 diff --git a/examples/net8/img2_0.0100.txt b/examples/net8/img2_0.0100.txt new file mode 100644 index 0000000..cbeecc6 --- /dev/null +++ b/examples/net8/img2_0.0100.txt @@ -0,0 +1 @@ +0,247,252,245,243,248,241,243,248,241,244,248,242,246,248,243,246,248,242,246,249,239,245,248,238,243,248,240,242,247,241,242,247,240,243,248,241,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,241,242,247,240,242,247,240,242,247,240,242,247,240,243,247,241,242,247,241,242,247,240,242,247,240,242,247,240,243,248,241,243,248,241,242,247,240,247,252,245,247,252,245,243,248,241,243,248,241,243,247,241,244,246,241,244,247,240,245,248,239,245,248,237,243,247,239,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,241,246,239,241,246,239,241,246,239,246,251,244,248,253,246,244,249,242,244,249,242,245,249,242,246,248,243,246,248,242,245,248,239,245,248,238,245,249,241,244,249,242,245,250,243,244,249,242,243,248,241,244,249,242,244,249,242,244,249,242,244,249,242,243,248,241,243,248,241,243,248,241,243,248,241,243,248,241,242,247,240,242,247,240,242,247,240,243,248,241,243,248,241,242,247,240,242,247,240,243,248,241,242,247,240,246,251,244,248,253,246,244,248,242,244,249,242,245,249,242,246,248,243,246,249,242,245,248,239,245,248,237,244,248,240,243,249,242,244,249,242,244,249,242,244,249,242,245,250,243,244,249,242,245,250,243,244,249,242,243,248,241,243,248,241,243,248,241,243,248,241,243,248,241,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,243,248,241,242,247,240,246,251,244,248,253,246,243,248,241,244,249,242,245,249,242,246,248,243,245,248,242,245,248,239,245,248,238,244,249,241,244,249,242,244,249,242,244,249,242,243,248,241,244,249,242,244,249,242,245,250,243,243,248,241,243,248,241,243,249,241,243,248,241,243,248,241,243,249,241,243,248,241,242,247,240,242,246,240,242,247,240,243,248,241,242,247,240,242,247,240,243,248,241,242,247,240,247,251,244,248,253,246,243,248,241,244,249,242,244,249,242,243,248,241,243,248,241,244,249,241,244,249,241,243,248,241,244,249,242,244,249,242,243,248,241,242,247,240,242,247,240,244,249,242,244,249,242,243,248,241,243,249,240,243,250,240,243,249,239,242,249,239,241,247,238,244,247,242,249,251,246,246,248,243,244,246,241,244,248,241,242,247,240,243,248,241,244,249,242,243,248,241,248,251,244,248,253,246,243,248,241,243,248,241,243,248,241,243,248,241,242,247,240,243,248,241,243,248,241,243,248,241,243,248,241,243,248,241,243,248,241,242,247,240,243,248,241,243,248,241,243,248,241,243,248,241,243,249,241,244,249,241,242,248,239,241,246,238,248,253,245,247,249,244,213,215,210,224,226,221,247,249,244,243,247,241,242,248,240,243,248,241,243,248,241,243,247,240,248,251,244,247,252,245,242,247,240,242,247,240,243,248,241,243,248,241,242,247,240,242,247,240,242,247,240,243,248,241,243,248,241,243,248,241,243,248,241,243,248,241,244,249,242,242,247,240,243,248,241,244,249,242,243,247,240,243,246,240,246,249,243,243,247,240,208,211,205,122,124,120,63,65,61,173,175,170,251,253,248,242,246,240,243,248,241,243,248,241,242,247,240,242,247,240,248,251,244,247,252,245,242,247,240,243,248,241,243,248,241,243,248,241,243,248,241,242,247,240,242,247,240,242,247,240,242,247,240,243,248,241,244,249,242,244,249,242,244,249,242,243,248,241,242,247,240,242,247,240,247,250,245,249,250,246,217,218,215,140,142,138,50,51,48,34,35,32,146,148,143,226,228,223,245,247,242,243,247,241,243,248,241,242,247,240,242,247,240,242,247,240,248,251,244,247,252,245,242,247,240,243,248,241,243,248,241,243,248,241,243,248,241,242,247,240,242,247,240,242,247,240,242,247,240,243,247,241,243,248,241,244,249,242,245,250,243,241,247,239,242,247,240,251,255,249,236,238,234,167,167,165,62,62,60,0,0,0,31,31,30,185,187,182,247,249,244,245,247,242,243,245,240,245,249,242,243,248,241,242,247,240,242,247,240,242,246,239,247,250,243,247,252,245,243,248,241,243,248,241,243,248,241,243,248,241,243,248,241,242,247,240,242,247,240,242,248,240,242,248,240,242,248,240,241,247,239,241,247,239,245,249,243,246,249,243,227,230,224,168,171,165,83,84,82,17,17,16,0,0,0,62,62,61,162,162,160,125,126,122,141,143,138,237,239,234,244,246,241,243,247,241,243,248,241,242,247,240,242,247,240,241,246,239,247,250,243,247,252,245,243,248,241,243,248,241,242,247,240,242,247,240,242,247,240,242,247,240,242,247,240,242,248,239,239,246,236,239,246,236,246,252,242,250,255,247,239,240,236,179,179,176,86,87,84,21,22,19,0,0,0,0,0,0,40,40,39,154,154,152,103,103,101,0,0,0,145,147,142,247,249,244,243,245,240,242,246,240,242,247,240,242,247,240,241,246,239,241,246,239,247,251,243,247,252,245,242,247,240,243,248,241,243,248,241,242,247,240,242,247,240,243,248,241,242,247,240,243,248,240,247,252,244,245,249,242,223,228,220,170,173,168,100,100,99,27,27,26,0,0,0,1,1,0,5,5,4,0,0,0,16,16,15,41,41,39,2,3,2,60,62,59,227,229,224,247,249,244,243,245,240,243,247,240,242,247,240,242,247,240,242,247,240,242,247,240,248,251,244,247,252,245,242,247,240,243,248,241,243,248,241,243,248,241,242,247,240,240,245,238,244,249,242,227,230,224,167,169,164,125,127,122,72,75,70,19,20,18,1,0,0,0,0,0,2,2,2,2,2,2,2,2,1,0,0,0,1,1,0,0,0,0,12,12,11,155,157,153,247,249,244,244,246,241,244,246,241,243,247,240,242,247,240,242,247,240,242,247,240,242,247,240,247,250,243,247,252,245,242,247,240,242,247,240,243,248,241,242,247,240,242,247,240,249,254,247,239,244,237,119,121,117,8,9,7,0,0,0,0,0,0,0,0,0,2,2,3,0,0,1,0,0,0,0,0,0,1,1,0,5,5,4,0,0,0,21,21,20,134,134,132,234,236,231,246,248,243,243,245,240,244,246,241,243,247,240,242,247,240,242,247,240,241,246,239,241,246,239,248,251,244,247,252,245,242,247,240,241,246,239,241,246,239,242,247,240,241,246,239,202,207,200,115,119,113,15,16,14,0,0,0,1,1,1,1,1,1,0,0,1,0,0,2,0,0,2,0,0,2,0,0,3,2,2,2,0,0,0,41,41,39,158,158,156,242,243,240,245,247,242,244,245,240,244,246,241,244,246,241,243,247,240,242,247,240,242,247,240,243,248,241,242,247,240,248,251,244,247,252,245,241,246,239,242,247,240,241,246,239,243,248,241,241,246,239,134,139,132,23,26,22,0,0,0,0,0,0,3,3,2,1,1,1,0,0,0,0,0,1,0,0,2,0,0,2,0,0,2,0,0,0,58,58,56,184,185,182,243,245,240,243,246,240,242,246,240,242,246,240,242,246,240,243,246,240,242,246,240,241,246,239,242,247,240,242,247,240,242,247,240,247,250,243,246,251,244,242,247,240,242,247,240,242,247,240,243,248,241,242,247,240,226,231,225,168,172,166,72,73,71,10,10,9,0,0,0,4,3,3,4,4,3,0,0,0,0,0,0,0,0,0,0,0,0,62,62,60,205,205,203,248,250,245,241,246,237,241,248,238,242,247,240,242,247,240,242,247,240,242,247,240,241,246,239,241,246,239,242,247,240,242,247,240,242,246,239,248,251,244,245,250,243,241,246,239,242,247,240,242,247,240,241,246,239,242,246,240,246,251,244,245,250,243,223,224,220,162,163,160,81,82,79,20,21,19,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,94,94,93,244,244,242,242,244,239,241,247,238,241,248,238,242,247,240,242,247,240,242,247,240,242,247,240,240,245,238,241,246,239,242,247,240,242,247,240,242,246,239,248,251,244,244,250,242,241,246,239,242,247,240,242,247,240,242,247,240,242,247,240,241,246,239,241,246,239,244,247,241,249,251,246,228,231,225,166,168,163,75,76,73,9,9,8,0,0,0,1,1,0,0,0,0,22,22,21,191,191,189,248,250,245,240,245,237,241,248,238,242,247,240,242,247,240,241,246,239,242,247,240,241,246,239,242,247,240,242,247,240,242,247,240,242,246,239,247,250,243,245,250,243,241,246,239,242,247,240,242,247,240,241,246,239,242,247,240,242,247,240,242,247,240,241,246,238,240,245,237,244,249,241,248,253,245,224,228,221,156,156,152,68,69,65,15,16,13,0,0,0,0,0,0,86,87,85,232,234,229,243,248,239,241,247,238,242,247,240,242,247,240,241,246,239,241,246,239,241,246,239,242,247,240,242,247,240,242,247,240,242,246,239,247,250,243,245,250,242,241,246,239,242,247,240,241,246,239,240,245,238,241,246,239,241,246,239,240,245,238,240,246,237,241,247,237,240,246,236,241,248,238,244,249,241,246,247,242,221,222,216,154,155,151,73,74,70,25,26,24,97,97,95,227,230,224,243,248,240,241,248,238,242,247,240,242,247,240,241,246,239,241,246,239,241,246,239,240,245,238,241,246,239,242,247,240,242,247,240,248,251,244,246,250,243,242,246,239,243,246,239,242,246,239,242,246,239,242,246,239,242,246,239,242,246,238,241,246,238,241,247,239,241,247,239,242,248,239,242,246,239,242,244,237,245,248,241,252,254,248,228,230,224,194,196,190,229,231,226,246,249,242,242,246,239,242,247,239,242,247,240,242,247,240,241,246,239,240,245,238,240,245,238,241,246,239,241,246,239,241,246,239,241,246,239,248,250,245,247,250,243,243,246,239,243,246,239,242,245,238,243,246,239,243,246,239,243,246,239,243,246,239,242,246,239,241,246,239,241,246,239,241,246,239,243,247,240,245,248,241,243,246,239,243,246,239,247,250,243,249,252,245,246,249,242,243,246,239,243,246,239,242,246,239,242,247,240,242,247,240,241,246,239,241,246,239,240,245,238,241,246,239,241,246,239,241,246,239,241,245,239,247,250,244,247,250,243,243,246,239,243,246,239,242,245,238,243,246,239,243,246,239,243,246,239,243,246,239,242,246,239,241,246,239,241,246,239,241,246,239,242,246,239,245,248,241,244,247,240,244,247,240,243,246,239,242,244,238,243,246,239,244,247,240,243,246,239,243,246,239,242,247,240,242,247,240,242,247,240,242,247,240,241,246,239,241,246,239,241,246,239,241,246,239,241,245,239,247,250,244,247,250,243,242,245,238,242,245,238,242,245,238,242,245,238,242,245,238,244,247,240,244,247,240,242,246,239,241,246,239,241,246,239,241,246,239,241,246,239,244,247,240,243,246,239,244,247,240,244,247,240,244,247,240,243,246,239,244,247,240,244,247,240,243,247,240,241,246,239,241,246,239,242,247,240,242,247,240,241,246,239,242,247,240,241,246,239,241,246,239,241,245,238,247,249,244,247,250,243,242,245,238,242,245,238,242,245,238,243,246,239,243,246,239,243,246,239,243,246,239,242,246,239,241,246,239,241,246,239,241,246,239,242,246,239,244,247,240,244,247,240,244,247,240,244,247,240,243,246,239,243,246,239,243,246,239,243,246,239,243,246,239,241,246,239,241,246,239,242,247,240,242,247,240,242,247,240,242,247,240,241,246,239,241,246,239,241,246,239,246,249,244,247,250,243,242,245,238,242,245,238,242,245,238,243,246,239,243,246,239,242,245,238,242,245,238,241,246,239,241,246,239,241,246,239,241,246,239,242,246,239,244,247,240,244,247,240,244,247,240,244,247,240,243,246,239,243,246,239,243,246,239,242,245,238,242,246,239,241,246,239,241,246,239,242,247,240,242,247,240,243,248,241,241,246,239,241,246,239,241,246,239,241,245,239,247,249,243,247,250,243,242,245,238,242,245,238,242,245,238,243,246,239,242,245,238,242,245,238,242,245,238,242,246,239,242,247,240,241,246,239,241,246,239,241,246,239,241,246,239,242,246,239,242,246,239,242,246,239,243,247,240,243,245,238,242,245,238,243,246,239,243,246,239,241,246,239,242,247,240,241,246,239,241,246,239,242,247,240,241,246,239,241,246,239,241,246,239,240,245,238,247,250,243,246,249,242,241,244,237,242,245,238,242,245,238,242,245,238,241,244,237,242,245,238,242,245,238,241,246,239,241,246,239,241,246,239,241,246,239,241,246,239,241,246,239,240,245,238,241,246,239,241,246,239,243,247,240,242,245,238,242,245,238,243,246,239,243,246,239,241,246,239,242,247,240,241,246,239,241,246,239,241,246,239,241,246,239,241,246,239,241,246,239,241,245,238,247,250,243,245,248,241,241,244,237,241,244,237,243,246,239,243,246,239,241,244,237,242,245,238,242,245,238,241,245,238,240,245,238,240,245,238,241,246,239,241,246,239,241,246,239,241,246,239,241,246,239,241,246,239,243,247,240,242,245,238,242,245,238,243,246,239,243,246,239,241,246,239,242,247,240,241,246,239,241,246,239,241,246,239,241,246,239,241,246,239,241,246,239,241,245,238,246,249,242,245,248,241,242,245,238,242,245,238,242,245,238,243,246,239,242,245,238,243,246,239,243,246,239,241,246,239,241,246,239,240,245,238,240,245,238,241,246,239,242,247,240,242,247,240,241,246,239,241,246,239,243,246,239,243,245,238,243,246,239,243,246,239,243,246,239,241,246,239,241,246,239,242,247,240,242,247,240,242,247,240,241,246,239,241,246,239,240,246,239,240,244,237,246,249,242 diff --git a/examples/net9/img1_0.0040.txt b/examples/net9/img1_0.0040.txt new file mode 100644 index 0000000..0843b8d --- /dev/null +++ b/examples/net9/img1_0.0040.txt @@ -0,0 +1 @@ +1,199,209,210,195,205,206,193,203,204,190,200,201,188,198,198,187,197,198,187,197,197,184,194,195,183,193,193,182,192,192,180,190,190,178,188,187,178,189,181,176,187,179,177,188,180,177,188,180,175,186,178,174,185,177,174,185,177,174,185,177,178,187,179,182,189,182,188,195,188,193,200,193,199,206,199,202,209,202,205,212,205,209,216,209,212,220,213,216,225,222,220,230,227,221,230,227,193,203,204,190,200,201,188,198,199,184,194,194,182,193,190,182,192,190,181,192,189,180,190,188,180,190,188,179,190,187,177,187,185,175,186,182,174,185,177,174,185,177,176,187,179,176,187,179,178,189,181,180,191,183,180,191,183,180,191,183,183,191,184,187,193,186,193,200,193,199,206,199,204,211,204,207,214,207,210,217,210,210,217,210,210,216,210,216,220,217,221,226,224,221,227,224,187,197,198,181,191,192,179,189,190,178,189,187,176,187,183,176,187,183,176,187,183,175,186,182,175,186,182,175,186,182,174,185,181,175,186,181,176,187,179,180,191,183,182,193,185,182,193,185,183,194,186,185,196,188,185,197,189,185,196,188,189,197,190,193,200,193,198,205,198,202,209,202,207,214,207,209,216,209,212,219,212,211,218,211,208,214,208,212,213,209,213,216,212,214,222,216,188,198,199,181,191,192,180,190,191,178,189,186,176,187,181,177,188,182,178,189,183,177,188,182,176,187,181,179,189,184,180,191,185,181,192,185,179,190,182,181,192,184,180,191,183,180,191,183,184,195,187,185,196,188,187,198,190,185,196,188,190,198,191,194,201,194,197,204,197,200,207,200,202,209,202,205,212,205,208,215,208,209,216,209,208,214,207,207,211,204,208,216,207,193,208,197,191,201,202,185,195,196,183,193,194,170,180,176,169,180,172,172,183,176,173,184,176,178,189,181,181,192,185,184,194,186,182,193,185,177,188,180,175,185,177,177,188,180,165,175,167,166,177,169,181,192,184,183,193,185,187,197,189,185,197,189,188,197,190,191,198,191,193,201,193,195,203,195,194,201,194,197,203,196,200,208,201,198,206,199,173,179,172,168,177,167,173,188,175,122,146,130,195,203,202,189,198,197,189,197,196,178,181,178,177,182,175,178,188,180,179,188,180,186,193,186,197,202,196,203,206,200,198,205,195,189,199,187,191,193,185,195,197,190,177,181,173,174,179,170,190,193,185,154,156,148,176,183,173,168,184,173,165,178,167,185,193,184,184,194,184,183,195,184,183,188,181,190,194,188,184,199,188,186,199,186,153,157,146,107,119,106,86,104,90,59,84,68,200,206,204,197,203,201,197,203,201,190,186,184,189,187,182,193,201,193,195,200,193,198,199,193,204,205,198,212,211,203,212,216,204,207,215,201,209,209,199,213,214,203,192,198,186,187,195,182,201,207,194,109,109,97,153,152,141,163,167,158,140,142,134,198,196,187,195,193,184,188,187,177,185,178,171,197,190,185,179,188,176,190,197,183,190,189,177,85,95,81,63,77,61,56,70,53,202,208,206,202,208,206,191,197,195,145,141,138,197,195,190,201,209,201,200,206,198,204,206,196,205,212,195,206,213,198,209,211,200,211,209,200,211,210,198,211,213,200,194,199,185,190,197,182,196,203,185,127,130,115,160,153,145,177,158,157,154,136,133,180,163,159,180,157,155,171,142,142,165,143,138,171,158,149,181,161,156,212,195,191,178,175,168,71,81,71,65,71,59,66,64,50,203,209,207,208,214,212,161,168,166,109,105,103,186,184,179,195,203,194,198,203,196,189,192,180,168,179,155,160,170,149,192,180,170,220,185,183,226,189,183,219,185,177,200,171,161,195,166,155,203,169,156,179,159,149,168,161,156,158,147,143,157,146,140,156,146,139,158,138,135,155,124,124,152,136,129,155,153,137,169,141,137,193,166,163,151,146,142,55,65,67,56,56,58,54,49,46,178,184,182,185,191,189,116,122,120,76,72,69,142,140,135,146,153,145,147,153,145,122,124,112,90,99,76,102,104,83,151,111,103,185,99,103,188,95,93,195,105,102,193,107,102,193,107,102,193,101,98,173,120,118,166,163,158,146,157,145,158,167,153,177,182,170,158,156,147,154,142,136,153,154,141,153,161,144,186,164,156,171,135,129,130,104,100,81,72,80,80,64,75,57,47,54,139,145,143,142,148,146,78,84,82,71,67,65,156,154,149,152,160,152,150,155,148,144,144,136,122,125,110,119,109,90,147,70,64,167,26,34,173,35,33,191,59,54,190,61,55,188,60,54,182,59,57,170,104,105,163,161,158,146,158,146,167,176,160,182,191,178,152,158,146,141,145,133,153,158,150,150,151,144,179,157,149,185,127,122,186,108,106,181,126,123,165,112,114,106,76,77,155,159,152,151,155,148,78,83,78,68,65,61,176,174,168,182,188,177,176,180,169,173,174,165,127,126,116,81,60,44,136,42,36,186,25,30,186,30,27,189,39,34,186,40,34,185,41,35,173,45,42,182,105,106,180,152,153,168,149,145,171,152,145,176,164,157,158,151,142,156,149,138,160,144,135,149,117,115,159,106,101,192,102,98,214,100,96,203,106,94,178,99,88,109,67,56,112,110,92,109,111,90,62,64,50,58,57,48,110,107,95,78,78,64,80,80,65,76,74,62,100,93,83,148,113,100,163,65,58,177,23,23,187,25,22,189,33,30,185,35,33,185,42,40,194,68,67,208,111,110,202,131,131,191,127,129,188,124,125,190,136,137,173,128,127,166,117,107,170,107,93,178,92,85,196,87,83,199,78,73,184,63,56,163,56,49,140,70,59,121,90,75,124,120,91,132,129,99,90,86,67,97,88,74,81,70,55,71,57,44,102,86,76,150,128,121,198,164,159,232,174,166,197,86,82,177,22,22,187,27,24,182,31,28,183,44,41,204,74,71,218,107,103,217,122,116,206,118,113,201,110,108,203,102,101,200,99,101,190,93,95,185,83,77,194,78,71,201,70,68,192,58,55,182,41,36,175,39,34,102,18,16,111,61,52,164,141,123,144,139,100,145,136,101,127,112,90,128,107,90,145,117,101,183,148,137,218,176,172,238,184,184,234,164,164,220,130,127,197,68,67,184,25,27,184,32,29,191,49,46,210,82,77,223,106,99,213,106,100,205,103,97,207,100,93,210,89,85,210,80,76,203,70,66,198,61,60,194,58,53,188,48,44,177,42,39,159,43,31,170,43,30,167,41,34,78,26,23,102,71,60,162,144,122,100,93,48,93,75,39,113,84,65,162,125,112,208,163,151,236,179,172,235,165,163,216,130,132,212,110,113,202,87,87,182,45,43,185,34,32,197,55,51,220,87,82,222,100,94,213,97,92,212,90,88,207,85,83,204,82,78,206,72,70,195,62,55,187,51,41,184,43,34,173,44,34,161,47,37,161,64,51,174,94,72,189,99,76,156,66,50,117,91,83,111,94,80,150,135,113,97,89,42,124,100,68,189,148,137,211,160,158,228,169,166,229,150,146,208,112,107,206,97,95,215,95,98,209,82,82,198,64,59,202,65,58,218,87,81,223,96,91,210,87,84,208,84,84,211,77,77,195,71,68,177,69,64,162,59,55,166,51,45,174,40,31,166,31,22,168,61,51,182,102,91,193,120,106,203,128,112,182,97,80,152,80,64,126,117,102,113,102,87,135,121,102,139,121,80,202,164,138,240,189,185,233,175,180,210,136,139,197,103,101,201,88,81,213,91,86,214,88,89,220,91,88,219,91,84,214,89,79,210,87,80,210,85,80,211,82,82,208,74,77,192,59,58,164,58,50,109,39,30,65,17,13,121,31,28,176,39,38,178,44,40,179,84,77,206,141,131,189,107,100,179,71,71,169,55,54,137,59,49,83,77,58,102,91,75,118,104,88,164,87,72,217,127,120,244,167,162,218,132,128,196,99,95,200,95,92,209,92,90,214,91,90,211,87,86,212,86,85,213,85,83,207,79,77,206,79,75,207,77,72,199,63,57,188,44,40,163,41,42,129,57,51,79,57,44,18,16,8,72,15,10,187,62,61,196,72,66,188,77,66,173,84,67,159,42,36,168,31,36,155,37,40,105,37,30,74,63,43,101,91,72,116,105,86,179,73,70,193,82,81,216,113,109,204,93,89,204,91,86,208,92,90,210,90,90,209,86,85,206,82,79,210,83,81,213,82,81,204,70,70,200,65,64,189,51,47,180,37,30,174,30,23,149,50,49,113,71,63,91,87,73,32,35,26,66,16,7,170,57,51,174,66,57,172,39,35,159,37,29,158,35,30,143,33,31,113,39,33,88,54,40,99,87,67,114,104,83,124,113,93,207,98,95,211,105,101,206,89,88,213,85,87,209,83,83,209,81,81,206,80,78,205,79,75,208,78,74,207,75,71,201,65,62,189,50,49,183,39,38,178,30,29,178,28,25,168,29,23,140,74,66,121,105,92,101,100,86,50,42,36,87,17,8,165,52,41,173,86,73,164,38,43,151,31,36,117,29,23,90,38,25,93,70,53,110,97,79,120,108,86,127,115,92,132,120,97,220,101,100,209,99,94,210,86,86,209,75,80,203,71,74,208,69,70,206,72,68,205,75,67,203,67,60,194,55,49,182,39,34,176,30,26,179,28,25,183,27,27,181,28,27,160,30,25,112,73,61,117,120,104,137,137,124,70,55,51,111,19,16,175,55,47,143,84,66,121,37,37,97,25,24,74,42,26,89,86,62,112,108,87,129,109,93,133,118,96,137,123,100,153,139,116,226,97,97,212,89,86,210,90,87,204,83,84,202,75,77,209,65,66,201,61,54,189,53,42,180,38,29,178,32,24,179,30,23,179,29,23,180,29,23,184,26,25,179,30,29,149,32,26,100,72,62,134,139,126,180,178,166,70,57,51,112,33,28,146,46,37,84,51,29,78,41,29,92,71,55,105,103,77,113,116,89,127,116,93,140,111,94,137,119,95,152,136,111,149,133,109,188,50,50,189,52,52,174,61,54,160,60,54,174,59,57,192,48,48,184,38,30,178,36,23,182,35,25,189,38,29,194,39,31,187,33,25,178,30,21,182,28,25,176,33,31,134,28,22,93,65,59,165,165,157,157,153,143,42,33,25,64,29,17,94,42,25,82,69,44,103,87,67,116,109,86,129,116,92,131,115,91,135,119,93,139,123,96,159,143,117,155,138,112,132,115,89,175,33,35,171,28,27,134,38,29,82,16,11,110,21,18,171,32,34,185,28,27,189,36,30,185,38,30,193,43,37,202,49,43,190,38,32,173,28,20,168,27,23,163,37,35,126,31,29,65,40,41,116,113,112,92,87,80,44,37,26,67,55,36,103,81,59,113,102,77,122,105,84,122,109,86,131,110,88,134,113,90,140,124,98,157,148,120,156,141,116,132,116,92,132,116,91,178,39,33,186,32,25,153,40,35,106,33,27,121,34,26,165,36,33,175,31,25,178,38,27,174,36,25,172,34,23,171,33,22,170,32,22,170,32,29,178,61,57,195,105,99,139,77,72,29,15,16,38,37,35,57,52,43,73,67,51,105,91,70,125,106,84,123,105,83,125,107,85,129,113,90,128,114,90,138,123,100,160,145,122,152,137,114,124,109,86,120,105,82,132,117,94,160,46,27,181,32,20,175,34,32,169,37,40,169,32,32,172,26,24,165,32,19,165,33,18,175,28,21,172,30,22,168,32,22,164,35,26,185,75,73,182,101,95,155,108,96,93,75,59,47,42,32,71,67,56,98,91,74,106,97,75,116,101,78,126,107,85,126,108,86,129,111,89,132,116,93,144,129,106,156,141,118,140,125,102,115,100,77,115,100,77,128,113,90,129,114,91,124,54,37,122,28,17,127,32,28,146,28,36,160,25,36,163,27,34,158,32,33,158,33,35,162,29,37,153,28,34,143,26,29,123,25,23,106,52,43,89,52,40,77,58,43,81,75,58,94,89,70,108,100,80,114,104,81,121,108,82,126,109,86,128,110,89,129,111,89,130,112,90,145,128,105,159,143,120,147,132,109,118,103,80,100,85,62,120,105,82,133,118,95,134,119,96,109,80,70,75,51,38,61,42,30,64,31,25,69,25,21,77,23,22,83,21,22,82,22,23,75,23,24,69,24,22,64,27,23,66,40,31,59,54,35,69,62,43,101,86,71,119,100,86,118,105,85,117,106,81,122,108,83,129,112,87,129,111,88,130,113,91,137,119,96,156,138,116,164,147,125,141,126,103,128,113,90,114,99,76,116,101,78,128,113,90,120,105,82,128,113,90,131,115,101,106,108,89,98,98,78,83,83,62,68,77,53,71,70,51,75,62,49,73,62,47,70,70,49,76,78,56,86,90,68,89,91,69,102,95,77,115,103,86,118,101,85,114,94,78,115,99,78,130,115,92,134,115,94,134,111,94,128,107,88,132,115,92,164,146,124,174,156,134,141,125,102,130,115,92,122,106,84,125,110,87,138,123,100,130,115,92,120,105,82,131,116,93,134,118,95,128,120,96,134,118,95,137,113,91,130,111,88,128,111,89,128,108,88,131,112,91,127,110,85,117,99,75,116,96,72,115,93,70,128,102,86,125,103,86,112,95,74,112,99,75,125,111,87,133,117,94,133,114,93,134,112,94,140,120,99,161,143,120,163,145,122,141,123,100,134,117,94,131,117,92,120,106,81,129,115,90,137,123,99,132,118,95,131,117,94,135,121,98,141,129,104,136,125,101,132,120,95,133,116,93,141,123,100,141,124,101,134,117,95,131,114,91,116,99,76,111,94,71,117,99,76,120,101,78,126,106,82,127,108,84,121,104,79,126,111,85,133,118,92,133,119,93,131,117,91,145,130,105,172,155,130,165,148,122,133,116,90,130,113,88,137,121,96,127,113,87,129,115,89,135,121,94,131,118,92,130,119,95,133,122,98,136,126,101 diff --git a/examples/net9/img2_0.0040.txt b/examples/net9/img2_0.0040.txt new file mode 100644 index 0000000..7d508b5 --- /dev/null +++ b/examples/net9/img2_0.0040.txt @@ -0,0 +1 @@ +8,45,78,130,45,78,130,47,80,132,48,81,133,50,83,135,51,84,136,52,84,136,51,84,136,52,85,137,54,86,138,53,86,138,53,86,138,55,87,139,55,88,140,53,86,138,53,85,137,53,85,139,52,83,139,50,82,138,50,82,138,51,82,138,51,80,137,49,78,135,48,77,134,46,75,131,44,73,127,42,71,125,41,70,124,39,69,122,40,66,121,39,64,119,39,64,120,49,83,134,50,84,133,52,85,135,53,87,137,55,88,138,56,90,140,57,90,140,57,90,140,58,92,142,60,94,144,59,93,143,59,93,143,60,93,143,60,93,143,59,93,143,59,93,143,58,92,144,57,89,144,55,88,142,55,88,142,56,87,142,56,85,141,54,84,139,53,82,138,51,81,136,48,78,133,46,76,131,44,75,129,42,73,127,43,70,125,42,67,123,43,68,125,54,89,136,55,89,135,57,91,137,58,92,139,59,93,140,61,95,142,62,96,143,62,96,143,64,98,145,65,99,146,65,99,146,65,99,146,65,99,145,64,98,145,64,98,145,64,98,145,63,97,147,61,94,146,60,93,144,59,92,143,59,91,143,60,90,143,59,89,142,57,87,140,54,84,137,52,82,136,50,80,134,48,78,132,46,77,131,46,73,129,45,70,126,46,71,128,60,94,140,60,94,140,62,96,142,64,98,143,65,99,145,68,102,147,69,103,148,69,103,148,70,104,149,72,106,151,73,107,152,73,107,152,71,105,150,70,104,150,70,104,150,70,104,150,69,103,150,67,101,149,66,99,148,64,98,147,64,96,146,66,96,146,64,94,144,62,92,142,58,88,139,56,86,140,55,85,139,53,83,137,52,82,136,51,78,133,50,75,131,50,75,132,65,100,145,67,102,146,70,104,149,71,106,150,73,107,151,75,109,154,76,110,155,76,110,155,77,111,156,79,113,158,79,113,158,79,113,157,78,112,157,78,112,156,78,112,156,78,112,156,77,111,156,75,108,155,73,107,153,72,106,152,71,104,151,72,102,150,70,101,148,68,99,146,64,95,143,62,92,145,61,91,145,59,89,143,58,88,142,57,84,139,56,81,137,55,80,137,72,106,151,74,108,152,77,110,155,78,112,156,80,114,158,82,116,160,84,118,161,84,117,162,86,117,164,87,119,166,86,120,165,87,121,165,87,118,163,85,117,162,84,118,163,83,119,164,83,117,160,82,115,158,80,114,160,78,112,161,75,110,159,75,109,156,75,107,154,75,103,150,73,100,147,68,98,148,65,96,147,64,95,146,62,93,144,62,90,142,61,87,140,59,85,139,81,114,161,82,114,161,84,116,163,86,119,164,88,121,165,90,123,167,91,124,168,92,123,170,96,122,175,97,125,175,96,127,173,98,129,173,97,125,168,94,124,166,91,125,168,87,126,168,88,123,163,89,119,160,87,117,162,85,116,165,83,115,164,81,116,160,79,112,158,80,109,157,79,106,155,74,105,152,71,104,150,69,101,148,66,99,145,67,95,143,65,91,139,63,90,139,90,122,167,91,122,167,93,124,169,94,126,169,95,127,169,98,130,171,99,131,172,100,130,174,102,129,178,105,132,178,106,133,177,108,136,176,103,135,171,100,133,168,98,134,168,94,134,167,97,130,170,102,128,171,104,127,165,108,127,161,108,125,159,102,122,160,91,118,160,81,116,164,77,116,166,79,112,159,79,110,155,76,108,153,74,106,151,73,101,148,69,96,143,68,96,143,99,129,170,101,130,171,103,132,173,104,133,172,104,135,172,107,137,175,108,138,176,109,138,178,112,137,181,115,139,181,118,140,179,121,143,180,115,141,180,112,140,178,110,139,175,108,139,171,109,133,173,105,121,161,104,113,142,106,109,126,110,105,119,111,103,122,112,118,145,98,124,158,87,124,164,88,120,163,88,117,161,86,115,159,83,112,157,81,108,153,77,104,149,75,103,148,108,136,174,110,137,175,113,141,178,114,142,177,116,144,177,117,146,179,118,146,180,118,146,181,121,146,183,125,146,182,128,145,179,134,147,180,132,145,183,131,143,181,130,142,175,131,142,171,127,134,165,102,103,132,69,65,82,55,44,51,69,50,51,89,64,66,93,84,94,98,109,129,103,127,156,100,127,167,99,125,168,97,123,166,94,120,163,90,117,159,85,113,155,84,112,154,118,143,177,119,145,178,123,148,182,124,150,182,126,152,182,127,153,183,127,153,184,127,153,184,129,154,186,135,155,186,140,153,183,151,158,186,160,159,180,161,156,171,160,152,161,163,152,156,168,156,162,159,144,154,112,95,102,92,72,77,104,84,86,119,106,108,112,109,120,109,118,138,116,135,163,111,135,174,108,133,174,107,131,172,104,128,169,98,125,165,93,121,161,92,120,161,127,152,183,129,153,184,132,156,187,133,158,187,134,159,188,135,160,188,135,160,188,136,161,189,139,163,189,143,159,184,143,152,176,151,152,171,161,148,143,171,152,135,188,165,142,191,165,137,208,182,166,223,197,192,179,154,154,150,125,130,138,126,135,135,147,161,137,153,174,128,148,179,121,145,182,120,143,183,118,141,181,116,139,179,113,135,175,107,133,172,101,129,167,100,128,167,140,160,187,141,160,187,144,163,190,143,164,192,144,165,194,147,166,193,146,163,188,109,123,146,83,93,110,74,79,89,70,69,71,69,60,56,81,53,42,98,67,53,130,93,68,147,115,92,175,150,142,204,176,172,212,187,183,200,176,171,188,172,174,175,176,188,161,171,185,141,158,182,131,152,187,130,151,188,129,149,185,127,147,181,125,143,177,117,141,173,112,140,170,112,140,171,153,165,188,153,165,188,156,168,191,155,169,194,155,170,196,159,171,194,160,169,190,121,128,147,98,100,115,59,58,65,23,17,15,33,20,12,46,20,14,61,34,30,85,45,26,122,88,70,174,155,151,171,149,145,180,156,151,189,163,155,197,171,165,200,179,177,202,190,187,183,181,187,155,160,181,142,158,186,139,157,186,137,154,181,134,150,177,128,147,175,124,146,174,124,146,175,164,170,188,164,170,188,167,173,191,165,173,192,165,174,193,169,176,192,171,175,188,168,170,185,173,173,191,108,105,117,40,30,36,24,10,11,16,3,5,34,20,21,79,43,26,148,113,92,189,174,166,183,168,162,208,187,180,201,174,167,183,150,143,201,168,158,207,182,169,198,181,175,164,154,162,154,163,181,149,164,183,146,161,181,141,157,178,139,153,178,136,150,177,137,150,178,177,180,194,178,180,194,180,182,196,179,184,198,179,185,198,182,184,195,181,181,189,176,175,185,185,183,200,117,110,125,46,33,44,28,13,19,8,2,9,26,19,24,82,51,33,144,109,84,89,77,66,72,62,55,195,176,169,221,193,186,181,149,143,231,202,195,222,199,188,201,184,178,183,170,176,166,170,180,159,168,181,152,164,179,149,164,180,148,158,180,145,153,178,145,153,178,143,146,161,144,147,162,144,147,162,152,158,171,160,167,178,165,169,178,165,166,172,172,172,179,183,180,192,111,103,114,50,35,45,40,23,29,10,3,8,29,21,23,89,57,36,154,119,92,78,63,52,35,24,17,166,149,141,224,201,192,207,182,177,181,159,157,186,168,161,118,103,100,158,146,152,175,172,180,171,173,185,164,172,188,157,171,190,156,166,186,156,162,183,154,161,182,71,77,95,71,77,96,74,80,99,80,89,104,89,100,111,93,101,111,85,90,97,96,98,104,103,100,104,63,54,59,60,44,50,60,40,43,39,24,23,58,45,40,107,73,49,172,138,110,158,141,131,132,118,111,200,184,176,236,220,209,230,210,201,186,159,153,186,161,149,113,90,80,147,126,125,148,139,147,132,130,144,129,134,154,123,135,159,120,131,151,120,129,146,113,123,140,69,81,105,72,84,108,77,89,112,78,91,111,79,94,110,79,92,107,45,53,62,30,32,36,39,33,37,33,21,25,46,28,31,57,36,37,57,41,39,120,101,92,153,119,94,190,158,129,232,213,200,226,211,204,231,215,207,234,217,209,227,209,203,223,200,194,226,199,187,211,183,173,172,147,144,126,110,113,101,87,94,87,82,98,67,80,106,64,79,104,67,79,100,60,73,95,57,74,104,63,79,109,68,84,114,73,88,115,77,93,118,78,94,116,41,50,61,20,19,24,29,19,28,36,22,29,46,29,32,48,29,30,48,35,35,163,143,134,222,193,173,219,190,167,237,219,205,232,218,211,235,217,211,238,217,214,234,217,216,229,218,217,234,212,207,240,215,211,184,162,162,144,118,116,117,85,85,102,80,93,82,89,116,75,91,123,75,87,118,75,88,119,51,66,96,54,69,98,58,74,103,64,78,107,68,83,114,64,79,107,33,40,57,16,14,21,23,17,23,29,20,25,47,36,38,48,35,36,45,31,35,158,137,135,231,207,197,218,199,190,208,194,187,214,201,194,214,197,192,209,189,183,205,187,183,200,184,179,193,169,159,175,148,141,124,100,99,97,64,65,87,47,54,92,62,81,95,90,121,86,97,131,81,94,126,79,92,125,52,66,94,54,68,95,58,72,99,60,71,103,55,67,103,57,70,102,44,48,70,12,9,18,10,6,9,14,9,11,24,18,19,26,19,21,32,18,24,99,79,81,138,118,116,110,98,99,82,71,68,127,112,104,141,123,113,132,111,100,124,103,91,118,95,80,120,90,72,97,67,54,57,32,27,53,29,30,69,43,54,84,67,88,78,81,110,70,83,114,70,83,115,68,81,113,48,60,86,51,63,88,54,66,91,51,61,91,47,57,93,56,66,99,50,51,73,13,7,15,6,0,0,7,1,2,6,1,3,6,1,5,14,3,7,32,14,15,44,24,21,28,15,14,29,13,7,86,64,50,105,80,63,106,79,58,109,81,59,121,89,67,132,95,70,124,89,70,101,75,66,80,71,71,76,73,85,75,80,101,68,86,110,66,84,112,68,81,113,64,77,110,45,55,80,48,58,83,50,61,85,50,58,86,52,61,93,52,61,89,42,42,59,16,6,12,14,0,0,12,1,2,10,1,6,8,1,8,11,1,4,23,5,2,44,20,10,39,18,8,47,22,11,98,66,46,130,97,70,144,108,75,162,125,91,176,137,106,180,137,106,175,136,112,135,108,95,89,84,86,78,82,98,65,77,102,67,87,110,68,85,112,69,82,114,65,78,110,44,53,77,46,55,78,47,56,80,51,58,83,56,64,91,51,59,83,35,34,47,20,9,12,23,3,4,21,4,7,17,3,10,14,4,11,15,4,5,62,40,27,110,78,54,113,82,55,124,89,64,158,119,92,184,143,109,194,150,109,197,154,112,194,150,114,180,134,99,164,124,97,122,94,80,83,71,78,77,74,98,64,69,99,61,70,97,58,70,99,55,68,100,55,68,100,43,51,74,44,52,75,47,55,78,50,58,80,51,58,82,51,56,79,34,36,47,19,16,16,21,10,9,20,8,7,22,9,7,21,7,4,27,9,2,95,65,37,147,108,64,157,114,74,167,125,87,172,129,91,190,146,108,194,150,111,189,144,107,186,140,105,163,122,87,147,113,89,118,92,86,72,64,80,59,64,86,52,63,87,56,64,91,59,67,97,56,67,97,56,67,97,37,44,67,38,45,68,41,48,71,39,47,68,43,50,73,49,52,75,34,36,48,20,20,21,20,15,13,19,10,8,24,12,7,24,9,2,33,12,3,100,67,37,145,103,56,162,116,74,160,116,75,158,114,73,177,133,95,179,135,101,174,129,96,168,123,89,157,120,87,135,105,84,110,87,85,66,61,78,48,57,77,39,52,73,42,51,77,44,52,80,44,54,82,46,56,85,31,37,58,36,42,63,39,45,66,36,43,62,42,49,69,48,52,74,34,36,49,25,24,27,25,18,19,21,11,10,25,12,9,24,9,4,37,18,8,97,65,40,132,90,50,160,116,76,159,115,76,154,110,71,171,127,91,174,130,97,163,118,87,152,110,78,145,111,80,123,97,78,96,76,76,61,56,72,50,57,76,42,54,73,44,51,75,42,49,74,38,47,72,39,48,73,30,34,53,32,36,55,34,37,57,33,40,56,37,45,62,39,43,65,29,30,47,25,24,31,25,19,22,23,13,14,25,13,11,24,10,7,40,22,13,90,60,40,123,82,50,151,108,70,155,112,74,153,109,72,166,122,87,166,121,90,153,109,80,129,90,62,121,91,64,103,81,66,82,65,67,58,52,68,48,53,70,40,51,69,43,48,70,45,50,72,42,49,70,41,48,69,32,33,51,29,31,48,30,31,49,32,38,51,33,41,56,33,37,59,30,31,49,27,25,35,26,19,25,24,14,18,25,12,14,24,10,9,35,18,11,77,48,34,116,76,52,137,97,62,144,102,65,151,107,72,161,117,84,149,104,76,134,91,66,112,78,52,107,81,57,73,55,43,64,50,55,48,41,56,37,40,56,35,43,61,36,40,61,37,40,60,34,40,58,36,41,59,31,30,47,32,31,47,33,32,49,33,38,49,28,37,50,31,35,56,29,29,49,26,24,36,27,20,28,26,15,21,27,13,17,26,11,12,29,13,7,63,35,25,98,60,41,125,86,54,135,94,58,143,98,65,154,109,79,148,102,76,136,94,71,122,90,67,102,78,56,74,59,49,54,43,49,39,31,46,30,31,46,26,33,49,29,31,51,28,30,47,27,30,45,29,33,48,28,28,45,31,31,48,31,31,47,32,35,48,31,35,48,33,34,51,28,28,43,24,22,32,25,20,27,25,17,22,27,15,18,27,14,14,27,14,10,51,29,22,78,46,32,105,70,45,123,85,54,125,84,53,132,91,63,139,97,73,123,84,61,112,82,61,107,86,70,88,76,73,55,47,56,45,37,49,32,31,46,22,27,44,24,25,42,24,23,38,23,24,38,24,25,39 diff --git a/nets/net10_cifar10_resnet_4b.pt b/nets/net10_cifar10_resnet_4b.pt new file mode 100644 index 0000000..7e3308b Binary files /dev/null and b/nets/net10_cifar10_resnet_4b.pt differ diff --git a/nets/net1_mnist_fc1.pt b/nets/net1_mnist_fc1.pt new file mode 100644 index 0000000..571db67 Binary files /dev/null and b/nets/net1_mnist_fc1.pt differ diff --git a/nets/net2_mnist_fc2.pt b/nets/net2_mnist_fc2.pt new file mode 100644 index 0000000..1681e0d Binary files /dev/null and b/nets/net2_mnist_fc2.pt differ diff --git a/nets/net3_cifar10_fc3.pt b/nets/net3_cifar10_fc3.pt new file mode 100644 index 0000000..0b13217 Binary files /dev/null and b/nets/net3_cifar10_fc3.pt differ diff --git a/nets/net4_mnist_conv1.pt b/nets/net4_mnist_conv1.pt new file mode 100644 index 0000000..a0beae0 Binary files /dev/null and b/nets/net4_mnist_conv1.pt differ diff --git a/nets/net5_mnist_conv2.pt b/nets/net5_mnist_conv2.pt new file mode 100644 index 0000000..68d757b Binary files /dev/null and b/nets/net5_mnist_conv2.pt differ diff --git a/nets/net6_cifar10_conv2.pt b/nets/net6_cifar10_conv2.pt new file mode 100644 index 0000000..cfbb3b4 Binary files /dev/null and b/nets/net6_cifar10_conv2.pt differ diff --git a/nets/net7_mnist_conv3.pt b/nets/net7_mnist_conv3.pt new file mode 100644 index 0000000..0f51a95 Binary files /dev/null and b/nets/net7_mnist_conv3.pt differ diff --git a/nets/net8_cifar10_resnet_2b.pt b/nets/net8_cifar10_resnet_2b.pt new file mode 100644 index 0000000..b3a5b00 Binary files /dev/null and b/nets/net8_cifar10_resnet_2b.pt differ diff --git a/nets/net9_cifar10_resnet_2b2_bn.pt b/nets/net9_cifar10_resnet_2b2_bn.pt new file mode 100644 index 0000000..dea99cd Binary files /dev/null and b/nets/net9_cifar10_resnet_2b2_bn.pt differ diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..51653e6 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,3 @@ +numpy==1.19.5 +torch==1.10.0 +torchvision==0.11.1