Preliminary state
This commit is contained in:
@@ -0,0 +1 @@
|
|||||||
|
/target
|
||||||
Generated
+89
@@ -0,0 +1,89 @@
|
|||||||
|
# This file is automatically @generated by Cargo.
|
||||||
|
# It is not intended for manual editing.
|
||||||
|
version = 4
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "FFVN-MiniJAX"
|
||||||
|
version = "0.0.1"
|
||||||
|
dependencies = [
|
||||||
|
"ndarray",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "autocfg"
|
||||||
|
version = "1.5.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "matrixmultiply"
|
||||||
|
version = "0.3.10"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "a06de3016e9fae57a36fd14dba131fccf49f74b40b7fbdb472f96e361ec71a08"
|
||||||
|
dependencies = [
|
||||||
|
"autocfg",
|
||||||
|
"rawpointer",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "ndarray"
|
||||||
|
version = "0.17.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "520080814a7a6b4a6e9070823bb24b4531daac8c4627e08ba5de8c5ef2f2752d"
|
||||||
|
dependencies = [
|
||||||
|
"matrixmultiply",
|
||||||
|
"num-complex",
|
||||||
|
"num-integer",
|
||||||
|
"num-traits",
|
||||||
|
"portable-atomic",
|
||||||
|
"portable-atomic-util",
|
||||||
|
"rawpointer",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "num-complex"
|
||||||
|
version = "0.4.6"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495"
|
||||||
|
dependencies = [
|
||||||
|
"num-traits",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "num-integer"
|
||||||
|
version = "0.1.46"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
|
||||||
|
dependencies = [
|
||||||
|
"num-traits",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "num-traits"
|
||||||
|
version = "0.2.19"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
|
||||||
|
dependencies = [
|
||||||
|
"autocfg",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "portable-atomic"
|
||||||
|
version = "1.13.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "portable-atomic-util"
|
||||||
|
version = "0.2.7"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "c2a106d1259c23fac8e543272398ae0e3c0b8d33c88ed73d0cc71b0f1d902618"
|
||||||
|
dependencies = [
|
||||||
|
"portable-atomic",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rawpointer"
|
||||||
|
version = "0.2.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
[package]
|
||||||
|
name = "FFVN-MiniJAX"
|
||||||
|
version = "0.0.1"
|
||||||
|
edition = "2024"
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
ndarray = "0.17.2"
|
||||||
+21
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
}:
|
||||||
|
|
||||||
|
pkgs.rustPlatform.buildRustPackage (finalAttrs: {
|
||||||
|
pname = "fvnn-minijax";
|
||||||
|
version = "0.0.1";
|
||||||
|
|
||||||
|
src = ./.;
|
||||||
|
|
||||||
|
cargoLock = {
|
||||||
|
lockFile = ./Cargo.lock;
|
||||||
|
};
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Simple implementation of neural networks and verifiers";
|
||||||
|
homepage = "https://github.com/Pantonius/fvnn-minijax";
|
||||||
|
license = pkgs.lib.licenses.unlicense;
|
||||||
|
maintainers = [ ];
|
||||||
|
};
|
||||||
|
})
|
||||||
Generated
+64
@@ -0,0 +1,64 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"flake-utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": [
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1731533236,
|
||||||
|
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1776329215,
|
||||||
|
"narHash": "sha256-a8BYi3mzoJ/AcJP8UldOx8emoPRLeWqALZWu4ZvjPXw=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "b86751bc4085f48661017fa226dee99fab6c651b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"systems": "systems"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
||||||
@@ -0,0 +1,49 @@
|
|||||||
|
{
|
||||||
|
description = "A Nix-flake-based rust development environment";
|
||||||
|
|
||||||
|
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||||
|
inputs.systems.url = "github:nix-systems/default";
|
||||||
|
inputs.flake-utils = {
|
||||||
|
url = "github:numtide/flake-utils";
|
||||||
|
inputs.systems.follows = "systems";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs =
|
||||||
|
{
|
||||||
|
self,
|
||||||
|
nixpkgs,
|
||||||
|
flake-utils,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
flake-utils.lib.eachDefaultSystem (
|
||||||
|
system:
|
||||||
|
let
|
||||||
|
pkgs = nixpkgs.legacyPackages.${system};
|
||||||
|
stdenv = pkgs.clangStdenv;
|
||||||
|
shell = {
|
||||||
|
packages = (
|
||||||
|
if system == "aarch64-darwin" then
|
||||||
|
[ ]
|
||||||
|
else
|
||||||
|
with pkgs;
|
||||||
|
[
|
||||||
|
cargo
|
||||||
|
]
|
||||||
|
);
|
||||||
|
inputsFrom = [
|
||||||
|
self.packages.${system}.ffvn-minijax
|
||||||
|
];
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
devShells = {
|
||||||
|
default = pkgs.mkShell.override { stdenv = stdenv; } shell;
|
||||||
|
};
|
||||||
|
packages = rec {
|
||||||
|
stdenv = stdenv;
|
||||||
|
ffvn-minijax = pkgs.callPackage ./default.nix { inherit pkgs; };
|
||||||
|
default = ffvn-minijax;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -0,0 +1,53 @@
|
|||||||
|
struct PaddingOptionConfig {
|
||||||
|
left: usize,
|
||||||
|
right: usize,
|
||||||
|
interior: usize,
|
||||||
|
}
|
||||||
|
|
||||||
|
struct PaddingOptions {
|
||||||
|
config: PaddingOptionConfig,
|
||||||
|
axes: Vec<isize>,
|
||||||
|
value: Box<dyn Value>,
|
||||||
|
}
|
||||||
|
|
||||||
|
struct ConvOptions {
|
||||||
|
stride: isize,
|
||||||
|
}
|
||||||
|
|
||||||
|
struct AvgPoolOptions {
|
||||||
|
window_size: Vec<usize>,
|
||||||
|
stride: Vec<usize>,
|
||||||
|
}
|
||||||
|
pub trait Value {}
|
||||||
|
|
||||||
|
pub enum Primitive {
|
||||||
|
// elementwise
|
||||||
|
Neg(Box<dyn Value>),
|
||||||
|
Reciprocal(Box<dyn Value>),
|
||||||
|
Sq(Box<dyn Value>),
|
||||||
|
Sqrt(Box<dyn Value>),
|
||||||
|
Exp(Box<dyn Value>),
|
||||||
|
Ln(Box<dyn Value>),
|
||||||
|
Add(Box<dyn Value>, Box<dyn Value>),
|
||||||
|
Mul(Box<dyn Value>, Box<dyn Value>),
|
||||||
|
Where(Vec<bool>, Box<dyn Value>, Box<dyn Value>),
|
||||||
|
// activations
|
||||||
|
ReLU(Box<dyn Value>),
|
||||||
|
LReLU(Box<dyn Value>),
|
||||||
|
ELU(Box<dyn Value>),
|
||||||
|
GELU(Box<dyn Value>),
|
||||||
|
// linear algebra
|
||||||
|
Dot(Box<dyn Value>, Box<dyn Value>),
|
||||||
|
// reduction
|
||||||
|
ReduceSum(),
|
||||||
|
// shape manipulation
|
||||||
|
ExpandDims(),
|
||||||
|
MoveAxis(),
|
||||||
|
Reshape(),
|
||||||
|
// padding
|
||||||
|
Padding(Box<dyn Value>, PaddingOptions),
|
||||||
|
// 2d convolution
|
||||||
|
Conv(Box<dyn Value>, Box<dyn Value>, ConvOptions),
|
||||||
|
// average pooling
|
||||||
|
AvgPool(Box<dyn Value>, AvgPoolOptions),
|
||||||
|
}
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
use ndarray::ArrayD;
|
||||||
|
|
||||||
|
use crate::core::{Primitive, Value};
|
||||||
|
use crate::interpreters::Interpreter;
|
||||||
|
|
||||||
|
struct ComputeGraph {
|
||||||
|
equations: Vec<Equation>,
|
||||||
|
in_vars: Vec<Var>, // input nodes
|
||||||
|
out_vars: Vec<Var>, // output nodes
|
||||||
|
}
|
||||||
|
|
||||||
|
struct AbstractValue {
|
||||||
|
var: Var,
|
||||||
|
}
|
||||||
|
impl Value for AbstractValue {}
|
||||||
|
|
||||||
|
struct Equation {
|
||||||
|
// out_var = add in_var1 in_var2
|
||||||
|
primitive: Primitive,
|
||||||
|
in_vars: Vec<Var>,
|
||||||
|
out_var: Var,
|
||||||
|
}
|
||||||
|
|
||||||
|
struct CGArray {
|
||||||
|
value: ArrayD<f64>
|
||||||
|
}
|
||||||
|
impl Value for CGArray {}
|
||||||
|
|
||||||
|
#[derive(Debug, Clone)]
|
||||||
|
struct Var {}
|
||||||
|
|
||||||
|
struct ComputeGraphInterpreter {
|
||||||
|
equations: Vec<Equation>,
|
||||||
|
}
|
||||||
|
impl Interpreter for ComputeGraphInterpreter {
|
||||||
|
fn process_primitive(&mut self, primitive: Primitive) -> Box<dyn Value> {
|
||||||
|
let out_var = Var {};
|
||||||
|
let eqn = Equation {
|
||||||
|
primitive,
|
||||||
|
in_vars: Vec::new(),
|
||||||
|
out_var,
|
||||||
|
};
|
||||||
|
|
||||||
|
self.equations.push(eqn);
|
||||||
|
|
||||||
|
return Box::new(AbstractValue { var: out_var });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl ComputeGraphInterpreter {
|
||||||
|
fn init() -> Self {
|
||||||
|
Self {
|
||||||
|
equations: Vec::new(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fn make_compute_graph(fn: ??, args: Vec<>) -> ComputeGraph {
|
||||||
|
let in_vars = Vec::new();
|
||||||
|
for _ in args {
|
||||||
|
in_vars.push(Var {});
|
||||||
|
}
|
||||||
|
|
||||||
|
let in_vals = Vec::new();
|
||||||
|
for var in in_vars {
|
||||||
|
in_vals.push(AbstractValue { var });
|
||||||
|
}
|
||||||
|
|
||||||
|
let cg_interpreter = ComputeGraphInterpreter::init();
|
||||||
|
|
||||||
|
return ComputeGraph {
|
||||||
|
equations: cg_interpreter.equations,
|
||||||
|
in_vars,
|
||||||
|
out_vars,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
use crate::{
|
||||||
|
core::{Primitive, Value},
|
||||||
|
interpreters::Interpreter,
|
||||||
|
};
|
||||||
|
|
||||||
|
struct EvalInterpreter {}
|
||||||
|
|
||||||
|
impl Interpreter for EvalInterpreter {
|
||||||
|
fn process_primitive(&mut self, primitive: Primitive) -> Box<dyn Value> {
|
||||||
|
use Primitive::*;
|
||||||
|
Box::new(match primitive {
|
||||||
|
Neg(x) => -x,
|
||||||
|
Reciprocal(x) => 1. / x,
|
||||||
|
Add(x, y) => x + y,
|
||||||
|
Mul(x, y) => x * y,
|
||||||
|
Sq(x) => x * x,
|
||||||
|
Sqrt(x) => x.sqrt(),
|
||||||
|
Ln(x) => x.ln(),
|
||||||
|
Exp(x) => x.exp(),
|
||||||
|
Dot(A, B) => A.dot(&B),
|
||||||
|
ReLU(x) => x.max(0.),
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
use crate::core::{Primitive, Value};
|
||||||
|
use crate::interpreters::Interpreter;
|
||||||
|
|
||||||
|
struct IBPInterpreter {}
|
||||||
|
|
||||||
|
impl Interpreter for IBPInterpreter {
|
||||||
|
fn process_primitive(&mut self, primitive: Primitive) -> Box<dyn Value> {
|
||||||
|
todo!()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
struct IBPBox {
|
||||||
|
lb: Box<dyn Value>,
|
||||||
|
ub: Box<dyn Value>,
|
||||||
|
}
|
||||||
|
impl Value for IBPBox {}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
use crate::core::{Primitive, Value};
|
||||||
|
|
||||||
|
pub trait Interpreter {
|
||||||
|
fn process_primitive(&mut self, primitive: Primitive) -> Box<dyn Value>;
|
||||||
|
}
|
||||||
|
|
||||||
|
mod cg;
|
||||||
|
mod eval;
|
||||||
|
mod ibp;
|
||||||
|
|
||||||
|
pub use cg::*;
|
||||||
|
pub use eval::*;
|
||||||
|
pub use ibp::*;
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
mod core;
|
||||||
|
mod interpreters;
|
||||||
|
|
||||||
|
fn main() {}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
**/actual/*
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"command": "fuzz_eval",
|
||||||
|
"n_trials": 400,
|
||||||
|
"seed": 0,
|
||||||
|
"primitives": [
|
||||||
|
"neg",
|
||||||
|
"reciprocal",
|
||||||
|
"relu",
|
||||||
|
"square",
|
||||||
|
"sqrt",
|
||||||
|
"exp",
|
||||||
|
"log",
|
||||||
|
"add",
|
||||||
|
"mul",
|
||||||
|
"dot",
|
||||||
|
"where",
|
||||||
|
"expand_dims",
|
||||||
|
"moveaxis",
|
||||||
|
"reshape",
|
||||||
|
"reduce_sum"
|
||||||
|
],
|
||||||
|
"check_nan_inf": false
|
||||||
|
}
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"command": "fuzz_eval",
|
||||||
|
"n_trials": 100,
|
||||||
|
"seed": 0,
|
||||||
|
"primitives": [
|
||||||
|
"neg",
|
||||||
|
"relu",
|
||||||
|
"square",
|
||||||
|
"add",
|
||||||
|
"mul",
|
||||||
|
"dot",
|
||||||
|
"where",
|
||||||
|
"expand_dims",
|
||||||
|
"moveaxis",
|
||||||
|
"reshape",
|
||||||
|
"reduce_sum"
|
||||||
|
],
|
||||||
|
"check_nan_inf": true
|
||||||
|
}
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"command": "fuzz_grad",
|
||||||
|
"n_trials": 400,
|
||||||
|
"seed": 0,
|
||||||
|
"primitives": [
|
||||||
|
"neg",
|
||||||
|
"reciprocal",
|
||||||
|
"relu",
|
||||||
|
"square",
|
||||||
|
"sqrt",
|
||||||
|
"exp",
|
||||||
|
"log",
|
||||||
|
"add",
|
||||||
|
"mul",
|
||||||
|
"dot",
|
||||||
|
"where",
|
||||||
|
"expand_dims",
|
||||||
|
"moveaxis",
|
||||||
|
"reshape",
|
||||||
|
"reduce_sum"
|
||||||
|
],
|
||||||
|
"check_nan_inf": false
|
||||||
|
}
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"command": "fuzz_grad",
|
||||||
|
"n_trials": 100,
|
||||||
|
"seed": 0,
|
||||||
|
"primitives": [
|
||||||
|
"neg",
|
||||||
|
"relu",
|
||||||
|
"square",
|
||||||
|
"add",
|
||||||
|
"mul",
|
||||||
|
"dot",
|
||||||
|
"where",
|
||||||
|
"expand_dims",
|
||||||
|
"moveaxis",
|
||||||
|
"reshape",
|
||||||
|
"reduce_sum"
|
||||||
|
],
|
||||||
|
"check_nan_inf": true
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"command": "train",
|
||||||
|
"dataset": "mnist_mlp",
|
||||||
|
"in_size": 784,
|
||||||
|
"num_classes": 10,
|
||||||
|
"timeout": 3600,
|
||||||
|
"source_dataset": "mnist"
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:889b31ca546349820f688f2a10d0e81554f557e62f7cf9fa534fd3f573f5840c
|
||||||
|
size 175
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e4271cf02dceda71d3271d412d0610e2b523e437be779ba24f93ce41f863d0e3
|
||||||
|
size 400
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:cdb519e8c06e9c7c5040ca545bd46afb969c6ac83216fab0ac8b0e0f045141d6
|
||||||
|
size 400
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:2d17711d7c566ef21a4dc1fa60865fc184b2dacf8cf0975a87081e2efab1c2f9
|
||||||
|
size 185
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:efe718831c28c8904df28ca06e2e36695c302cf826a86f6c6c20a024ec94a07f
|
||||||
|
size 640
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e068ccc39f44e8bf19764023f6636fe4bdf4716254f58e113e067963cc80f3cd
|
||||||
|
size 320
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:76b5c151d06d8c5489170edc7c4c3b41778a893679370abfa9c2e257817b6ee3
|
||||||
|
size 162
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:1c119bca6e9773d06de9e7132fb0638aa41eb4e1ae9dc706775e2e4be1013a1a
|
||||||
|
size 400
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:3470b2998b6c00e26bf61323824ad6741f8f97bf72082826a39f56b79f0302b2
|
||||||
|
size 194
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:03f36663d9df8ac128397cb636c613de63253cd8457146030f4061ae3da29027
|
||||||
|
size 800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e621b6023d483a1d167182ffcce67ec102006507f260ccdd20d1abb8024f391b
|
||||||
|
size 82510
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:1b0efeefd5d5890b2445931ddba9fe5a52f944ec6f77bb4344c9ecd7a626733c
|
||||||
|
size 16000
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:2383b140624943fed01811d154b3c870b0ad55e106969fbff10c477645a3be3e
|
||||||
|
size 5135
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:9b7f2224a5e4a02b05d5422ba4bcd34eab9b319bf1651ba4added2135860509c
|
||||||
|
size 32000
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:cc91ab8a8217f3b56132e5c95fde4160208b4ce6671d5d5c0d3d28ec76dbd5c7
|
||||||
|
size 1228
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:7d10261596b5fcd9d5945a3f7129172ef9bf46b68244bc03611b51dfea3e4c22
|
||||||
|
size 800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:32cb3bc14ce820f73a7cc09bc1472dfbe64030fec5fcc9e2d668935514143037
|
||||||
|
size 36784
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:26b8939ad4478bbcf7b8abc0c59c5f60021b408347c207678239ba6076d68d92
|
||||||
|
size 1600
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:f71d8e195bcd6e69631ba4a6dc519d25e21980fbc0d9b3d2cf28e0b0c9293a91
|
||||||
|
size 6600
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:19626383235794d85f1fc04833eda488bf280b19be13f00074accff36e724dc3
|
||||||
|
size 3200
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:1158f00bf18d0394f92d5d9fe4ec3fe75b4e51f1d4b0deb7cb188fb4c3772dd3
|
||||||
|
size 76499
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:ad823984b2980ef06c4acc9d70f0d447e3c522657c16c67854fc432a6f49e395
|
||||||
|
size 19200
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:a324b699f2cc6ed1e60eded830c84bb37c7a890b839dc3b0ec25513271505628
|
||||||
|
size 38136
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:2144b76cc35761b8878eec253698eec94a6266bf7454c111f1f0a6182ac4c489
|
||||||
|
size 4800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e6c26ad0a431d7bc6f9865e16d6991131a744a2aee6aa121bf7ebd8b5b4bd1d0
|
||||||
|
size 2515
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:df17b853a8f193c24bdaaef0695314ea5b81c9706a3e392636aa56ea2b1b8418
|
||||||
|
size 1600
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:360c3b254153829cbd41e84f2d8a7fae83eec783ae64f57742a6bf7be03c1701
|
||||||
|
size 16904
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:5fd8cc59f733900cc8596dd2cbf46a3755afae8b42c42d79940a42d8b48af5b4
|
||||||
|
size 12800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:255e3c9b0b8ae94ecb0e93df205acde17dbcf2570f8e9a3a87b63e9c1ac5e01e
|
||||||
|
size 800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:56bc17a18153746fbc88b64ad87745490cb21d9854379261511bcfbb0eb6f0fb
|
||||||
|
size 174
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:03f36663d9df8ac128397cb636c613de63253cd8457146030f4061ae3da29027
|
||||||
|
size 800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:60975bf29f7d0498389101fb7704f70ee66e64d12728909d14fd9956ed15933c
|
||||||
|
size 209
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e4271cf02dceda71d3271d412d0610e2b523e437be779ba24f93ce41f863d0e3
|
||||||
|
size 400
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:cdb519e8c06e9c7c5040ca545bd46afb969c6ac83216fab0ac8b0e0f045141d6
|
||||||
|
size 400
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e1e1570c31284cacb17700213c763d4f46c324219aed2fdf63aeea54d8dd46c3
|
||||||
|
size 175
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:03f36663d9df8ac128397cb636c613de63253cd8457146030f4061ae3da29027
|
||||||
|
size 800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:221a991df389e22fd804e62cc66b4affc2dd5c7d7d8022826ae476cdc72839b2
|
||||||
|
size 166
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:b18e1f9066c263958700abbf32e49538a91ad352b45a236e5246f4a7b1b22674
|
||||||
|
size 400
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:cc9f4f4be0a08d32cf5a1a582bdac2cb145b704dfd2d460279622cca0e2649e8
|
||||||
|
size 169
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:03f36663d9df8ac128397cb636c613de63253cd8457146030f4061ae3da29027
|
||||||
|
size 800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:381017a0da33b0cf69a9ae17e19af366a823ec534f78b4cf467735bf1c3570b0
|
||||||
|
size 185
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:03f36663d9df8ac128397cb636c613de63253cd8457146030f4061ae3da29027
|
||||||
|
size 800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:fbf0ce31ed14ca32d6eabe65709512ec4108e92247a76f47f907ee0584b8a46d
|
||||||
|
size 167
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:03f36663d9df8ac128397cb636c613de63253cd8457146030f4061ae3da29027
|
||||||
|
size 800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:dd2d3db3310b10e97640e9c1cf790714281d33125f47bef086d046a8c958f6ac
|
||||||
|
size 194
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:a6e1b6438dcba1d5bcfd1d995b797529a2a0b2eb39c516093c075b4db6aac1d7
|
||||||
|
size 16000
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:9a3876d81f6c7c5e7bdb9ef0d3526889fc8f2dd72b8a046cab1268e66d97ac43
|
||||||
|
size 82873
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:b8d8fdd6600172115a366876785b730fdd85a11b7d00bc88c24dc36910ebbbb8
|
||||||
|
size 32000
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:cf74e6d4a117633bb05f9813f43ae8491ab85fecc0711ea38786a6c0336311d0
|
||||||
|
size 5471
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:5cb54508aa23147f23641c7ac6a84c2a51964f7c94d0c40e27e7771437851ad5
|
||||||
|
size 1600
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:5831b39d66df8a10e180b2f08187cf5aa336d4d8f69f960ae17fb9ee04e99fee
|
||||||
|
size 36822
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:9846c3c775c93e37bb53974c61c39617b7b930d507fd6a195d7b5576ed924847
|
||||||
|
size 3200
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:d4d461df9587a71f056a38906f4eac8bd86d5db20ad9364c6da9989c4901d921
|
||||||
|
size 6676
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:4018ae6dac75f59d8a86decd7ee167056245a510c9b41c6376000e7e54906e49
|
||||||
|
size 19200
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:c147448bba1e01499fe5c163fc526677f06df150b465f844f6378d4dacfe5ab2
|
||||||
|
size 76575
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:89a5335c8f9181ef4a1186e9345a5d0e8cc506da894392d76c70c8ed7d398f10
|
||||||
|
size 4800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:d8fb16bf2727f6250a3dd4aa7e6065a13ed34a6becceefc27a717dfd920ef47e
|
||||||
|
size 38288
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:f837634c4048410638aa34c7dc2885b585c94a7e202119f531a83631a281d199
|
||||||
|
size 1600
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:6c4b45d67132baaef48a3059f8ec15f2e6ec78a8dc0a8dfa3f4d23c24986b088
|
||||||
|
size 2655
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:7d39655a46b1508207baf406d79fff88912356cdb9abc0d4a9eb2c1f8a5ca564
|
||||||
|
size 12800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:ae188f35b4d4876173195ce962defea91ee99dbba386ecaab52679a0047b3df9
|
||||||
|
size 17140
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:560c0ea666563845d2832cb82695d57ae3bc74c8a2b12f2712710dfc3c4437fe
|
||||||
|
size 32000
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:1f51e5015dd70d4612db5672e4c179e6cc2e76ed35b677136ed12ef7c8b7f99f
|
||||||
|
size 21172
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:657a749d7c1b86d4935a01bcdb4843d3dbcf6d4adb43c847ac29e29aa2f70612
|
||||||
|
size 3200
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:34a8b6227860086e6a971dc6892e649170d6416f63979df79f5b4324e59bcd38
|
||||||
|
size 1704
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:b40bbc98950c4cb621fab4721fed4ffd205eec226375f83fa143f90049c63773
|
||||||
|
size 9600
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:1562a2f705552196f18ea1ee1630e9d2be88606b6174525f9c6de2f4afdd89e2
|
||||||
|
size 4016
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e06bd2faa9249ffb93ddbaf5e0bbab98f4fe4ad31d61b4a70f152726f5923998
|
||||||
|
size 800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:fce09581fad4fe734448648c1b67450ad6e68bf9aca309ad1ee994b36bbc49f1
|
||||||
|
size 811
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:58b8b99b1ed5fcad4ced5e8ebdf7514063c5c05189b925e9d7281da4314c3040
|
||||||
|
size 19200
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:bc53890e104016aa7772a1c6c906a6a98b30fd06072544e17635bad7f7e64a15
|
||||||
|
size 9915
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e88bcad99908743ab82544036b85cafb21b1ab367dccd05f73e6b3a8d2fc5ad9
|
||||||
|
size 1600
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:0022e706e26bc0587ed6bd61ea3924b2d444ad945c75b1e6ed538730dd8d891a
|
||||||
|
size 1055
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:08350645ef33428a962618ef18d12ddfe3ec72bc61a8190be4da43a6d219f9d3
|
||||||
|
size 800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:34b1dba87144db1d758572fbc8cf27914a5e78206f498ce74e64941ec0f14989
|
||||||
|
size 175
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:03f36663d9df8ac128397cb636c613de63253cd8457146030f4061ae3da29027
|
||||||
|
size 800
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:d5e00dc270c84fed8b9c0c37b6ea2add17429caa73e3f9663c66f561be858175
|
||||||
|
size 177
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:47ea547720d9167e3bce0895d31be8c3e5de75463ac90219a1d4854a7c6c4621
|
||||||
|
size 400
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e4271cf02dceda71d3271d412d0610e2b523e437be779ba24f93ce41f863d0e3
|
||||||
|
size 400
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user