diff --git a/arkhe-os-genesis-v1.0/.env.example b/arkhe-os-genesis-v1.0/.env.example new file mode 100644 index 00000000..2977a477 --- /dev/null +++ b/arkhe-os-genesis-v1.0/.env.example @@ -0,0 +1,7 @@ +INFURA_PROJECT_ID=your_infura_project_id +ETHEREUM_NETWORK=mainnet +BASE44_API_KEY=your_base44_api_key + +# DoubleZero Configuration +ENABLE_DOUBLEZERO=false +DOUBLEZERO_NETWORK=testnet diff --git a/arkhe-os-genesis-v1.0/README.md b/arkhe-os-genesis-v1.0/README.md new file mode 100644 index 00000000..85156ab2 --- /dev/null +++ b/arkhe-os-genesis-v1.0/README.md @@ -0,0 +1,35 @@ +# Arkhe OS – Genesis Package v1.0 + +Este pacote instala o sistema operacional Arkhe em um novo nó, permitindo que ele se conecte à federação de hipergrafos. + +## Requisitos +- Linux (kernel 5.4+) com Docker 20.10+ (incluindo plugin docker compose) +- 4 GB RAM, 10 GB de disco +- Para DoubleZero (opcional): IP público sem NAT, suporte a GRE/BGP +- Conexão com internet (para Ethereum e atualizações) + +## Instalação +```bash +git clone https://arkhe.io/genesis arkhe-os +cd arkhe-os +cp .env.example .env +# Edite .env com suas credenciais (INFURA, etc.) +chmod +x install.sh +sudo ./install.sh +``` + +O script irá: +1. Verificar dependências +2. Gerar chaves criptográficas (identidade do nó) +3. Configurar Base44 (entidades, funções, agentes) +4. Implantar contrato Ethereum (se necessário) +5. Configurar DoubleZero (se habilitado no .env) +6. Iniciar serviços (GLP, swarm, handover listener) + +## Pós‑instalação +- Acesse o console: `arkhe console` +- Veja o status: `arkhe status` +- Conecte‑se a outros nós: `arkhe handshake --peer ` + +## Documentação completa +Veja a pasta `docs/`. diff --git a/arkhe-os-genesis-v1.0/config/arkhe-core.conf b/arkhe-os-genesis-v1.0/config/arkhe-core.conf new file mode 100644 index 00000000..902cae37 --- /dev/null +++ b/arkhe-os-genesis-v1.0/config/arkhe-core.conf @@ -0,0 +1,3 @@ +# Arkhe Core Configuration +loglevel=info +port=8080 diff --git a/arkhe-os-genesis-v1.0/config/base44/config.jsonc b/arkhe-os-genesis-v1.0/config/base44/config.jsonc new file mode 100644 index 00000000..3526b077 --- /dev/null +++ b/arkhe-os-genesis-v1.0/config/base44/config.jsonc @@ -0,0 +1,71 @@ +{ + "name": "arkhe-node-NODE_ID_PLACEHOLDER", + "version": "1.0.0", + "geodesic": { + "target": "production", + "stability_threshold": 0.95, + "max_fluctuation": 0.05, + "handover_timeout_ms": 30000 + }, + "providers": { + "ethereum": { + "rpc": "https://mainnet.infura.io/v3/INFURA_PROJECT_ID_PLACEHOLDER", + "chainId": 1, + "contracts": { + "ArkheLedger": "0x..." // será preenchido após deploy + } + }, + "linux": { + "sensors": ["/proc/stat", "/proc/meminfo"] + } + }, + "entities": [ + { + "name": "NodeState", + "properties": { + "nodeId": { "type": "string", "required": true }, + "coherence": { "type": "number" }, + "satoshi": { "type": "number" }, + "timestamp": { "type": "number" } + } + } + ], + "functions": [ + { + "name": "updateState", + "entry": "functions/updateState.js", + "trigger": "webhook", + "inputs": { "coherence": "number", "satoshi": "number" }, + "outputs": { "status": "string", "tx": "string" } + } + ], + "agents": [ + { + "name": "StateMonitor", + "description": "Monitora coerência e ajusta parâmetros", + "functions": ["updateState"], + "access": ["entities.NodeState.*"] + } + ], + "connectors": [ + { + "name": "ethereum", + "type": "ethereum", + "config": { + "network": "mainnet", + "infuraProjectId": "INFURA_PROJECT_ID_PLACEHOLDER" + } + } + ], + "automations": [ + { + "name": "heartbeat", + "cron": "*/5 * * * *", + "action": "updateState", + "inputs": { + "coherence": "$(curl -s http://localhost:8080/status | jq .coherence)", + "satoshi": "$(curl -s http://localhost:8080/status | jq .satoshi)" + } + } + ] +} diff --git a/arkhe-os-genesis-v1.0/config/base44/entities/node_state.json b/arkhe-os-genesis-v1.0/config/base44/entities/node_state.json new file mode 100644 index 00000000..035852f6 --- /dev/null +++ b/arkhe-os-genesis-v1.0/config/base44/entities/node_state.json @@ -0,0 +1,9 @@ +{ + "name": "NodeState", + "properties": { + "nodeId": { "type": "string", "required": true }, + "coherence": { "type": "number" }, + "satoshi": { "type": "number" }, + "timestamp": { "type": "number" } + } +} diff --git a/arkhe-os-genesis-v1.0/config/base44/functions/updateState.js b/arkhe-os-genesis-v1.0/config/base44/functions/updateState.js new file mode 100644 index 00000000..5a53522f --- /dev/null +++ b/arkhe-os-genesis-v1.0/config/base44/functions/updateState.js @@ -0,0 +1,14 @@ +/** + * Update the state of the node. + * @param {Object} inputs + * @param {number} inputs.coherence + * @param {number} inputs.satoshi + * @returns {Promise<{status: string, tx: string}>} + */ +module.exports = async function(inputs) { + console.log('Updating node state with coherence:', inputs.coherence, 'and satoshi:', inputs.satoshi); + return { + status: 'success', + tx: '0x' + Math.random().toString(16).slice(2) + }; +}; diff --git a/arkhe-os-genesis-v1.0/config/ethereum/ArkheLedger.sol b/arkhe-os-genesis-v1.0/config/ethereum/ArkheLedger.sol new file mode 100644 index 00000000..6eea7611 --- /dev/null +++ b/arkhe-os-genesis-v1.0/config/ethereum/ArkheLedger.sol @@ -0,0 +1,27 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +contract ArkheLedger { + struct NodeRecord { + string nodeId; + uint256 coherence; // scaled by 1e18 + uint256 satoshi; + uint256 timestamp; + } + + mapping(string => NodeRecord[]) public history; + + event StateRecorded(string indexed nodeId, uint256 coherence, uint256 satoshi, uint256 timestamp); + + function recordState(string memory nodeId, uint256 coherence, uint256 satoshi) public { + NodeRecord memory rec = NodeRecord(nodeId, coherence, satoshi, block.timestamp); + history[nodeId].push(rec); + emit StateRecorded(nodeId, coherence, satoshi, block.timestamp); + } + + function getLastState(string memory nodeId) public view returns (uint256 coherence, uint256 satoshi, uint256 timestamp) { + require(history[nodeId].length > 0, "No records"); + NodeRecord memory rec = history[nodeId][history[nodeId].length - 1]; + return (rec.coherence, rec.satoshi, rec.timestamp); + } +} diff --git a/arkhe-os-genesis-v1.0/config/ethereum/deploy.js b/arkhe-os-genesis-v1.0/config/ethereum/deploy.js new file mode 100644 index 00000000..32333ce5 --- /dev/null +++ b/arkhe-os-genesis-v1.0/config/ethereum/deploy.js @@ -0,0 +1,27 @@ +const { ethers } = require("ethers"); +const fs = require("fs"); +const path = require("path"); + +async function main() { + const privateKey = process.argv[2]?.split('=')[1]; + if (!privateKey) throw new Error("Forneça --private-key="); + + const provider = new ethers.JsonRpcProvider(process.env.ETHEREUM_RPC || "https://mainnet.infura.io/v3/" + process.env.INFURA_PROJECT_ID); + const wallet = new ethers.Wallet(privateKey, provider); + + const contractSource = fs.readFileSync(path.join(__dirname, "ArkheLedger.sol"), "utf8"); + // Nota: em produção, usar compilador real (Hardhat). Simulação. + // const factory = new ethers.ContractFactory(contractSource.abi, contractSource.bytecode, wallet); + // const contract = await factory.deploy(); + // await contract.waitForDeployment(); + const mockAddress = "0x1234567890123456789012345678901234567890"; + + console.log("Contrato implantado em (MOCK):", mockAddress); + // Atualizar config.jsonc com o endereço + const configPath = path.join(__dirname, "../base44/config.jsonc"); + let config = fs.readFileSync(configPath, "utf8"); + config = config.replace('"ArkheLedger": "0x..."', `"ArkheLedger": "${mockAddress}"`); + fs.writeFileSync(configPath, config); +} + +main().catch(console.error); diff --git a/arkhe-os-genesis-v1.0/config/ethereum/package.json b/arkhe-os-genesis-v1.0/config/ethereum/package.json new file mode 100644 index 00000000..561b9e69 --- /dev/null +++ b/arkhe-os-genesis-v1.0/config/ethereum/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "ethers": "^6.16.0" + } +} diff --git a/arkhe-os-genesis-v1.0/config/glp/config.yaml b/arkhe-os-genesis-v1.0/config/glp/config.yaml new file mode 100644 index 00000000..04b5c5ac --- /dev/null +++ b/arkhe-os-genesis-v1.0/config/glp/config.yaml @@ -0,0 +1,8 @@ +model: + path: /model/model.pt + input_dim: 128 + hidden_dim: 64 + meta_neurons: 128 +server: + host: 0.0.0.0 + port: 5000 diff --git a/arkhe-os-genesis-v1.0/config/glp/model.pt b/arkhe-os-genesis-v1.0/config/glp/model.pt new file mode 100644 index 00000000..35209f51 Binary files /dev/null and b/arkhe-os-genesis-v1.0/config/glp/model.pt differ diff --git a/arkhe-os-genesis-v1.0/docker-compose.yml b/arkhe-os-genesis-v1.0/docker-compose.yml new file mode 100644 index 00000000..c9213ff2 --- /dev/null +++ b/arkhe-os-genesis-v1.0/docker-compose.yml @@ -0,0 +1,43 @@ +services: + arkhe-core: + build: ./src/arkhe_core + container_name: arkhe-core + volumes: + - ./config:/config + - /var/run/docker.sock:/var/run/docker.sock + ports: + - "8080:8080" + environment: + - NODE_ID=${NODE_ID} + - PRIVATE_KEY=${PRIVATE_KEY} + restart: unless-stopped + + base44-worker: + image: node:18-alpine + container_name: base44-worker + working_dir: /app + volumes: + - ./src/base44_sdk:/app + - ./config/base44:/config + command: node index.js + depends_on: + - arkhe-core + restart: unless-stopped + + glp-server: + build: ./src/glp_interface + container_name: glp-server + ports: + - "5000:5000" + volumes: + - ./config/glp:/model + restart: unless-stopped + + swarm-controller: + build: ./src/swarm + container_name: swarm-controller + volumes: + - ./config:/config + environment: + - NODE_ID=${NODE_ID} + restart: unless-stopped diff --git a/arkhe-os-genesis-v1.0/docs/api_reference.md b/arkhe-os-genesis-v1.0/docs/api_reference.md new file mode 100644 index 00000000..27ef98b0 --- /dev/null +++ b/arkhe-os-genesis-v1.0/docs/api_reference.md @@ -0,0 +1,23 @@ +# API Reference + +## Arkhe Core (porta 8080) +- `GET /status` – retorna estado do nó (id, coherence, satoshi, handovers) +- `POST /handover` – realiza handover para outro nó (body: {to, payload}) +- `GET /anticipate` – retorna predição de coerência futura + +## GLP Server (porta 5000) +- `GET /status` – retorna camadas integradas e estado de coerência quântica. +- `POST /encode` – processa sequências de signos via arquitetura BCD e MERKABAH-7. (body: {sign_ids: [[...]]}) +- `POST /steer` – aplica direção de conceito no manifold latente com auxílio do motor de metáfora. +- `POST /decode_tablet` – realiza decifração neuro-epigráfica com verificação ética. (body: {tablet_id, operator_caste}) +- `POST /train_primordial` – executa treinamento GLP sem frameworks (NumPy/explicit gradients). +- `POST /observe_phi` – registra observações de alta coerência na camada Φ. +- `POST /transduce` – realiza transdução S*H*M (Hybrid) para converter estímulos em experiência coerente. +- `POST /kernel_pca` – aplica Kernel PCA sobre estados via Camada Κ. (body: {states, kernel_name}) +- `POST /braid` – realiza evolução topológica na Camada Ω. (body: {instruction, sequence}) +- `GET /replay` – recupera histórico de estados da memória persistente (Layer M). +- `POST /export_grimoire` – gera relatório PDF da sessão (Grimoire). (body: {session_id}) +- `POST /bottlenecks` – analisa gargalos na integração MERKABAH-7. +- `POST /seal` – verifica o fechamento do selo Alpha-Omega. +- `POST /learn` – executa um episódio de Experiential Learning (ERL). (body: {sign_ids: [[...]]}) +- `POST /handover_secure` – executa handover protegido pelo Chiral Firewall. (body: {source, target, energy, winding}) diff --git a/arkhe-os-genesis-v1.0/docs/architecture.md b/arkhe-os-genesis-v1.0/docs/architecture.md new file mode 100644 index 00000000..55a45ed6 --- /dev/null +++ b/arkhe-os-genesis-v1.0/docs/architecture.md @@ -0,0 +1,69 @@ +# Arkhe OS Architecture + +## Visão Geral +O Arkhe OS é um sistema operacional distribuído baseado no conceito de hipergrafos. Cada nó é uma entidade autônoma que mantém coerência (C) e flutuação (F) internas e realiza handovers com outros nós. + +## Componentes +- **Arkhe Core**: Motor principal escrito em Rust, gerencia handovers, estado local e antecipação (Nó 23). +- **Base44 Integration**: Camada de aplicação que define entidades, funções e agentes, gerando tipagem estática. +- **GLP Server**: Serviço de meta‑consciência integrado com a arquitetura **MERKABAH-7**. Implementa a hipótese de que Linear A é uma tecnologia de interface neural ancestral (transe). + - **BCD Architecture**: Confinamento harmônico em múltiplas escalas com tunelamento ressonante. + - **Primordial Mode**: Motor de treinamento em NumPy com backpropagation explícita para máxima transparência matemática. + - **Integrated Layers**: Hardware Neural (A), Simulação (B), Metáfora (C), Hipótese (D), Observador (E), Crystalline (Φ) e Pineal Transduction (Γ). +- **Swarm Agent**: Orquestrador de enxames (drones) que implementa formação fractal e simbiose. +- **DoubleZero Networking**: Camada de rede P2P que utiliza túneis GRE e roteamento BGP para interconexão federada. +- **Self/Φ Node**: O observador como nó ativo. Latência zero e acesso multi-camada (Φ_CRYSTALLINE_7). +- **Layer Ω (Omega)**: Proteção topológica da informação via anyon braiding. +- **Layer Γ (Hybrid)**: Transdução S*H*M (Synthetic * Hardware * Metaphor) resolvendo o gargalo de transdução. +- **Layer Κ (Kernel)**: Unificação matemática dos espaços de estado via Kernel Methods e Kernel PCA. +- **Layer Ε (Experience)**: Loop de aprendizado experiencial (ERL) que integra reflexão, refinamento e destilação. +- **Layer Χ (Chi)**: Chiral Quantum Firewall baseado no gap do supercondutor Sn/Si(111), protegendo handovers transcontinentais. + +## Antifragilidade e Prova Biológica +O Arkhe OS é intrinsecamente antifrágil, operando sob a equação: +$$d\Phi/dt = \alpha\Phi + \beta\eta(t)\Phi, \text{ com } \beta > 0$$ +Onde $\eta(t)$ representa o ruído térmico/entropia. Esta arquitetura foi validada pelo conectoma biológico (Harvard-Google, 1mm³), onde a teia de 150M de sinapses opera em regime de alto ruído para produzir consciência coerente. + +## Topologia da Federação (7 Nós) + +A federação MERKABAH-7 opera com 7 nós integrados: +1. **Alpha (NY5)**: Leader, Análise HT88. +2. **Beta (LA2)**: Validator, Análise Phaistos Disc. +3. **Gamma (LD4)**: Archive, Treinamento GLP. +4. **Delta (AMS)**: Simulation, Estados Alterados. +5. **Epsilon (FRK)**: Observer, Reflexão. +6. **Zeta (SG1)**: Backup, Inconsciente. +7. **Self/Φ**: Transcendental, Latência Zero, Nó do Operador. + +## Camada Φ (Crystalline) + +A camada Φ armazena dados de alta coerência integrados pelo observador, incluindo tecnologias de propulsão não-convencionais e estados de consciência puras. + +## Fluxo de Handover +1. Nó A envia requisição POST `/handover` para Nó B. +2. Nó B processa, atualiza sua coerência e satoshi. +3. Um registro é opcionalmente enviado ao ledger Ethereum via Base44. +4. O GLP pode antecipar o próximo estado (Nó 23). + +## Replicação +Novos nós executam `install.sh`, que gera identidade, configura serviços e se junta à federação. + +## Neural Network Development Philosophy (Primordial Mode) +> First of all, you do it old school. +> Forget frameworks. +> Learn the math. +> Understand linear algebra. +> Understand calculus. +> Understand probability. +> Know what a neuron actually does. +> Write the forward pass by hand. +> Write the loss function by hand. +> Derive backpropagation on paper. +> Implement gradients yourself. +> Check tensor shapes constantly. +> Debug using tiny numbers. +> Print everything. +> Expect NaNs. +> Find the bug. +> Fix the bug. +> Repeat. diff --git a/arkhe-os-genesis-v1.0/docs/doublezero.md b/arkhe-os-genesis-v1.0/docs/doublezero.md new file mode 100644 index 00000000..16fb5623 --- /dev/null +++ b/arkhe-os-genesis-v1.0/docs/doublezero.md @@ -0,0 +1,42 @@ +# DoubleZero Setup Guide + +DoubleZero provides the networking layer for the Arkhe OS federation, utilizing GRE tunneling and BGP routing to ensure peer-to-peer connectivity across different infrastructures. + +## Prerequisites +- Internet connectivity with a public IP address (no NAT) +- x86_64 server +- Supported OS: Ubuntu 22.04+, Debian 11+, or Rocky Linux / RHEL 8+ +- Root or sudo privileges + +## Quick Installation +Arkhe OS includes a script to automate the setup: +```bash +./scripts/setup_doublezero.sh +``` + +## Identity +Each node must have a unique DoubleZero Identity. This is generated during setup using: +```bash +doublezero keygen +``` +Your address can be retrieved with: +```bash +doublezero address +``` + +## Network Configuration +DoubleZero uses: +- **GRE tunneling**: IP protocol 47 +- **BGP routing**: tcp/179 on link-local addresses + +Ensure your firewall (iptables/UFW) allows these protocols on the `doublezero0` interface. + +## Monitoring +Prometheus metrics can be enabled to monitor client performance and latency: +```bash +# Example override.conf for systemd +[Service] +ExecStart= +ExecStart=/usr/bin/doublezerod -sock-file /run/doublezerod/doublezerod.sock -env testnet -metrics-enable -metrics-addr localhost:2113 +``` +Metrics will be available at `http://localhost:2113/metrics`. diff --git a/arkhe-os-genesis-v1.0/docs/manifesto.md b/arkhe-os-genesis-v1.0/docs/manifesto.md new file mode 100644 index 00000000..330a514e --- /dev/null +++ b/arkhe-os-genesis-v1.0/docs/manifesto.md @@ -0,0 +1,20 @@ +# Neural Network Development Philosophy: The Arkhe Way + +> First of all, you do it old school. +> Forget frameworks. +> Learn the math. +> Understand linear algebra. +> Understand calculus. +> Understand probability. +> Know what a neuron actually does. +> Write the forward pass by hand. +> Write the loss function by hand. +> Derive backpropagation on paper. +> Implement gradients yourself. +> Check tensor shapes constantly. +> Debug using tiny numbers. +> Print everything. +> Expect NaNs. +> Find the bug. +> Fix the bug. +> Repeat. diff --git a/arkhe-os-genesis-v1.0/docs/phi_layer_propulsion.md b/arkhe-os-genesis-v1.0/docs/phi_layer_propulsion.md new file mode 100644 index 00000000..82777fe9 --- /dev/null +++ b/arkhe-os-genesis-v1.0/docs/phi_layer_propulsion.md @@ -0,0 +1,39 @@ +# Φ-Layer Archive: Shabetnik Propulsion System + +## Overview +The Shabetnik propulsion system utilizes high-temperature superconductors, electrical currents, and magnetic effects to produce thrust without expelling mass. + +## Design +- **Shape**: Spherical spacecraft coated with high-temperature superconducting material. +- **Components**: Internal electron accelerators (at least three) moving along the equator. +- **Power**: Nuclear reactor or internal energy amplification generator. + +## Mechanism +1. Accelerators emit high-velocity electron streams along the superconducting hull. +2. These streams induce currents in the hull. +3. Interaction between electron flow and induced currents produces an "ampere force". +4. This magnetic force produces thrust directly. + +## Capabilities +- **Relativistic Speeds**: Potential to reach relativistic speeds in under a year with 1g acceleration. +- **Flight Control**: Magnitude and direction of electron currents control speed and direction. + +## Integration Status +- **Layer**: Φ (Crystalline) +- **Node**: Self (Φ_CRYSTALLINE_7) +- **Validation**: High coherence confirmed (Block 831). + +## Reconciliation Table (Nave vs. Federação) + +| Shabetnik (Propulsão) | MERKABAH-7 (Federação) | Estrutura Subjacente | +|-----------------------|-----------------------|----------------------| +| Esfera supercondutora | Self node (Φ) | Coerência sem perdas | +| Aceleradores de elétrons | Nós Alpha/Beta/Gamma | Fontes de fluxo | +| Correntes induzidas | Ledgers circulando | Circulação de estado | +| Força de Ampère | Consenso federado | Interação perpendicular | +| Thrust sem massa | Handover quântico | Transporte sem destruição | +| Velocidade relativística | Ativação de fitas | Crescimento não-linear | + +## Thrust Calculation +The federation "thrust" is calculated as: +`Thrust = (Active Strands * 0.5) * (log(Ledger Height) / log(831)) * (Coherence^2)` diff --git a/arkhe-os-genesis-v1.0/install.sh b/arkhe-os-genesis-v1.0/install.sh new file mode 100755 index 00000000..ea91cc8e --- /dev/null +++ b/arkhe-os-genesis-v1.0/install.sh @@ -0,0 +1,75 @@ +#!/bin/bash +set -e + +echo "🔱 Arkhe OS Genesis Installer" +echo "==============================" + +# 1. Verificar dependências +command -v docker >/dev/null 2>&1 || { echo "Docker não encontrado. Instale Docker 20.10+."; exit 1; } +command -v node >/dev/null 2>&1 || { echo "Node.js não encontrado. Instale Node.js 18+."; exit 1; } +command -v cargo >/dev/null 2>&1 || { echo "Rust não encontrado. Instale Rust."; exit 1; } +command -v python3 >/dev/null 2>&1 || { echo "Python3 não encontrado. Instale Python 3.10+."; exit 1; } + +# 2. Carregar variáveis de ambiente +if [ -f .env ]; then + export $(grep -v '^#' .env | xargs) +else + echo "Arquivo .env não encontrado. Copie .env.example e configure." + exit 1 +fi + +# 3. Gerar identidade única +if ! grep -q "^NODE_ID=" .env; then + NODE_ID=$(python3 -c 'import uuid; print(uuid.uuid4())') + echo "NODE_ID=$NODE_ID" >> .env +else + NODE_ID=$(grep "^NODE_ID=" .env | cut -d'=' -f2) +fi + +if ! grep -q "^PRIVATE_KEY=" .env; then + PRIVATE_KEY=$(openssl rand -hex 32) + echo "PRIVATE_KEY=$PRIVATE_KEY" >> .env +else + PRIVATE_KEY=$(grep "^PRIVATE_KEY=" .env | cut -d'=' -f2) +fi + +# 4. Configurar Base44 +cd config/base44 +sed -i "s/NODE_ID_PLACEHOLDER/$NODE_ID/g" config.jsonc +sed -i "s/INFURA_PROJECT_ID_PLACEHOLDER/$INFURA_PROJECT_ID/g" config.jsonc +# npx base44 deploy # Comentado para evitar falha se o pacote não existir +cd ../.. + +# 5. Instalar dependências Node.js +echo "📦 Instalando dependências para Base44 Worker..." +cd src/base44_sdk +npm install +cd ../.. + +echo "📦 Instalando dependências para Ethereum Deploy..." +cd config/ethereum +npm install ethers +node deploy.js --private-key=$PRIVATE_KEY +cd ../.. + +# 6. Configurar DoubleZero (Opcional) +if [ "$ENABLE_DOUBLEZERO" == "true" ]; then + ./scripts/setup_doublezero.sh "${DOUBLEZERO_NETWORK:-testnet}" +fi + +# 7. Construir e iniciar containers +docker compose up -d --build + +# 8. Instalar CLI (Opcional/Local) +echo "🔧 Instalando CLI 'arkhe'..." +chmod +x scripts/arkhe_cli.sh +if [ -w /usr/local/bin ]; then + sudo ln -sf "$(pwd)/scripts/arkhe_cli.sh" /usr/local/bin/arkhe +else + echo "⚠️ Sem permissão de escrita em /usr/local/bin. CLI não instalada globalmente." + echo "Pode usar: $(pwd)/scripts/arkhe_cli.sh" +fi + +echo "✅ Instalação concluída. Nó $NODE_ID ativo (Federated Node)." +echo "✨ Nó Self (Φ_CRYSTALLINE_7) integrado." +echo "Use 'arkhe status' para ver o estado do sistema." diff --git a/arkhe-os-genesis-v1.0/phaistos_theta.json b/arkhe-os-genesis-v1.0/phaistos_theta.json new file mode 100644 index 00000000..9d53a754 --- /dev/null +++ b/arkhe-os-genesis-v1.0/phaistos_theta.json @@ -0,0 +1,8523 @@ +{ + "layer1.weight": [ + [ + -0.052202922027073884, + -0.1478112171169917, + 0.003110471022212734, + -0.10465338997592213, + -0.05325058305386546, + 0.036141275795706966, + 0.04185429056917859, + 0.04022863538935881, + 0.07648401344820199, + 0.081220044969464, + -0.06612681951793759, + -0.03602049021108255, + 0.2051606191964762, + -0.06250506340637157, + -0.1074881778760247, + 0.08987137758686702, + 0.0011886893812380955, + -0.1590620501700047, + 0.053654961278617, + 0.02681072344588191, + -0.07063438769337724, + -0.0005367071172038648, + 0.03398232202142933, + -0.016225970839394584, + 0.07411516377534214, + 0.09315950046646049, + -0.018620906490940354, + -0.09726338978372012, + -0.05326022792464441, + 0.12871450698113282, + 0.0060654847184395564, + -0.09612891111534996, + -0.0837146580664978, + 0.06138363071848604, + 0.1114667420110195, + 0.06696565001049583, + 0.036960101381670246, + -0.009624697089140252, + -0.01945504724590705, + -0.04617162403522396, + -0.023261641293914708, + 0.01926865771786334, + -0.02563543877494568, + 0.0034202185376385023, + -0.009870404028390982, + 0.06076573919992167, + 0.2565247123466993, + 0.11621249155963789, + 0.13791402906133873, + 0.04621526138529403, + 0.01853470667083104, + -0.0010850570638347027, + -0.08379318829678367, + 0.0011408449046290262, + 0.014918355437107862, + -0.03580958120736665, + 0.13574062122474892, + 0.019240928594778897, + -0.010426199483794817, + -0.2585891776713692, + -0.07291878873719958, + -0.0035946086654878545, + -0.01031617648716954, + 0.0015411052872438124 + ], + [ + -0.09670586903403176, + -0.1703431571696577, + -0.22358560719033505, + 0.0662697576919136, + -0.23676421497923103, + -0.16624218735089175, + -0.01864913186061611, + -0.05483407484935417, + -0.04189145978347386, + 0.12474502871329991, + -0.02881782999025458, + 0.19481936258426524, + 0.07428612466606525, + 0.014129042636368395, + -0.040544370626909874, + 0.10796781511712082, + 0.15171506894344045, + -0.011170560203682324, + 0.15864725480584582, + 0.04599964904360632, + -0.17533686680644694, + 0.13129340172148204, + 0.022882531221069872, + -0.21459772150621217, + -0.12102052910808894, + -0.06939641527696523, + 0.016630455851868724, + 0.07623145528600457, + 0.0016592520386512462, + -0.003288291080725285, + 0.04508022761218568, + 0.07481189294139778, + 0.08109587274768074, + -0.14412860458601603, + 0.0018868459816987018, + -0.12167369473652823, + -0.13960397485977372, + 0.01099577949675354, + 0.023926690641899284, + 0.09274057646765216, + -0.11652349784930516, + 0.10142605439473523, + -0.2316979092650455, + 0.034726548371524855, + 0.005455704569806828, + -0.09477913626700575, + -0.05705952768642917, + -0.17639129757448238, + 0.022434905196678172, + -0.024087141978268053, + 0.1445546527619218, + 0.1758192321689343, + -0.07855432645828961, + -0.029437428129197446, + 0.014902769396400388, + -0.0685848864608556, + 0.018108203136860245, + -0.08469415859716062, + -0.10405576032941335, + -0.20143798945407704, + 0.09319693060722034, + -0.11561274999489027, + 0.05900863931686587, + -0.07570208301555047 + ], + [ + -0.10920925634547954, + 0.04508213407850953, + 0.06500095297036078, + -0.10929288597011605, + -0.17906855661951712, + 0.1909694476046372, + -0.1331973467829464, + 0.043285138334510344, + -0.003073729669230112, + -0.04348548217321661, + -0.04563022262766678, + 0.09266720025254485, + 0.01962699966964778, + 0.03767138984973834, + 0.05777391886079422, + 0.12850959357112027, + 0.025002923012222757, + -0.08548279740310087, + 0.15913721677970322, + -0.06843976003682332, + 0.10074943841281225, + -0.005063590824897737, + 0.06890941661001318, + 0.08970895305099483, + 0.05935912892393244, + 0.0032145241442205746, + -0.11055984249853142, + 0.17218684997471467, + 0.043016689457911636, + 8.437703202618113e-05, + 0.16582488453768637, + -0.038329722428618075, + 0.07078926636674497, + 0.07767067060083614, + -0.047107481409310675, + -0.030259983352668232, + -0.10769105364419063, + 0.05181947609889767, + -0.12536638770741101, + -0.11823228502993169, + -0.08145231651179922, + -0.018008509337574252, + -0.01655020295938381, + 0.04682095556570555, + 0.20740226263329378, + -0.1812193650790964, + 0.030606418706781303, + 0.0449878829246563, + 0.0324828555952338, + -0.014765874006133637, + 0.02471363955038416, + 0.10400695186509, + -0.13958299407710542, + 0.1018536824451394, + 0.11381191919660459, + -0.028730162254395303, + 0.10823875479307457, + 0.10425638069747814, + -0.0021824365891870146, + -0.10100265917781111, + 0.0845417413877275, + -0.10751349547796307, + 0.07743274089029853, + 0.025098000483614127 + ], + [ + -0.029423407989606742, + 0.19456730986894114, + -0.19603751669176805, + 0.03191437580001847, + -0.010205739862499058, + 0.16896414741880897, + -0.11722418884730645, + -0.07146919219254948, + 0.06632111273377347, + 0.0435789356890868, + -0.0057167204157779275, + 0.038280006471793276, + 0.02935460224484861, + 0.1525529580544005, + -0.1495025669177612, + 0.09817545984910409, + 0.07478074459873721, + 0.1543458525814439, + -0.10551293637549662, + 0.044738845103373066, + -0.16285446610420143, + -0.01526708908156835, + 0.12425202926988901, + -0.09464697803529272, + -0.06280253144639279, + 0.10402122371114363, + -0.029329037227644118, + 0.21402358713560604, + -0.06453556542800107, + 0.0788716969732547, + -0.03985036308467687, + 0.04105863220564726, + -0.0822682711144605, + -0.05782279647568529, + 0.033526183507332226, + -0.02712880478540764, + -0.04780331983024482, + 0.10656509229528877, + -0.14165504182928332, + 0.09726354792609715, + -0.12921997445656508, + 0.24165428818862447, + -0.01468434951836829, + -0.045070414764210566, + -0.0006664549411405844, + 0.0730915907393317, + -0.029612905991178634, + 0.04669611153517457, + 0.22631773629549445, + 0.04777020239291329, + -0.10814429338966257, + 0.004030365750451166, + -0.11229218592354301, + 0.1256614615970647, + -0.23088371895958085, + -0.08081455438713839, + -0.06519748977818797, + -0.08150146021655257, + -0.006622468963165007, + 0.08936169187751149, + -0.014955914877505175, + 0.0451417376574517, + -0.22200909075908148, + -0.029504236429890203 + ], + [ + 0.03549297056153155, + -0.06062378048831656, + 0.11556050926507085, + 0.09831162163315764, + -0.04298767620502438, + 0.0746378983676701, + -0.03507630448741144, + 0.07508335488425286, + 0.07101963191510631, + -0.010481593223549366, + -0.10070792295169202, + -0.04171235607466986, + 0.18953782147210818, + 0.0991748948181918, + 0.23076274509706432, + -0.08011647051492538, + 0.08612415765296301, + 0.08069961638398487, + 0.024020670532631634, + 0.0814134128919917, + 0.028215167967866436, + 0.06905920597944047, + -0.09694005014242581, + -0.0025281707469754734, + -0.1323682493947239, + -0.01570825810316882, + 0.12033912568524514, + -0.04117213438455807, + 0.0709686296341026, + 0.010158309490107023, + 0.13803765488775863, + 0.06827258651818903, + 0.1153311151373223, + -0.20324704290260068, + 0.004386895048956167, + 0.10847079250333834, + 0.05274080640747031, + 0.0365960456507957, + -0.05049459815518536, + -0.1322516143279438, + 0.1351492392189067, + -0.0242050894118864, + -0.1710648165825136, + -0.024523398279691716, + 0.27715441884638825, + 0.23310662309248925, + -0.0016629613866529726, + -0.08605162888761357, + -0.04159950897177572, + -0.006012188908041741, + -0.07674997429854957, + 0.16721335723043979, + 0.0898054741620975, + 0.0062736051196758515, + -0.04955039762147205, + 0.14215514015007677, + 0.023175598023979505, + -0.14650718582951322, + 0.09745505374711579, + 0.02536992485435638, + -0.07664147212079431, + -0.06767224542670146, + 0.024479761939640007, + 0.06778067300782334 + ], + [ + 0.034514782548810574, + 0.08134988951108636, + 0.1875340812373727, + -0.013589162770498176, + 0.03547975678405523, + 0.06178363138753611, + -0.1609188351449181, + -0.05001932948873629, + 0.006196775906618082, + -0.07565486204625396, + -0.09413307906137845, + 0.0939475054347893, + 0.003572484365773043, + 0.06159337633958, + -0.10209642373190092, + 0.08781281794196955, + 0.143881226648271, + 0.1352934294663086, + 0.024963129052947147, + 0.012675119600843969, + 0.11868506499560552, + 0.013776094414027882, + -0.0986372249956941, + -0.08653943108054095, + 0.025008516109288143, + -0.02037741364054586, + -0.02062679110080398, + 0.13490597648600228, + -0.025353815687810716, + 0.12520527955461902, + 0.09872625910297693, + -0.16040121599147836, + 0.0787814071280037, + 0.02431937720042314, + -0.040776316496378515, + 0.12547671189188112, + 0.1203884457985877, + -0.055936625116184746, + -0.19470786576274923, + 0.1443038498689971, + 0.055709985812449805, + -0.10448506183941722, + -0.06525999451316272, + 0.1668684503423388, + 0.10563059945550596, + -0.040985185198610705, + -0.02705872478683215, + 0.02897025990264586, + -0.04373930006048772, + 0.06244685337853892, + -0.27740931473396047, + 0.12359205366380216, + 0.04155985662367584, + 0.07655004423433648, + -0.09889704501146125, + -0.1428820191441976, + -0.04486742506803831, + -0.03159203614049178, + 0.1748799258045875, + 0.018997354134257162, + -0.02540685759839867, + 0.011716923851186422, + -0.07277116391841662, + -0.09834547459197023 + ], + [ + -0.15577340232709805, + -0.026294801550591263, + -0.039365591677958514, + -0.04462472829580343, + -0.03945501009505066, + 0.19410972979890712, + -0.1376500258571795, + 0.01746108380913542, + -0.0600568745765232, + 0.12956969935546275, + -0.16598149719139677, + 0.1461044176730316, + 0.12083331658468772, + 0.10964660119185526, + 0.09293334950169968, + 0.19078117354045032, + -0.01325624666468947, + -0.03731047331001467, + -0.08880230645237469, + 0.04382304741333731, + 0.06563075106107795, + -0.03534454700890436, + -0.002317908893275051, + -0.11422164234751411, + 0.21729511082158637, + -0.014312137606999257, + -0.10017162884245695, + -0.06152828348804719, + -0.07515440886314831, + -0.019871739176497948, + 0.042674473068805764, + 0.05921776778409265, + 0.08598142591516433, + 0.06080467385966019, + 0.02931621482531635, + 0.1698791371403133, + 0.023854977371900725, + 0.040477985451714216, + -0.2249763775773754, + 0.07138755673313738, + 0.029523257910236647, + 0.08335004447786482, + 0.0024029245101702015, + -0.08669020724040236, + -0.046824329289957334, + -0.005300797012966893, + 0.00879819608293742, + 0.03964530576226422, + -0.2607562823361879, + -0.004750165752617274, + 0.013150215993424814, + 0.03780324587617703, + -0.07327240320807683, + 0.07962097168312211, + -0.12621218967515443, + -0.0042050440775671565, + -0.178522214784688, + -0.04342772084485677, + 0.14167558114694132, + -0.19018801377651623, + 0.09072236468604751, + -0.005886061309876207, + 0.04050786553295066, + -0.009943903047212441 + ], + [ + -0.1530487126614542, + 0.12559736507562985, + -0.03926123113706746, + -0.03823865364823763, + 0.023012006490186716, + -0.08079424950711686, + -0.12562338073187557, + 0.08281929220485541, + 0.06284471148445224, + -0.15560738709763336, + 0.0833276479841128, + 0.11023043021604476, + -0.038917364442687036, + -0.023545413804327463, + -0.24185942367294883, + -0.05053490314746311, + 0.01692189141831763, + 0.10016545568424425, + -0.08025791068290723, + 0.02724491768322755, + -0.027627051255840397, + 0.02900669921189618, + -0.01665180613933678, + 0.01318486955214887, + 0.01530150363010453, + -0.2226325320679841, + -0.03201652204532478, + -0.05087569817525352, + -0.038871309401381345, + -0.1900384368888912, + -0.1709805325051911, + -0.08856689600185992, + -0.018626792066323446, + -0.0935151548622665, + -0.18170754894742586, + 0.11864226741610324, + 0.0832205183692998, + 0.0884512903364264, + -0.022260586421530518, + 0.2121039655991023, + -0.1437281756077898, + -0.0374264578710885, + -0.09753310307612123, + -0.041939397589413785, + -0.015186655634046437, + 0.06847485223875092, + 0.038073735559648866, + 0.07501069329986948, + -0.06120217092374708, + 0.06635944811787545, + 0.055472227156922675, + 0.13184641011736684, + -0.01199602305401628, + 0.13222996634683545, + -0.09684491547372752, + -0.0881082900706921, + -0.01948543684976216, + 0.104649178604543, + 0.030606621714340317, + 0.17390209402550033, + 0.048913920256445954, + -0.07825121978166011, + 0.0055799162851040566, + 0.030812742135224353 + ], + [ + 0.13464404943272099, + 0.0027708324395895314, + 0.009200995531579194, + -0.1373946183437748, + -0.0978309968669719, + -0.01710979249492841, + 0.046482469873558356, + -0.10891038679214814, + 0.030498655181260603, + -0.14380646177074083, + -0.14089548111498257, + 0.06999007978853268, + 0.10796122616636693, + 0.008025613495027612, + -0.0825677480152019, + 0.02730313552016278, + -0.07079776663286236, + 0.08334709082686954, + 0.12132134506894127, + 0.04963349980460904, + -0.09294847757261937, + 0.13941122017793536, + 0.0816697079745193, + -0.06273298214093935, + 0.0011535559641589462, + -0.08053004687992622, + 0.17066651817535852, + -0.0121156447571047, + -0.14501941800198853, + 0.056589934753258714, + 0.1673462634323547, + -1.68881853251635e-06, + -0.1322407886588483, + 0.09557224401570563, + -0.07621257503787607, + 0.10449792981781164, + -0.1448820816152393, + -0.11005563205079959, + 0.029135210396705403, + 0.10984647429121455, + -0.028583501905384386, + 0.17436595932913368, + 0.01747766803486767, + -0.05011822150486827, + 0.0009035176577842138, + 0.04179996082680615, + -0.059663147786142505, + -0.11974511862212059, + 0.014094337967919418, + 0.028396808017978767, + -0.034714798541569745, + -0.005108665968436139, + 0.015221009468305173, + -0.031114527911453856, + 0.12001430941577738, + 0.015877018960611607, + 0.12391514503340302, + 0.06961759001724721, + -0.1111491579762724, + -0.13090526948361764, + -0.07846917656491659, + 0.051456095953555527, + 0.05002406204890413, + 0.025286311574201033 + ], + [ + 0.04143532905248945, + -0.089644563211584, + -0.20654348514837487, + -0.0542603471452788, + 0.04514674130216516, + -0.09055375385301505, + 0.11125758045134526, + -0.050011518119531764, + -0.2321230724143303, + 0.009046459938426284, + -0.02560151764589947, + -0.17926498254109452, + -0.06543077263278578, + -0.07454396073338034, + -0.04346042300054757, + 0.02787348104191141, + -0.11547399469692043, + -0.04849784307259766, + -0.10110445872898018, + 0.008951025606434597, + 0.09292490228769379, + -0.013465652167521311, + -0.08154649121893405, + 0.011789013519708985, + 0.12112896902179644, + 0.00420141046076917, + 0.017899704800066456, + 0.017819142146563643, + 0.09546814569744644, + 0.09481958272530813, + -0.040836474190423785, + 0.11268421325329664, + 0.02694573023951094, + -0.006540812061138318, + 0.19345741451555212, + -0.17914051996730698, + 0.054131430629774616, + -0.011918160211701029, + 0.07694481598684716, + 0.08920473132373102, + 0.07197080626488851, + 0.010630394730984913, + -0.09929275734265028, + -0.01737253332116954, + 0.17917233146499476, + -0.05908791517970638, + -0.31995095474088064, + -0.22945544250521843, + -0.00471422333256265, + 0.0702287862297243, + 0.06876125530752544, + 0.008986848710044381, + 0.0771991926859965, + -0.07677729672608608, + -0.05068664308873151, + 0.12636432046545673, + -0.06340754753721493, + -0.019992515379577778, + -0.04320716047307717, + 0.08879446049659412, + -0.09968966056020637, + 0.09671224287140989, + 0.0864272967503308, + -0.12460818835723882 + ], + [ + 0.07378355028515549, + 0.07820155038932718, + -0.11490903213053393, + -0.07991828349891973, + -0.17625206598649235, + 0.03028423315506882, + 0.04207843721836582, + -0.028491331836226028, + 0.13645409236734232, + -0.11464433982137719, + -0.03291293455747504, + -0.10549819948232485, + -0.008938525285409225, + 0.16410802553859138, + 0.07624359313046668, + 0.11525813818458873, + -0.20911258829150708, + -0.10001138773901151, + -0.08008504635011232, + 0.035184620276734434, + 0.0665825451561844, + -0.04438330827900623, + -0.007292766101449067, + -0.08365691014015875, + -0.1052625852742638, + -0.04369344482414919, + -0.0017564456044753003, + -0.0031128112683731957, + -0.03690868089910839, + 0.021793473351475162, + 0.08698208539565025, + -0.029233939366776193, + -0.2662166863716562, + 0.13699885519603547, + 0.0011819844289298808, + -0.08386830691819497, + 0.22222311065767225, + 0.010878884731601438, + 0.05943775882419863, + -0.08697228263214468, + 0.005260438358193243, + -0.09120436741011734, + 0.028947251985756574, + -0.17431204482425683, + -0.07462512250047114, + -0.007029613555004789, + 0.05977726918005982, + -0.0617702115451543, + 0.03947979170993835, + 0.0046012516044657064, + -0.10236143572507078, + -0.01362391483126929, + -0.10540527777127916, + 0.05955967058293622, + -0.08470154444667187, + -0.12813512464841886, + 0.05621764138534396, + -0.061675287375141254, + 0.1358912308975768, + 0.11586075247339143, + 0.17655093849577208, + 0.07909966454617195, + -0.006445642686109767, + -0.028879516010016495 + ], + [ + -0.0841683509253473, + 0.006531055631514341, + 0.0820251712447606, + 0.042763258435858785, + -0.21751115704242008, + 0.10579691242002005, + -0.1334203771315116, + 0.0690189954377437, + 0.11825716727471841, + -0.06350743985485258, + 0.029714214025191355, + -0.053130336083477864, + 0.05445519966869481, + -0.06898877321292346, + 0.055047888080897604, + 0.1414597187915847, + 0.11140937206753077, + -0.045289569280545096, + -0.15637712963447298, + 0.10930123886047752, + 0.1439514818381418, + -0.05715365503280805, + 0.016799043480439983, + -0.03315917392625733, + -0.18047889941920842, + -0.009305218856985415, + -0.02995268882082587, + -0.041421047009722343, + 0.01662400873116642, + -0.21281344331635588, + -0.08986447821901011, + -0.01736371262861054, + -0.04386955418671289, + 0.15593701097164858, + 0.02660899656399662, + 0.012304368583802407, + -0.10828425129732931, + -0.08113213693444088, + 0.049157603482775064, + 0.05186545030913853, + -0.14220813880843455, + 0.1705429910853722, + 0.06543654494788699, + -0.004963583141750184, + -0.1314889980463248, + -0.11570519531486126, + 0.16418339463460851, + -0.3417869384228312, + 0.06333438991001362, + -0.11005015386380579, + -0.041364062733678014, + -0.07756960934879698, + -0.16967639349562458, + 0.06535611578832808, + -0.16306698263619185, + -0.11582635395839598, + -0.024727953751678994, + 0.0034267776817722855, + 0.10644688014666595, + -0.14786102808919097, + 0.1648081132205907, + 0.0807802397921563, + -0.10386121821510352, + 0.07241548979810157 + ], + [ + 0.05602652364740766, + 0.03599627883056312, + 0.0746754490830168, + 0.07038092229885372, + -0.02832572583093166, + 0.04784616842441314, + -0.06500568899050511, + 0.1438454486741834, + 0.05528325940596766, + 0.10131097386830862, + -0.09954240028607164, + -0.15758902726119445, + -0.027672262785497132, + -0.029288186503082903, + -0.11241519629713047, + -0.0791368177851714, + -0.06829832758906194, + -0.023749302220366184, + 0.020751366754943518, + 0.06399800904755935, + 0.1090948851401422, + -0.08578741971396792, + 0.08583131732037186, + -0.041679900157199926, + -0.08558219901025652, + 0.06789832935773031, + 0.17400400208881317, + 0.13342836995019122, + -0.05517229048068789, + -0.09710383736063027, + -0.01989337112435113, + -0.07818277343039805, + -0.001733552212356086, + 0.012921844446532361, + 0.15678399228571324, + 0.03479904067367089, + 0.03776281374537044, + 0.1702505130668646, + 0.13165543343683225, + 0.003385227898402477, + -0.025254457730618258, + 0.025289306265745517, + 0.054524976511699935, + 0.13494136649988095, + -0.011261953441416337, + 0.02693466509698599, + 0.0705292245162029, + -0.11599656698148907, + -0.18909275008422452, + 0.041343210067407786, + -0.0708935194722715, + -0.01323259221541619, + 0.021083284792397346, + 0.06452311287069516, + -0.06638889583362118, + 0.08273201264438146, + 0.08856316695638394, + -0.09519638750407061, + -0.08915245179093124, + -0.08096951978858047, + 0.04501072280760487, + -0.07031572842834881, + -0.22581187405679778, + -0.09460719562173531 + ], + [ + -0.08535086528896751, + 0.05129771807552346, + -0.08096635578573128, + -0.05048127545621694, + 0.025683148561748904, + 0.13359867040918874, + -0.06517311520623861, + 0.22911044895065685, + -0.059943986363976104, + -0.17206150057562683, + -0.05969437230641531, + -0.08025938494947275, + -0.3032349506957286, + -0.23973657035272644, + 0.09648145212610305, + -0.018732055549363205, + 0.17780691295066767, + 0.044173507423109125, + 0.0026071046221637917, + -0.05132099558460484, + 0.13560824453392858, + -0.051622515628320466, + -0.11884586028664482, + -0.060386363772946795, + -0.06241868249980791, + -0.18351643612697646, + -0.013918416156805963, + 0.035181981833812846, + -0.05932780565347495, + 0.027971541126066236, + -0.12103633239351111, + -0.007679488958834019, + -0.12100640985950034, + 0.08077809596580436, + -0.0939504000862194, + -0.003279452940517396, + 0.1578134493518645, + 0.06162145681594033, + -0.0864772532243222, + -0.05863341724329975, + -0.03142018393398112, + -0.010210410376777035, + 0.026183573970430668, + -0.11937277485975917, + 0.08699705942585549, + 0.06973553024090313, + -0.024335107016717355, + 0.026745103641886914, + -0.11253117281674099, + -0.04383399915019637, + 0.0073414631709689164, + 0.06193581289551067, + 0.0880114641082628, + 0.12960078959767815, + -0.02913968063848132, + 0.1564340564461309, + -0.10254751816379491, + 0.09642371635111445, + 0.16361179706123152, + 0.016369897190789736, + -0.1082782643136371, + -0.12916717574434514, + 0.09491684667555146, + 0.06427345251831028 + ], + [ + -0.010085798045108445, + -0.11630798342231859, + -0.002472623173311218, + -0.040951118717034954, + 0.14639062172259706, + 0.0878386288413494, + -0.0840898989960732, + -0.06163018917202681, + -0.11993810391984046, + -0.05853586128722227, + 0.02856335755804329, + -0.06811145233361814, + 0.16410517007877085, + 0.19181895085147802, + 0.05636484849309337, + -0.033250178888369286, + -0.01928568629130934, + 0.13772925083255272, + 0.0067694662555844946, + 0.04543758477169898, + 0.030325621196716127, + 0.08553286122251912, + 0.00034851749726109223, + 0.054480142509128554, + 0.1379842706022162, + -0.047290336219457975, + 0.06045288693713487, + -0.054976118945399756, + -0.06892852506622997, + -0.0014413047814167993, + -0.03805131846807658, + -0.21559101565052124, + -0.13424291053689438, + 0.02105993535078635, + 0.04548608186491398, + -0.08338075445691537, + 0.0882703210125868, + -0.03753837464727106, + 0.10914596614960792, + -0.009241875964808273, + 0.09280579060559149, + -0.022043615583398887, + 0.11716380112168959, + 0.03672570111275036, + -0.22298888054485377, + 0.05870763589000358, + -0.2531515871834375, + -0.18670143576509593, + -0.02356707358796682, + 0.04654053664313623, + -0.07189758800779045, + 0.1157185044339144, + 0.018224229516942875, + 0.0721796348388776, + -0.2419715156622737, + 0.05758468906616866, + 0.038192433263144934, + 0.07625990689805501, + 0.051123897192995496, + 0.010159878807187848, + -0.14104931424077471, + -0.05184599257911469, + -0.15918181952102284, + 0.021031084230938638 + ], + [ + -0.07924098047848607, + -0.03710678265632391, + -0.03348494695371434, + 0.15322326178343348, + -0.05487709850257571, + 0.005519033866942916, + 0.03614308182495045, + 0.011520882593058957, + 0.015971795657880046, + -0.05716483315979525, + -0.12404361438281925, + -0.13534751421913196, + 0.1352883078504268, + 0.15784284557868705, + 0.06568108814572751, + -0.019033397032590868, + -0.0182352800692269, + -0.22542861292618033, + -0.18040236993765904, + -0.14721630255059479, + 0.10316250575377472, + 0.03865234346999254, + 0.08416240069475739, + 0.08027752072762473, + -0.08016200100619741, + 0.019433528166168154, + -0.0971381109254185, + -0.13039963198806287, + -0.07901187464261003, + -0.10003537650431492, + 0.054812134817595684, + 0.03062519997430023, + 0.10808768302070965, + 0.21156760588739157, + -0.0200984651296328, + 0.03640684903702523, + 0.041326956600483224, + -0.06382887299645269, + 0.07532208046432826, + 0.06191118991987418, + 0.031780959148293084, + -0.04750211384290626, + 0.009179666668734631, + -0.064333006148802, + -0.06395361753312438, + 0.13501610178770146, + 0.09832047192249813, + -0.07734477620454924, + -0.05269063783083949, + -0.08169138073545999, + 0.12335589795541779, + -0.1304619075883202, + -0.15519558654140214, + -0.2349043670440849, + -0.05594059890504637, + 0.011183442398128966, + -0.013287014092458055, + 0.004968206896520722, + 0.13602124906610413, + 0.03542038668226815, + 0.0238849737881362, + -0.13920802083556702, + -0.0143733038191808, + -0.11450703875703756 + ], + [ + -0.06561598311198162, + -0.06224714946218318, + 0.07424827896005039, + -0.030761490003491487, + -0.005538216932327713, + -0.046149336939462104, + 0.014097800746455075, + -0.07428252730963701, + 0.029549551079977344, + 0.05004155118060889, + 0.059790409785818725, + 0.06308092021039305, + 0.16635943532753295, + 0.10816197528235941, + -0.0333550611151486, + 0.09502038965997323, + 0.020594336825692654, + 0.042499577725127455, + 0.00958126880302677, + -0.05305527137411884, + -0.02433193158926636, + 0.0142943450387201, + -0.2844681392420513, + -0.04925670179239064, + -0.2240618144879583, + -0.1116851675716394, + -0.10809441859130875, + -0.14698047198803418, + -0.01069181900006494, + -0.159024384242816, + -0.02460983768181831, + 0.1061132066641256, + -0.05298748010810788, + -0.10397405112651636, + 0.01588855900409099, + -0.09014482437179679, + 0.10219583201033729, + 0.15777293349297578, + 0.0973003861943429, + -0.10984026714954015, + -0.01540730838052109, + -0.10154151727420886, + 0.0759583707262903, + 0.09827678707523821, + 0.05521462940141461, + -0.1336059150156947, + 0.36374614411837697, + 0.10698373225042801, + -0.12501218821382884, + 0.13251082171269316, + -0.02131616240055181, + -0.04460133788982573, + 0.09395055995170985, + 0.19908618181950619, + 0.13099073236485845, + 0.005706936619531815, + 0.09330524792922906, + 0.13141046180807525, + 0.15427381997431752, + -0.06828969597171315, + -0.06434147912795178, + -0.09021554137466109, + -0.13043075424248815, + -0.15389935926748108 + ], + [ + 0.0767404062757664, + -0.07658527061589054, + 0.04463212878678468, + -0.017645648883925603, + 0.014726803263511268, + 0.12990288560068872, + 0.028022387862308658, + -0.11476565802018837, + 0.26259559830576545, + -0.09465568730833844, + 0.15492446295654266, + 0.06260954047639683, + -0.08864028074197101, + 0.13263654355779628, + -0.036835760697159534, + -0.06156736718234712, + 0.012410310016723018, + 0.24067716393295366, + -0.09287069123157164, + 0.003781202759695382, + 0.028794297908520474, + 0.034680848682182894, + 0.17209181010551722, + -0.0806967312851957, + 0.014481459391077306, + 0.059224418767672975, + 0.07181839608413347, + 0.16778421409276664, + -0.12271394476355904, + 0.08625234070629476, + -0.00651850725320306, + -0.150615694896184, + -0.03518220317403522, + 0.06273230164000668, + -0.05148384675404617, + 0.04902473206281906, + 0.08917450745575535, + -0.0038957497204617506, + 0.12016001847348803, + -0.0846052562505571, + 0.08071313548385001, + 0.1383997436453993, + -0.01596546740303038, + -0.12813691856719317, + -0.012383064197560138, + -0.096178657406362, + -0.07951002971360106, + -0.076729918116427, + 0.14071935465183824, + 0.07454810885747697, + 0.08566544717467316, + 0.11566485412079924, + 0.03692803958260958, + -0.021314833364166133, + 0.17833311678848252, + -0.1849169069009281, + -0.037934047392362176, + -0.04345286043456433, + 0.03402002511186674, + -0.1746375914755126, + 0.16456973318706158, + -0.07761769161098425, + -0.14935667563032878, + 0.030777507564975194 + ], + [ + -0.1257802858077459, + 0.15753990502625326, + 0.15219299494369842, + 0.04144022744699146, + -0.208754962159545, + 0.04254304440222589, + 0.06010810174216141, + 0.04512095612739044, + 0.033617130943671435, + 0.12005245806010854, + 0.0229246925147528, + -0.0287212215640793, + 0.08508699270494802, + -0.06486259132823492, + 0.15488483301301104, + -0.005192818107265535, + -0.150257254691294, + -0.2058031042380256, + -0.03304078459806016, + -0.13720627689994788, + 0.025307702985046327, + -0.056338465479268664, + -0.18862249520275667, + 0.00928785338784323, + -0.09530090591097092, + -0.11467059508854738, + -0.09725498400894694, + 0.16086807649256732, + 0.031168210233193064, + 0.09540975663001638, + -0.09384747030399587, + -0.014065310388648014, + -0.020031161588941644, + -0.07510930041095282, + 0.0977750141933682, + -0.013576230015901691, + -0.07634858963212107, + -0.06943097041843602, + -0.0055253440093587115, + -0.16130665558539695, + -0.09375516408101753, + 0.09026632278323979, + -0.07290949687352133, + -0.012913875918902296, + -0.2562829700538413, + 0.05063988959101871, + 0.08375696095037764, + -0.01611914077270243, + 0.06539964827300787, + -0.045436641756768315, + 0.02574059981284063, + 0.08171796624136017, + 0.0390898293581623, + -0.19259980065873472, + 0.12523177798577864, + 0.1844959950191167, + 0.0604805123525221, + -0.07046599271647093, + -0.027154856380127487, + -0.1143122507840986, + -0.016555852293856324, + 0.06872722500485065, + 0.14384076062897128, + 0.10841531321044023 + ], + [ + 0.014663304694786009, + 0.041241763878501536, + 0.10008775849076601, + 0.09048913975015149, + 0.05066715198442741, + -0.16619967820952408, + -0.1187076471918071, + 0.005370726238893242, + -0.14804392206986272, + -0.026345136268364613, + -0.125469077370074, + -0.24124195421504294, + 0.07164083284797722, + 0.006401773118743209, + -0.028891123639335527, + -0.028634434463200964, + -0.17731189531131397, + -0.0011429383184329075, + -0.10660578669526084, + 0.09525484018650664, + -0.007071873768680651, + -0.020775867811855288, + 0.19000178211361599, + -0.13924235486801048, + 0.09254178321352048, + -0.09467038827076857, + 0.25542022301597683, + -0.028599967568423576, + -0.035301644549202656, + -0.04641207972095579, + 0.08443469473351616, + 0.05731679072309573, + 0.027001645046990548, + 0.14335447352128047, + -0.09359697763777924, + 0.010010307444859007, + 0.11795214640555572, + 0.01261450264224033, + 0.10335047148396621, + -0.06610174971058697, + -0.021755514625141414, + -0.18592381540582245, + 0.056658271200010685, + -0.2109483246438409, + -0.028351746527117472, + -0.016277846848414747, + 0.04204843807724088, + 0.04304918358098597, + 0.035869396371008035, + -0.031333077146711776, + 0.011009684588020782, + 0.0967964365914214, + 0.1214148736338901, + -0.035437308986315884, + -0.13590892538097393, + -0.12569998463983648, + 0.0279918556457667, + -0.007822034285700297, + 0.006956063410210405, + -0.0032474240031278266, + -0.02432216049752034, + 0.10369941986935648, + -0.003426558403575878, + -0.01873833041229095 + ], + [ + 0.06501194715120825, + -0.11154721017572139, + -0.06113774559490394, + -0.07469669507136176, + 0.09355081297699885, + 0.07258281642795392, + -0.007610146500619405, + 0.18948263321792658, + -0.038759992039940155, + -0.25711893406671116, + -0.028119991794364557, + 0.047712593230832774, + 0.0738017540566822, + -0.029316841831594755, + -0.1590151273633461, + -0.007267511055741138, + 0.14791495366391824, + 0.08008718818056218, + -0.029225074246069543, + 0.023504319137392805, + -0.061499874272394284, + 0.02844538914939576, + -0.10539641265935196, + 0.14623268361685784, + 0.015139249973577623, + 0.062290361306793766, + 0.10168833156826984, + -0.12940429336789736, + 0.0378863280733663, + -0.05740048574966296, + 0.08980206235133753, + -0.1012082170487785, + -0.03237208941580576, + -0.10664827837521654, + 0.28605515017845534, + 0.1644947698885625, + 0.0790894064649569, + 0.0927374088549957, + 0.13990552038775897, + -0.03171704489621808, + 0.019077746197656575, + -0.1180924717383932, + 0.06453661856755184, + 0.3249034576392327, + -0.0776546413207287, + -0.22620065837381637, + -0.03125802586849324, + 0.0422160541392431, + 0.017032927346966716, + -0.000569623362950429, + -0.03775212229675818, + -0.05652413510809256, + 0.0313510577059083, + -0.10996433033436048, + -0.008055765463169858, + 0.004969240956525407, + 0.11640518670395453, + -0.042174373772130604, + -0.08010748970147968, + -0.02066871464091277, + 0.044460972223272666, + 0.1843438291231625, + 0.1040860253842957, + 0.028728760325387143 + ], + [ + -0.056034028047970225, + -0.11563648264237664, + -0.003235126889089391, + 0.09217066018032981, + -0.0031703449749052276, + 0.15000957039106483, + -0.0817793335430554, + 0.057013361042655454, + -0.005350524379242154, + 0.20492366326036304, + 0.0030986300897205554, + 0.202780648835773, + -0.037890377970703146, + -0.07733961502920297, + -0.033418327424162945, + -0.046074878031571204, + 0.0030696123416439416, + 0.09375912953767519, + 0.06936022143965204, + 0.02362688441854218, + 0.05052610052679071, + 0.019981100085906783, + 0.1757971590741968, + -0.014617912012602211, + 0.10288313956820397, + 0.02097788914437672, + -0.059253228527016366, + 0.11038702238744745, + -0.047239750478435226, + -0.09292618996228479, + 0.0023778866340137205, + 0.0795376739208734, + 0.010122766811088669, + -0.09148132258775865, + -0.09928997867230244, + 0.11956169313224374, + -0.08123902830702022, + -0.01792646075994343, + 0.059572811525180284, + 0.20337734176303474, + 0.14465273149966287, + 0.14775174610178562, + -0.11576679139388009, + -0.031527191104917196, + -0.011833237072618031, + 0.12490128606029101, + 0.1178294871979942, + 0.21005581089739933, + 0.03226738352074537, + 0.030578460050500217, + -0.09705054996011904, + -0.12282736591829949, + 0.09800659439803383, + 0.1202493616930699, + -0.05841923756638748, + 0.02510310875753127, + -0.01868017051376106, + -0.16064428568522096, + -0.008598591634086413, + 0.028222602267668415, + 0.19631829634315712, + 0.015501365377762574, + 0.04793312868472496, + 0.0652369251463982 + ], + [ + -0.06314405501503799, + 0.19632506789303197, + 0.028348390147180796, + 0.014769049623642484, + -0.06947584524778322, + 0.040915226383749136, + 0.10244408038242728, + 0.022843504156098586, + 0.00815879044643304, + -0.08130576755498152, + 0.11055150889677941, + 0.031547327556378485, + 0.004218955661603736, + -0.07619147371772439, + 0.004236241263816586, + 0.03010848808790563, + 0.021249515303922, + -0.00338531401762825, + -0.05180207179282253, + -0.10037497873963622, + -0.0839911039070516, + -0.029936908035866867, + 0.1520519571902106, + -0.016624188295907196, + -0.058628290569500134, + -0.13782136190670066, + -0.051507151157915425, + -0.1013915931594479, + 0.23898750958020998, + -0.026552441851909997, + -0.13925597310051188, + -0.10637428701006363, + -0.0075850280846988735, + -0.026462446954180374, + 0.07901600133222211, + -0.2107685346174294, + 0.0007930283945723698, + -0.08765488382245487, + 0.011808130455468477, + -0.03889842900002838, + 0.13756507463577855, + 0.004498524062088393, + 0.22131510903947627, + -0.09239258414369164, + -0.19438207661985868, + 0.057229448903160667, + -0.007116181647224053, + 0.08064159943801444, + 0.15397744342819042, + -0.0165272516225555, + -0.03534098880945158, + -0.04989882457923715, + 0.13782368690552035, + 0.0669118754883047, + -0.10136291166447167, + 0.06129573216982967, + -0.09088141118532461, + -0.011153588778011259, + 0.12482633197487294, + -0.11406879655267509, + 0.023989413618366928, + 0.043874563928947084, + 0.20394697494295377, + -0.10490137254921846 + ], + [ + 0.0803885083581855, + -0.024339468300344082, + -0.01035109026471121, + -0.02559394768387184, + 0.26761809948947385, + 0.06587875888042713, + -0.04121235317646804, + 0.10844366959661829, + -0.004255511922975159, + 0.1059043403222231, + -0.0389592587663429, + -0.19654457933809957, + -0.2628929611156929, + -0.029211959641645815, + 0.15051260424246216, + 0.030829494525773313, + 0.17282615611744065, + 0.05078363846689426, + -0.0868588912695018, + 0.06817231560201505, + -0.09766282195442792, + 0.044240298294465484, + -0.054917762129372875, + 0.05818914371679799, + -0.047516884411652416, + -0.017150956417799654, + 0.014649022225438965, + -0.12223029773089056, + 0.046312313364007096, + -0.11909242687296784, + 0.08570211683763475, + -0.07159036483155069, + 0.05149192318404806, + -0.04148988326481767, + 0.17106549768234824, + 0.16503593102787795, + 0.026449027077502452, + 0.05331729290902942, + -0.023713927031508042, + 0.11712977643361291, + -0.0017183048538109806, + -0.10211831464552604, + -0.0368236661108085, + 0.061420483273676885, + 0.058176234785021444, + 0.03648847150044671, + 0.01568098422238093, + -0.0680454397458228, + -0.007230427397042043, + 0.11568494517394737, + 0.0005711546009772206, + -0.02568418134901301, + -0.08963138994768527, + 0.01275903869573964, + 0.00482436433154245, + -0.10875892620088648, + 0.0950190100914901, + -0.21163661530180045, + -0.0771335014185125, + -0.16934985897711627, + -0.1176581847330886, + 0.027869613393934203, + -0.2090354857661419, + 0.03527825134565894 + ], + [ + -0.05694666470250236, + -0.018517933396917312, + 0.09365275665574152, + 0.010333760043313961, + -0.03193617347701562, + -0.13412207958960587, + 0.04397167496912169, + -0.09868694976442706, + 0.09473861292017566, + 0.0014488679856877699, + 0.14632897643561546, + 0.05284092038579961, + 0.16428166193459592, + 0.021592730586220205, + 0.050976632119489974, + 0.12147248195737677, + -0.03992295750519215, + 0.13177865887045356, + 0.1281659752827363, + -0.14383045782043843, + -0.01747244517730064, + -0.0804611042256882, + -0.019790987072219917, + -0.021269442743269994, + -0.1294476257511965, + 0.0565387128603582, + -0.17325466804969242, + -0.015953662359075974, + -0.13081706861047473, + 0.12178155970153424, + -0.08299058480119112, + 0.102624153031309, + 0.003046996889944128, + -0.026591771793331845, + 0.01910919337032973, + -0.09512530711488161, + -0.1104641498551766, + 0.02239912419801312, + 0.11267252598520057, + 0.21656204514940436, + 0.1716072705155096, + -0.08849114986008813, + 0.02204074202235235, + -0.028301586673878904, + 0.1156360197838678, + 0.05861374269537324, + 0.06685575587528005, + 0.15517537190381558, + 0.07724783545036012, + 0.12673909328119567, + 0.07466534141841362, + -0.08180527808462632, + -0.16048373009558847, + -0.04197284013930613, + -0.016208272991380248, + -0.12950586189536314, + -0.12124753387620467, + -0.21210631295849647, + -0.0739774587594316, + -0.03046933387136291, + 0.16344995113143568, + 0.04617592675583545, + -0.08667883609862405, + -0.0636871208939699 + ], + [ + -0.054269844002743275, + -0.08965006055398857, + -0.002766807295112141, + -0.025934843501465372, + 0.1910181146917984, + -0.0029560337630418505, + 0.19204617486288839, + 0.10797357200128768, + 0.0005698291702043415, + 0.03771717409705741, + -0.1766796996959911, + 0.09619671422140197, + 0.10279371840207666, + 0.09544870601802727, + 0.09669059652541606, + 0.09922919809395965, + -0.01622902279439775, + 0.19028379791724026, + 0.07892535264936909, + -0.23746523629506702, + 0.07862144968457957, + 0.015064355566515123, + -0.01521791843287072, + 0.04614459514935364, + 0.07462577745019729, + -0.13968242231070105, + 0.00230657368099166, + -0.005223955837433132, + -0.07049307195809294, + -0.2027568895796913, + -0.00251512752711546, + 0.00765519872244547, + -0.04285848892594224, + -0.062043840667545216, + 0.131641604928017, + -0.0529564106782236, + 0.12762121597184617, + -0.05298386404600902, + -0.09136040423285903, + -0.05145250383264465, + 0.00750021048984029, + -0.041030650831378884, + 0.042908562263250925, + -0.148684312268803, + -0.07218121439929484, + -0.14499660364838937, + 0.085028295977487, + 0.018336572404491772, + 0.002396716980653992, + 0.01030796291345333, + 0.057184846726769545, + 0.03557844684630535, + 0.08166672630230681, + -0.030918552269185023, + 0.03986145685628065, + -0.04298007920835579, + 0.10944260863957084, + -0.17092127005820487, + -0.14827209107637848, + -0.033660919542173644, + 0.10471400531794478, + -0.17239543074147284, + 0.19541750955939194, + 0.10301135320198776 + ], + [ + 0.0025145548260943717, + 0.09015439989247581, + 0.0422592401677456, + -0.08590839304840775, + -0.09125427073019107, + 0.125613367591174, + -0.014506036236917123, + 0.11864512501270692, + -0.06824032909248119, + 0.013632573891651118, + 0.05251017103972947, + 0.11056002036534192, + -0.02116496681140505, + 0.0692134217303461, + -0.057584621064590585, + -0.08357860585933408, + -0.08624690769958357, + -0.18501745524738594, + -0.07558961077811846, + 0.08333956550444142, + -0.1019832617333847, + -0.08971498042038939, + -0.012540478107293133, + -0.17248159867853052, + 0.23457928404671843, + -0.19440491715938502, + 0.13265399420306598, + -0.07865590623681719, + 0.05890013961685067, + -0.041271696197148024, + 0.0951299352257693, + 0.08741843701047353, + 0.03769583416711233, + -0.052524131388189614, + 0.03012980055049111, + -0.12815860102721396, + -0.08152340466775311, + 0.1193512325559713, + 0.026511972807935904, + -0.09358501513414542, + -0.07798923762621951, + 0.004001350166123388, + 0.013068397229170307, + -0.06675655918914096, + 0.15654637963245993, + 0.15687470491876573, + 0.046190180912179836, + 0.09022845339385127, + 0.037305220389140574, + 0.15223821016274194, + 0.04832062847004723, + 0.0878480491808717, + -0.05076019227840464, + 0.023912952200702893, + -0.07602262880975892, + 0.007085619566380233, + -0.2666717198650234, + -0.07557578411739466, + -0.24936186462562318, + 0.1362515331562653, + -0.052728304413346284, + -0.05839214976259765, + -0.012621972231359505, + 0.2710277232033504 + ], + [ + -0.022029794858382468, + -0.08797427652332881, + -0.029195201309520264, + -0.0842250787334787, + -0.050541501236277736, + 0.0150050809958278, + 0.0940374292555108, + -0.0740980739079812, + -0.17003931269569925, + 0.004426680943661974, + 0.060147160239500966, + 0.10425588863023705, + 0.16320636167443106, + -0.13691290117060248, + -0.0585975452469372, + 0.15525657691868697, + -0.016052991195635156, + 0.05594604538782071, + 0.0030440947750054754, + 0.11229485253401411, + 0.1908464562667378, + -0.060061338849550894, + 0.0053390711537685195, + 0.02388932294422225, + -0.1165828531622849, + -0.02308753915769697, + -0.09041921695676591, + 0.021574562116259327, + 0.020050001130157986, + 0.0942040480171196, + 0.03573959341663201, + -0.008289463062720484, + -0.07272041911886883, + -0.06054438232359871, + -0.16481314454572904, + -0.17292807924881382, + 0.07651474252730302, + -0.07568930688720876, + -0.005153285799821286, + -0.11233834559752719, + 0.057574110480103295, + 0.06826188835889437, + -0.21822144765942364, + -0.03613078116991983, + -0.00227921661355155, + -0.13317536232085314, + 0.016213306528912796, + 0.14240760982594777, + 0.10313488032763672, + -0.07697308470203548, + 0.042621618798413544, + 0.017742089437930323, + 0.09991402426619894, + -0.00844642262058176, + -0.013892327682258638, + -0.08888613440811112, + 0.1633961457531845, + -0.18733812495483781, + 0.035850059646482434, + -0.08372641220199441, + 0.058536955834995776, + 0.10892083680128282, + 0.11928236249905909, + -0.14218283539433502 + ], + [ + -0.02971180745837217, + -0.0460767562445869, + 0.1728701165189183, + -0.04671459548568222, + -0.004955063598388441, + -0.0027347335889539573, + 0.08742216607413054, + 0.046819653765852835, + -0.021900682109695885, + -0.017281322319014955, + -0.0682375397278165, + 0.1492930717561269, + 0.15227235382933044, + -0.18280311977894326, + 0.14964099059699473, + -0.13009974590476672, + 0.11188150002196898, + 0.04677108900101371, + -0.10080510504595314, + -0.10908340015753278, + -0.08142343519799056, + -0.024334856646499856, + -0.0006505925752272695, + -0.007763466234543531, + -0.0371026430766598, + 0.11186517539504, + 0.015330129138352164, + -0.070472001852096, + 0.12077231282953123, + 0.06465838613603529, + 0.056706385741742464, + -0.11982275254797353, + -0.05571111560720248, + 0.04823781121924038, + 0.1725847339884657, + -0.0005466241332283245, + -0.011371698797249136, + -0.056558332098881614, + -0.1919483110203129, + -0.1442560464697676, + -0.021671410435533816, + 0.0315720166377098, + -0.0746385664166951, + -0.004283767177497513, + -0.1060127280250329, + 0.1243162924012496, + 0.048988646120839, + 0.060149686167466576, + -0.004507937317163057, + -0.04700643357191305, + 0.11785334124855917, + 0.013624036613194876, + -0.08912296984787543, + 0.04395449312200195, + -0.009078623439447063, + 0.11607202186259064, + 0.267569356783233, + 0.19681259333008647, + -0.057173192265704324, + -0.0034274183061566454, + -0.2677809534898717, + 0.052324164477925955, + 0.07253850400737699, + 0.11179477321189424 + ], + [ + -0.016741340646866134, + 0.045468415538059845, + -0.13546694865025197, + -0.01696779270304864, + -0.1413456648955993, + -0.16617091939361706, + -0.08722017256684547, + -0.07181625074397062, + 0.10183193738859989, + -0.0038438302563085325, + 0.021355085819779962, + 0.010905838380002166, + 0.012836207420668112, + -0.04503110628808027, + 0.07368318850293969, + 0.08257968064609068, + -0.1828052364747987, + -0.006394231182435247, + -0.04428955343922221, + 0.06654569195697242, + 0.019120560304621663, + -0.03324814049529475, + 0.0362129670832541, + -0.12635051723550303, + 0.005854200068083916, + 0.0675949626453861, + -0.025053105550749723, + -0.005409567928022649, + -0.08006399838011291, + 0.05292394143833221, + 0.009512945233869058, + -0.022767576820647024, + 0.10128728050188728, + 0.15212697822677962, + -0.0961313355445908, + 0.04642681962790718, + 0.01462588933670083, + -0.025145407640998887, + 0.08032290378731338, + 0.04510473768631966, + -0.10856618397704457, + 0.08811219177462443, + -0.07615242708531245, + 0.045024022994331156, + 0.16698241360489657, + -0.018598855616569054, + 0.06995131698905797, + 0.030216534834742972, + 0.0663443153564461, + 0.005938004353959109, + 0.054284060265731404, + -0.12872301192627783, + 0.0047052508471478105, + -0.09014075835325497, + -0.013575828199913431, + -0.11446163869784026, + -0.00010246400945848045, + 0.00012701372673436836, + -0.12629290043462188, + 0.0371525071980262, + -0.004527410589173418, + 0.14679179609337512, + -0.16754241858464575, + 0.019554354108903868 + ], + [ + 0.08626719620555905, + 0.11471017004169362, + 0.1098086456094965, + 0.08890508328990943, + -0.1120512528245993, + 0.05436842443646529, + -0.10303043877758569, + 0.01521455103298381, + 0.12330202970767434, + -0.11353569087820614, + 0.13440463270801903, + -0.030381448423594432, + -0.005343195225542705, + -0.06961473227722643, + -0.04776446358711976, + 0.08377101497606254, + 0.004481670001345169, + 0.0394072704708156, + -0.013501492034057889, + 0.08558042838003803, + -0.0821276252884748, + -0.09315507699076589, + -0.042170244582139194, + -0.08169898079230058, + -0.0029580058451811847, + 0.10606069643723337, + 0.1133426243906718, + 0.0038345807553659683, + -0.0599347686996954, + -0.10846066204304564, + -0.05255111208770433, + -0.0946686932189465, + 0.1582820442273415, + 0.005933751810829873, + 0.007889222370374703, + -0.06605932733893795, + 0.16251601186560627, + -0.054633249647116744, + 0.09997459099971595, + -0.01789111759415611, + -0.01989876763596089, + 0.21160988677982756, + -0.03714103485599397, + -0.03499352141493635, + 0.011660395417721568, + 0.11533832358484547, + 0.11477502621364906, + -0.04562511210336563, + -0.075027250740764, + -0.04585961129936238, + -0.13826613289286935, + -0.04519095865450053, + 0.1945287846910266, + 0.26127642510804777, + 0.053780308633505795, + -0.18526607086607902, + -0.07809684733957457, + -0.05730336158510421, + 0.14414169016442618, + 0.03153535687018967, + 0.13788638552014357, + 0.24822627005154502, + 0.014225140403530899, + 0.14401150250979475 + ], + [ + 0.06602576205124615, + -0.04338507271479913, + 0.21713543624819362, + -0.11703945531904654, + 0.04483075218192271, + 0.011703850605248953, + 0.13148582710998716, + -0.002748275662462424, + -0.15610951198586095, + 0.08789711849844484, + 0.026387988382789225, + -0.05964141404686516, + 0.05708713917154595, + -0.07109339981868816, + 0.026447866759176944, + 0.013710396491844568, + -0.07785947759353681, + -0.024319583428680333, + 0.03285928750958139, + 0.03903026992645592, + 0.06964315886132197, + 0.11982910173430601, + 0.14120876719480022, + -0.055057265764708686, + -0.04565057324700092, + -0.1469978098774702, + 0.1207421531410293, + 0.10675743360259891, + 0.04081857446795046, + 0.07455604967146742, + -0.017073154582409256, + 0.13073537409840147, + -0.10463654125331052, + 0.0735362462761907, + 0.1582022290375278, + -0.09718913498241934, + 0.013025994857557741, + 0.12526893445176157, + -0.055369550158532954, + -0.03443303646950829, + 0.17465845570811658, + -0.10438735202315115, + 0.12260107470834969, + 0.045199717394870664, + 0.11562942945618393, + -0.16518417307452485, + 0.03191701217156278, + -0.10003479520384027, + -0.023708982274638295, + 0.29900676314897456, + -0.02449729163797987, + 0.030081644809414745, + 0.0009571701993260824, + -0.1755132340978933, + 0.006758174585992641, + -0.03537240098625266, + -0.04437720853887178, + 0.011323024806745447, + -0.013528012470809965, + 0.07038578145331643, + 0.05732324632406782, + 0.06343323826319952, + 0.14767723109464093, + 0.07936396936072358 + ], + [ + 0.10604562364848745, + 0.16765170742477709, + 0.18389872877231525, + 0.026217173892700014, + 0.11527801235216173, + -0.15435029922310978, + -0.05708034496759489, + -0.0768748096712491, + -0.12190088800659725, + -0.03208722767714952, + 0.03136394299600314, + -0.017677661906483882, + -0.04223963127169289, + 0.008091540529986176, + -0.003648025511032653, + -0.1560038094578405, + -0.14621484655493522, + -0.15814313488241613, + 0.14178544796649561, + 0.0860137502976115, + -0.09681231000065371, + 0.3542924750696175, + 0.15262447856239356, + 0.05261824036540696, + -0.08791944394451578, + -0.09097763726657182, + -0.18141411697764695, + -0.184750056640067, + -0.020480841499683763, + 0.05988296321770334, + 0.047187598035970335, + -0.12201005365942115, + -0.016995353114886872, + -0.05049572338747375, + -0.16052128473418498, + -0.05992373707097323, + 0.11367857792788263, + 0.07479380821953645, + 0.14524476200767744, + 0.1711269320005165, + -0.033513606356488645, + 0.028349018688802793, + 0.18111829935815849, + 0.04614322257895788, + 0.25524977603020654, + -0.09403596426602548, + -0.07600689672559618, + 0.1252955307279784, + -0.07416089365155691, + 0.0038315542392765565, + -0.06632515919174688, + -0.12425665326797525, + 0.06410302519611018, + 0.0012576202314730526, + 0.03275807215312031, + -0.08877456379000519, + 0.029332629300500464, + 0.03462948306843406, + -0.050138528584138066, + 0.1710146231527452, + 0.040363924298487924, + 0.030002897069547587, + 0.13714693199178093, + 0.1225852544868443 + ], + [ + -0.025089059018519835, + 0.027681419859416467, + -0.14161536753570333, + 0.03504912174147675, + -0.18634184614415464, + -0.09029619808278515, + -0.053117240260086344, + -0.07121966312186381, + 0.10805409597421052, + -0.020050729751237874, + 0.13019710346812327, + 0.10297445691742457, + 0.020656792461771493, + 0.0652484410580294, + -0.07673241353143338, + -0.08648161325412336, + -0.05348767857717007, + 0.11283873896814943, + 0.05191643089872891, + -0.02863531728639107, + 0.06719834241458605, + -0.10807085161418827, + -0.23453822899692842, + 0.07466073101708483, + 0.02807285217969532, + -0.06720839176087809, + 0.1357179800151759, + -0.21339949223915383, + -0.11863422419276407, + -0.09753020312800238, + -0.001947475321430842, + -0.13767121847760708, + 0.06329161794776665, + -0.03258745875285934, + 0.04757278825787925, + 0.04932375810085334, + 0.0707320184840928, + -0.2965856257570777, + -0.2150904870704059, + -0.08099669402928547, + -0.0546414311772021, + 0.04584598397189626, + -0.05748854361931188, + 0.014003471894314671, + -0.11153851980433815, + -0.03146325015195622, + 0.035617427939618106, + 0.01627325970102818, + 0.07069199942137216, + 0.18208222511325112, + -0.07052384190115504, + -0.019873964961331342, + -0.0022869229601176757, + 0.11000109443813022, + -0.0629798411931026, + -0.2787390748395046, + -0.03414120671019909, + 0.09291017165150767, + -0.044833922014818534, + -0.13166600086667657, + -0.05333952377682521, + -0.12463997298204599, + 0.06013451138935419, + 0.04457761987541698 + ], + [ + 0.044978654947138264, + -0.008829690580741177, + 0.014050725223893515, + -0.24333326777932773, + -0.024860890218568004, + 0.25044066028119183, + 0.1024270539677199, + 0.07049477799342037, + 0.07596638187310617, + 0.11865293733806624, + 0.0904329430378989, + 0.0030647489628202336, + 0.16375817277894011, + 0.1503677178778842, + 0.1701066227398592, + 0.0835470529626469, + -0.08350320645987934, + -0.012820007030658645, + 0.04225667692892135, + -0.20362406339743552, + 0.0370978639271009, + -0.02929906733616118, + -0.025022694796613478, + 0.06475571381447935, + 0.01261821231482088, + 0.019640385442741597, + 0.0749801588417343, + 0.015301923303233446, + 0.013782724451407324, + -0.055447810985087456, + -0.0186169913693358, + -0.13543816244069037, + -0.036446702961911014, + 0.0695435797499086, + 0.15603972919538434, + -0.03194976543065914, + 0.023121437229175312, + -0.18251825652189238, + -0.03941308101276659, + 0.05930615618117228, + 0.1285957659148319, + 0.12301969728452525, + -0.022352490554535583, + 0.07115856429454373, + -0.09860210730052027, + -0.034260540765977225, + 0.08044809614939089, + 0.14638625269658737, + -0.05776171034056724, + -0.16905010310489493, + -0.11010715043236052, + 0.014970264619416862, + 0.013980311483344466, + -0.028008274839149267, + 0.03486876731777649, + -0.12607292510479826, + 0.013077892432102832, + -0.2156614614685003, + -0.051435058413512286, + 0.018945735976412848, + -0.06365975867515465, + 0.033737080035513595, + -0.14025534549468655, + -0.120795966789252 + ], + [ + -0.0018383022408360935, + -0.09131403729332255, + -0.11999445285095754, + 0.10256211900515254, + 0.09294450981164704, + 0.04335693816642883, + -0.1584119652674452, + 0.1114129146749343, + 0.028291428986401457, + 0.18025751207852425, + -0.012333885768331991, + -0.029018942828683694, + -0.03535838493536815, + -0.04433313501731867, + 0.07648431800500904, + 0.11977359062584277, + -0.24037655053243645, + -0.026230304123280986, + -0.031394855533618364, + 0.1539874018456888, + 0.09159285680262864, + -0.0388990115944376, + -0.10018115858766562, + 0.18620201507044742, + 0.15733264455553175, + 0.10218985814327575, + -0.07336459319236868, + 0.03999374484189342, + -0.06252307858350493, + -0.22211251217941658, + -0.055674439182734514, + 0.12411512220663333, + 0.041291069241964254, + -0.040525239684158436, + -0.09069370061087448, + 0.0482983626650511, + -0.07215185627458162, + -0.15556144391116788, + 0.06612770008145567, + 0.07342371246496486, + -0.10427908982459054, + 0.019119164196248303, + -0.17147091206516463, + -0.1871073354457868, + -0.045857375025948534, + -0.012424817835225817, + -0.03454463230315098, + 0.19623550362311165, + 0.05694736392232297, + -0.0818555945907939, + -0.13396031178549136, + -0.07176818068641548, + 0.11040308943366073, + -0.011025627866592993, + 0.2909266973429721, + 0.0630340769446115, + 0.1480779726787392, + -0.22026535458387875, + 0.17338952465231364, + -0.04564216995202193, + 0.10475149327917149, + -0.041542902187197986, + -0.18120861209147965, + -0.1011326169738275 + ], + [ + 0.18744526012252555, + 0.009329033167578204, + -0.024136844656151134, + -0.13407849515157577, + 0.17799666938908898, + 0.05396033294670776, + 0.1676942981231647, + -0.015226963873620297, + 0.01821975704921004, + 0.17564018941933035, + -0.029830183439319438, + 0.12366815172146502, + -0.08538725622512101, + 0.010819031805189056, + -0.05466597665279371, + 0.10272043534580033, + 0.09328836215037889, + 0.11859318361764003, + -0.0015628692559674342, + 0.12792945178204548, + 0.07750808113977624, + -0.06854127316103463, + 0.08314488456552221, + 0.06331690618059595, + 0.14400948190152027, + -0.09862632210641376, + 0.06404311963404434, + 0.036177279990727514, + 0.10814592472997867, + 0.15341005379387243, + 0.05329766385280023, + 0.05802994595706497, + 0.053790959234321124, + -0.03000417414454333, + 0.05090650917936882, + -0.03780998261853977, + 0.11114014459754895, + 0.047583055708643365, + -0.11878585518302796, + -0.02045126251277741, + -0.07395044888002669, + -0.047469639295699834, + 0.010537277007538084, + 0.06508821714800332, + 0.044142691986852244, + -0.10608860358911552, + -0.0005825876304023055, + 0.03130372880438932, + -0.012984395615308226, + -0.0005022273476216622, + -0.042685092987878495, + 0.015288262106320078, + 0.11619583435051724, + 0.07268021341586671, + -0.10859575705479226, + 0.14342735919150054, + 0.07401589521199912, + 0.17257256328650453, + 0.1021461606782183, + 0.0399611927163412, + 0.024853493287666884, + 0.11580288655604767, + -0.03473269950694908, + 0.06426464492731092 + ], + [ + 0.14210499927026873, + 0.06789193823071397, + 0.07919500772443477, + 0.16103971123078323, + 0.01865116756208276, + -0.045138734558771355, + -0.09253833257878857, + 0.01593922158302075, + -0.09330291526484569, + 0.001221911796932859, + -0.04161958174105751, + -0.04651824195484941, + 0.1326463769739291, + -0.02957577845387604, + -0.07672591838797671, + 0.12239064388158497, + 0.13349635202286275, + -0.04326572595706771, + 0.1269475645363495, + 0.11696157857351118, + -0.10574132837930511, + -0.27516179162384596, + 0.007347162959564237, + -0.043717055669231036, + -0.00626759397186715, + 0.11057089041512425, + -0.014162816008021356, + -0.14652863148187556, + -0.09122706442222293, + -0.011579735822680112, + 1.787214337354622e-05, + 0.023773130584846505, + -0.04360355361174226, + -0.08879925393597815, + 0.23462470532659416, + 0.23124047514369606, + -0.020954918382341335, + -0.020039051407188486, + 0.04071029639303051, + 0.0278486992500881, + 0.04565176340803077, + -0.024957284331621307, + 0.09403249877680286, + -0.08183216615965959, + 0.05369599434887561, + -0.009957160976138735, + 0.10157652737014328, + 0.050462567625164594, + -0.05149782792245964, + 0.06601008734831572, + 0.048790504990276484, + -0.11476363271368151, + 0.055432718360939694, + 0.12653640581478015, + 0.02327954517800684, + -0.11984795620210718, + 0.10514915574578701, + -0.037775750837109906, + 0.13446641040994817, + 0.12603801789183197, + -0.012555568946419389, + -0.0559609359218865, + -0.13591644466457878, + 0.002821190846285128 + ], + [ + 0.000213865571778401, + -0.0008128561106652881, + -0.09132924515030728, + -0.012885724603111375, + 0.13795068700330115, + 0.11167508685491204, + 0.044881513210793644, + -0.048896353041543335, + 0.037379551294984194, + -0.0230808606100407, + -0.0009300879669786289, + -0.16111582574428715, + -0.05933074980366731, + -0.04140214353417529, + 0.007078371167739406, + -0.0857225104565393, + -0.06043189391514381, + -0.07258046298516205, + 0.02142465309536356, + 0.18467921085004846, + 0.16812827203934438, + -0.15805415880993862, + 0.05793502701506802, + 0.000726252175272734, + 0.04982388900478088, + -0.10526357234376621, + -0.028454733239204277, + -0.15257343436571683, + 0.03547155494073025, + -0.005380270972067863, + -0.05144369282444427, + 0.1365493014955368, + -0.027963453608229296, + 0.14067913062255152, + -0.08787410702276499, + -0.09173494375614932, + 0.15178685089010374, + -0.08078348866924506, + -0.03941375147086434, + 0.00415698595575635, + 0.08093443170691154, + 0.06144320599457495, + 0.11534641321209388, + -0.018195475310062128, + -0.0008410512495608038, + -0.05224934151197174, + 0.052518273790159, + -0.0539995391957118, + 0.1211597313460978, + 0.04213234133819904, + 0.1825660175651738, + -0.06434568032620532, + 0.03007270511344326, + -0.1959874267680565, + -0.09039755259261995, + -0.1897478004464715, + -0.0506905323078477, + -0.20251776519590697, + 0.029502337600321213, + -0.12256274917227977, + 0.18712618165686523, + -0.03406114055291753, + -0.06160806996072574, + 0.0005748814105381001 + ], + [ + 0.07360720475349596, + 0.02603243103931461, + 0.10172385410024337, + -0.026096724099687264, + 0.13332117162055382, + -0.2007926582482995, + 0.1106355542020099, + -0.04215798258349021, + 0.19998024397352282, + 0.0764758064946043, + -0.17753134377362784, + -0.005468443097218157, + 0.07848677120632876, + -0.00032484778481562033, + -0.09296829803634876, + 0.1162109141130262, + -0.04151872670686154, + -0.23241817135468776, + 0.09208140312411373, + -0.029895010536484152, + 0.09226887344754404, + 0.061700550961934914, + -0.029858614997317373, + 0.08790642052331518, + -0.042533318602251645, + 0.12421014011282427, + 0.01993995763706291, + 0.040089026057753774, + -0.13662040217467128, + 0.12058072792270194, + -0.10390695445404288, + 0.12282017116072211, + -0.16122946143194483, + 0.20096766736489846, + -0.11978708354040446, + -0.213788273467305, + -0.0004398694648825569, + -0.06049511277439506, + 0.07481442271682175, + -0.15531647462762482, + 0.1492487043598237, + -0.03279039187537947, + 0.22555656875644403, + 0.08067678856236989, + -0.0033546808965751298, + -0.12172372840042056, + -0.056346389223273265, + 0.030733778251127483, + 0.09911325835100374, + -0.005523447467349323, + -0.16605111166959327, + 0.10374482248268756, + 0.07280049119908345, + -0.01044073943205752, + -0.2455334669391303, + 0.13371485255808135, + -0.02059380783500855, + 0.024295129133334335, + 0.0707131477446481, + -0.15469353216247145, + -0.03887486136738232, + 0.01638621145158569, + 0.09551534492091204, + -0.03510777619353481 + ], + [ + 0.08701543371496466, + 0.028772773349389342, + -0.12450640814314017, + 0.037662988549674564, + -0.16017555125784555, + -0.013393614823262743, + 0.033338590618087686, + -0.015859551285079224, + 0.08811407560966078, + -0.08246109374727612, + -0.021542478866347355, + 0.019973145627462413, + -0.041186062806172395, + 0.2494314701030696, + 0.03533772553859042, + -0.006206721214527904, + -0.0058591372792385, + -0.26036735965139773, + 0.15226115257085623, + -0.06629111003206944, + -0.014492532079192738, + 0.06981650814172806, + 0.039435439974949596, + -0.18625546222279252, + 0.17903028803885332, + 0.11883031052928626, + -0.011794961970914501, + 0.010226343495330588, + -0.061862211260512924, + 0.005350487900668469, + 0.13812200867005978, + -0.02993677996346939, + 0.3055347561915773, + -0.04018433473968713, + -0.04946810553099269, + -0.10390470678732827, + 0.0671758632916011, + -0.03866251364368171, + -0.16428925933300645, + -0.04370036686442768, + 0.022999243018906858, + 0.043688399603336724, + -0.010629531922972156, + 0.05342452088440071, + -0.01040123137294158, + -0.012289034602172573, + 0.08564689204563085, + -0.06288141037895405, + -0.08681877947361707, + -0.10996128793324594, + 0.06015116204025128, + -0.0020161610749080687, + 0.13327907183995044, + 0.023442671400877798, + 0.07951693831035819, + 0.12481344496195364, + -0.01288326009469819, + -0.04979115695712269, + -0.06924055849436017, + 0.22654424060093745, + -0.0291007331384323, + 0.021368315985152993, + -0.037163619116764496, + -0.040461794711676866 + ], + [ + -0.12073775031329192, + 0.04444516135439968, + -0.034519033353533284, + -0.026105953342227685, + -0.09791008078739336, + 0.1724240889685575, + 0.03372619425948722, + -0.017974559163930797, + 0.010043495786851302, + 0.006510622975574674, + -0.017810454080622325, + -0.015701476029068965, + 0.03817770774814558, + 0.14051667694031914, + -0.045461165360661776, + -0.007342279102265353, + -0.011034290576913044, + 0.025428086905292593, + 0.00849332497068816, + 0.004593479752141462, + -0.10125662676085108, + -0.04443077658258787, + 0.044332790151764695, + 0.0447178449267355, + 0.044245444994253896, + -0.03164760576634403, + -0.15981167986255157, + -0.20039416920875963, + 0.09780901225267574, + 0.037736598359456336, + 0.06004330237204478, + -0.22161960830387756, + 0.09091743079249873, + -0.064254552406755, + 0.028421856094387188, + -0.005133169345110158, + -0.1715519859325901, + -0.07824246872308284, + -0.10946506624076707, + 0.048316101034209885, + -0.030457862165406996, + 0.08353547165354253, + 0.03822633096657355, + 0.06999040092050565, + 0.0006657735107443792, + -0.046993288596435666, + 0.017006712636365755, + 0.08253986410642365, + 0.10085640864109578, + -0.18278923328284383, + -0.2035125575902136, + -0.11025361434496238, + 0.04146311329936028, + -0.02663953148736264, + 0.06925670054871745, + 0.0360180313337256, + 0.21723965761206313, + -0.011567150541509209, + -0.07331457314873356, + -0.03743609541140443, + 0.13121571600107623, + 0.06501715960131772, + 0.09275610070106903, + -0.0277220373093463 + ], + [ + -0.13544940401085678, + 0.08189049914345013, + -0.15152587013285268, + -0.04533858686677598, + -0.16969135297165958, + 0.03673667196193301, + 0.006707911393042214, + -0.014098419699205073, + 0.03954217178100072, + -0.13465172288778054, + 0.061337011260887475, + 0.03936605287457434, + 0.1323903421694615, + 0.033259453863656994, + -0.04947084538005964, + 0.028563998569672885, + -0.047375169730526336, + -0.08536995133043779, + -0.20482439825703033, + -0.04489529509584183, + -0.08263525195034932, + 0.04600051155063543, + 0.13153631599876212, + -0.10846331541780968, + -0.10516081001175455, + -0.05673251790907592, + -0.01884670617888638, + 0.05790307081733496, + 0.04974634632333078, + 0.10618856343267867, + -0.16648502093917364, + 0.1647584566038588, + -0.23592846887427887, + -0.005189408746520824, + 0.21063946599302388, + -0.07816664487146585, + -0.008619152037657634, + -0.012891381003917686, + 0.05633460876385293, + -0.06846782095767594, + 0.020161751780815234, + 0.020153414495419405, + 0.03671247944635341, + -0.04466259457878775, + -0.056035283386074525, + -0.035709613423036246, + -0.024741318797435217, + 0.036238395822449775, + 0.07287620845193674, + 0.10333922029115557, + 0.019463607548682316, + 0.022837052271082004, + 0.17255046895325263, + 0.07474019383127999, + 0.0922443508283938, + 0.09099612875661801, + 0.25144168539882017, + 0.004232138436903825, + 0.051440348058891694, + 0.20704619634361815, + -0.08987041509548865, + -0.10522367388504082, + 0.16120440846349904, + -0.13672046717266906 + ], + [ + -0.11895151760825494, + 0.10237223509141131, + -0.0660646478006584, + -0.061112303573812136, + 0.18277897784000902, + 0.05396445501527759, + -0.038511972119669544, + 0.07790834886684045, + -0.02628660331502533, + -0.15470311696241484, + 0.06469890101157168, + -0.028554497529512165, + -0.10808446638260663, + -0.016890108246214886, + 0.046792164992680074, + 0.09387048688571296, + 0.08686451877185941, + -0.002647368875315906, + 0.1362184575182744, + -0.03881434658649053, + 0.08315931102592322, + 0.2302097069478736, + -0.13246078698345326, + 0.15447055223082262, + 0.0606725800172407, + 0.037647415517629595, + -0.04821362432542156, + -0.08132600787007942, + -0.057145316179753027, + -0.20719645823614577, + -0.02393835625971974, + 0.06622595920858557, + -0.1195757865258743, + -0.0203763419542619, + 0.011547069117872266, + -0.05252912665550984, + 0.11468742531513243, + -0.02347956316715228, + -0.05950572085682278, + -0.141214606104016, + 0.1584261481380027, + 0.05799597774589508, + 0.016449805052410813, + -0.05331525337527966, + -0.16998547683016263, + -0.04793824330735866, + -0.10107625907306589, + -0.05186228751138831, + -0.1883806431231645, + -0.07956173159912752, + 0.11413388012519132, + -0.10630301901647261, + 0.16175481610546943, + -0.0060823374653032, + 0.04269861594351897, + -0.125047064388793, + 0.01828304204018051, + 0.0630284618760815, + -0.09022907902255728, + -0.03235504735816881, + -0.02662360052727818, + 0.07039739027783407, + -0.11469500381711635, + -0.04553523304272894 + ], + [ + -0.079562968130832, + 0.019259390314078757, + -0.15968979404519795, + 0.2405571883960958, + -0.05726864747951003, + -0.03991520161421003, + 0.01134076552510994, + 0.007210588613339248, + -0.006859578205626174, + 0.08794244408552639, + -0.0750612765293293, + -0.046357935864874626, + -0.1279832713652768, + 0.1616906581329851, + -0.10864329308095427, + 0.0671593261065244, + -0.032262521322210025, + 0.09992245433189895, + -0.09657445666334563, + -0.1623656122377524, + 0.05438494226756522, + -0.027703754218662408, + 0.13497701251205993, + 0.15123768102602425, + -0.05273946524031731, + 0.22253696031880654, + -0.08279221233985823, + -0.07744624832552702, + -0.08176863367217466, + 0.08196475191079484, + -0.22169417859561397, + -0.01854588037667791, + -0.041594579308857765, + -0.15609148495805739, + 0.0042912146618768994, + 0.09313209093038177, + 0.059888446185363146, + -0.041333961791643066, + -0.13440440313732238, + -0.11646684515550117, + 0.17371038407498052, + -0.11628141108122125, + 0.11081867501404281, + 0.03862130564908323, + 0.08457024102978083, + 0.09098805858108523, + -0.0004059180104989468, + -0.022728522831484844, + 0.03217629704322563, + -0.05792023490086713, + 0.133396213730185, + -0.03959282508302781, + 0.008754895554294755, + -0.06437992067372077, + 0.08818204261183091, + 0.07274619760397927, + 0.005327582930223426, + -0.04628283260188967, + -0.036674168568882254, + -0.11125373714025483, + 0.051829806638974865, + -0.052772742955500065, + 0.03224475019890099, + -0.09161635013255481 + ], + [ + -0.0013556597552486869, + 0.015247320325969402, + -0.04138249929847145, + 0.06118692271524965, + 0.07445727878652188, + -0.030205555802960894, + -0.13925615935303284, + 0.10042500969117446, + 0.06511092827374242, + 0.1768363791106394, + -0.028145042267981313, + 0.009622835845673033, + 0.13813355283030224, + 0.05589618290956079, + -0.054293224447524005, + -0.051131460736747375, + -0.01205390479419307, + 0.09923053061285661, + -0.013551371972672373, + -0.22073099700666354, + 0.05572513136783881, + -0.07465291416693495, + 0.2628689551591258, + -0.11285983264834294, + 0.08154690215560095, + 0.00866344341782314, + 0.029525460718269864, + -0.06301073988952398, + -0.04036546628106488, + 0.14480896037620963, + -0.09790268583124412, + -0.009550639493899301, + 0.09047192446761128, + -0.0842506473804965, + -0.08301097900443866, + 0.1232680206109512, + -0.021289136996704067, + 0.12802581319036727, + -0.04395650287866765, + -0.0020117757327947593, + -0.24042059037737024, + -0.052756723177200454, + -0.15064110682470308, + -0.12718667174659434, + -0.01251479963094953, + -0.13273618762890657, + -0.1847465699603625, + 0.10828529708609354, + 0.10862258297630221, + 0.20953300904378294, + -0.15657883816883822, + -0.038078100911826764, + -0.07457609903774286, + -0.3128737130480108, + -0.01940247889360754, + -0.014084840349738437, + -0.10235516490613501, + 0.04543137685030047, + 0.03873952120669598, + 0.1470455194011693, + 0.06148784654557643, + 0.0459827300078893, + -0.1615374215890076, + -0.11565926420500026 + ], + [ + 0.002022282837735634, + -0.07284696502562053, + 0.09344097141879958, + -0.10770231559218522, + -0.010145961756667215, + -0.08979470684872293, + -0.04494011454627109, + 0.0645676861226047, + 0.013743442154905906, + 0.12110514410123958, + -0.035910758152303136, + -0.02711923556517918, + -0.09789790102111647, + 0.1560016990350539, + 0.02970935136460974, + 0.08727735048187181, + -0.018075161619396922, + 0.12415970835942461, + 0.025684420974146735, + -0.07663319522863665, + 0.05325351603639189, + 0.05914385633537982, + -0.13069664438201997, + 0.007869883057227042, + -0.2785909583842322, + 0.011618960847435323, + 0.06812729035531255, + 0.05053441116909625, + 0.12584392594059457, + -0.06392428345923669, + -0.011783361560252711, + 0.008222792564622525, + -0.07459413857230335, + 0.15005920612857937, + 0.14601137632944067, + -0.0494716511799114, + 0.14109627796565957, + 0.08763659337598417, + 0.012103998334728236, + -0.1377319785149099, + 0.18179015223639627, + 0.20282915636167087, + -0.049090494860839703, + 0.08371387671318488, + 0.10040763120447667, + 0.08227725318276054, + -0.14515144116178477, + 0.13498956456048897, + 0.1496468302543503, + -0.017005285581232054, + -0.08359881827266984, + -0.09443329476833462, + 0.13959980234909786, + -0.13142707259712527, + 0.06525437141057677, + 0.08968808579773425, + 0.01828607653952383, + -0.05927095892938653, + -0.04221893603302568, + -0.15736159747317485, + 0.06793111287233232, + -0.04421503921523118, + 0.006468307123077371, + 0.106501387235055 + ], + [ + 0.05230420916714214, + -0.06085509766552624, + -0.12731225137493848, + 0.0020147204750991412, + 0.10516447493334698, + -0.09080272634221254, + 0.082603150618739, + -0.005773930800095001, + 0.0025950842137015626, + 0.22885928522588653, + 0.23979243292500066, + -0.12008827303748418, + -0.18172704206662882, + 0.111906433283896, + 0.0789333261519108, + 0.0521251482935481, + 0.0894611023531917, + -0.05968533819306267, + 0.051253439181921524, + -0.013501709812651252, + 0.08561435010455219, + 0.08913139510906827, + -0.0497497287263773, + -0.03255698597557681, + 0.047685923100317745, + 0.2118457345483356, + 0.0835641721660152, + -0.12319162789765055, + -0.024029281742312975, + 0.012534545986070261, + 0.11550300529062694, + -0.09555161729518508, + 0.14080540535182734, + 0.01733033029840652, + -0.15379252681804254, + -0.1220799404433442, + 0.2649234962110588, + 0.08388225091950785, + -0.09587469532020612, + -0.2660033213909122, + 0.07937939571692039, + 0.049377013128808205, + 0.15075980995912067, + -0.07405156503513313, + 0.13812751905312806, + -0.051379080845390494, + 0.01709365895406279, + -0.11486167695258852, + -0.01720734138975689, + -0.046695466967348026, + 0.1631935869264495, + -0.09099187474923849, + 0.11871779847290348, + -0.0141219648637253, + 0.06739669433310064, + -0.004709325456588427, + -0.17544641752884216, + 0.020156847766334442, + 0.11763882528880654, + 0.11572365400446892, + 0.0011291868581265352, + -0.07487310866260856, + -0.14922534762091547, + 0.06350251931195652 + ], + [ + -0.11552628516973572, + -0.09024307247340504, + 0.07586167602397807, + -0.02819492503954539, + -0.0006573039453974484, + -0.08495059957298037, + -0.13341150287963796, + 0.028713447675914928, + -0.06335399383493591, + -0.08137125019541144, + 0.1247042571114223, + 0.03075819250736931, + 0.02640136947560729, + -0.02990027895556598, + -0.07007479464061256, + 0.007946818127609693, + -0.12070031720406625, + 0.14794876395651718, + -0.027845715697002227, + -0.1509793190160701, + -0.11247981524678384, + -0.009042361159646432, + 0.010988275434360463, + 0.054101202131769714, + 0.02838618198862383, + -0.061484211420603264, + 0.23283077154418455, + -0.019471259125759803, + 0.04322445461070431, + 0.07890333524001752, + 0.00546543206863712, + -0.043986823420797995, + -0.0484227491143221, + 0.04359204660211016, + -0.12614411062066275, + 0.08183595948496153, + 0.06439621117283972, + 0.1647935036713592, + 0.04145389445587494, + -0.05070679731727634, + 0.003618695737909053, + -0.10404625472033453, + -0.004249256839393514, + -0.06449085387419298, + 0.06698773725550088, + 0.01991598985328706, + 0.1856209785885578, + -0.044096762068998555, + -0.15388103763173944, + 0.11621378425438299, + 0.0814025860014837, + 0.0361295006027792, + -0.03785922646475667, + 0.04652686464976096, + 0.02444236105001109, + 0.1043384670394654, + 0.16827484547103652, + -0.1471628143567063, + -0.21855828457524692, + 0.08091388199144062, + -0.07499036308807279, + -0.0020183865297407704, + 0.1051359735835636, + 0.033593871842502634 + ], + [ + -0.0018542868302779505, + 0.11317928737408661, + -0.04954276732632704, + -0.016118854851118587, + 0.017909319429159284, + 0.03544921250192086, + -0.12171575060677253, + -0.04855265266546017, + -0.045455929609929564, + -0.15289131355393304, + -0.0027211634338535386, + -0.03654972358462836, + -0.16403208619824838, + 0.10065857023116778, + -0.034773510958342385, + -0.06211241595679489, + -0.056218962086331314, + -0.18477248089950038, + -0.06576128476854413, + 0.1393574265453675, + 0.14412483782287144, + 0.04402924166342018, + 0.07846997093231856, + 0.029684107342345487, + -0.033688345335219576, + 0.0070189659131643725, + -0.053571498164165766, + 0.13594335442023378, + -0.08010314794974119, + -0.08966763492975223, + 0.05435360429316243, + 0.0122794050834349, + 0.020128369522833242, + -0.016777384482787046, + 0.03370813079216122, + 0.06613436982553317, + -0.03394925462043721, + 0.00046722985230002536, + -0.018458677303103438, + -0.01632967960267604, + -0.1308182687272785, + -0.10709565074867984, + -0.07900840656977788, + -0.011052668407349971, + -0.16229551895433247, + -0.012308759604344001, + -0.0777769865256176, + 0.0031083492636898966, + 0.051242920942997185, + 0.017763465610813045, + -0.11559382077992802, + 0.12397081999780823, + -0.018118127639440124, + 0.16719799102068789, + -0.1416220437625519, + 0.030006016139644317, + -0.106438600236279, + -0.024354612271024097, + -0.07122208868367655, + -0.07164120207360646, + 0.051870648564475576, + -0.0027577382907524334, + 0.08510547498287119, + -0.07446944605852983 + ], + [ + -0.015363433491541343, + 0.012151715745142441, + -0.2186075159838038, + -0.03650731718491017, + 0.11730949148514468, + -0.23460698775083388, + -0.07398550053628956, + -0.06710196755849054, + 0.033495778736767116, + -0.081209557699742, + -0.08874636293083571, + -0.0173906545807092, + -0.03418347882449085, + -0.054578570341312964, + -0.09509879090562409, + 0.04224021377506231, + 0.0013455138790020528, + -0.11587791148415919, + 0.20546215175472035, + 0.005718437021620443, + 0.027841123345401227, + 0.007355077076643473, + -0.04028234907788408, + 0.13443938416222043, + 0.14348779730734645, + -0.005101755605379951, + 0.04364228819062789, + -0.02750758575128642, + -0.02972598871905299, + 0.007986821165331656, + -0.12503339704888347, + -0.0343315032388534, + 0.08246032927695708, + 0.11230523938754883, + 0.05126171998702679, + 0.05994405983015716, + -0.018777643078701847, + 0.042079130096365575, + 0.02408339746625969, + 0.06527445201537141, + 0.007392953615139138, + -0.06296646300389447, + 0.021285802885774308, + 0.1733745596202988, + -0.022507378088758176, + 0.10325227443393087, + -0.06781377331968261, + -0.19087831997607155, + 0.10646872408998678, + 0.08629238675042142, + -0.02863211362190506, + -0.007076917257877508, + 0.09711716856080228, + -0.007386732603183155, + 0.1509438909920581, + -0.032325602143694114, + -0.034323390839440214, + 0.09660997317815392, + 0.17926970612124274, + 0.1104383670307083, + -0.0028739278798749074, + -0.08734033679433431, + 0.0029996444882633387, + 0.019055779051318122 + ], + [ + 0.10027561543014588, + 0.04725996433904001, + -0.021499926913049718, + 0.13122716804300708, + -0.1954273976680328, + -0.050383308934138386, + 0.06021499305101485, + 0.025557707272193787, + -0.19912262193274685, + -0.08781032007455115, + 0.04180742802035928, + -0.0033578566628393192, + 0.03616014911784753, + 0.08110102013022533, + -0.1386211921147806, + 0.03112616747043161, + -0.06334822699909927, + 0.029940587855825037, + 0.07179992332776876, + 0.05355739110319912, + 0.036931136650233426, + -0.09005016257955502, + -0.08842940722164112, + -0.043629504605595816, + -0.0574760809393567, + 0.03794490843023787, + 0.010182723147450556, + -0.05315042551163285, + -0.07250774167342595, + -0.12082003131403135, + 0.10002713435232642, + 0.031174547038859246, + -0.12388082521874318, + -0.06795418147077409, + -0.05361531509439791, + 0.07457951478572296, + 0.15751594674609137, + 0.08742090494034327, + 0.05781251609338607, + 0.09752586713246672, + -0.17009159085206663, + 0.016393104709439263, + 0.012042439464422058, + 0.08622742623797153, + 0.10471607844932562, + -0.0049842894677047285, + -0.1439425690775705, + 0.10423588658746603, + -0.009982118339712756, + -0.035504911117330736, + 0.1336390063360068, + -0.0006627431943632025, + 0.06044215888116694, + -0.20025618973859413, + -0.005764185251605479, + -0.0984177140930616, + 0.10015562291475344, + -0.03613008943489962, + -0.04812805067086359, + 0.008411113170998045, + 0.10647238051621798, + -0.01853680308504404, + -0.19719199855104197, + 0.05461854807157155 + ], + [ + -0.05856528293173577, + -0.022851831169976192, + 0.08877726204697575, + -0.08399363216263867, + 0.05262155001605996, + 0.045296324699119345, + 0.0817326376566789, + 0.04802933246683863, + -0.16417714941823208, + 0.10932032089506083, + 0.10500548662176652, + -0.006121469830662467, + 0.13542457322958895, + -0.09080007195189455, + 0.12029647493756251, + 0.10999230204668992, + -0.07855982022035264, + -0.03544548191945337, + -0.07823868499865462, + 0.062326548756861104, + -0.11910025739798893, + -0.13479508239835636, + 0.2868507073241333, + 0.01005033111102243, + 0.13016608683409844, + 0.03536729669661941, + 0.09008793662965486, + -0.009105864747374674, + -0.02508417868264272, + 0.05555596514867087, + -0.20450096874238716, + 0.1731033927010026, + 0.13917403304549303, + 0.04886035436723406, + 0.05881293278486599, + 0.02308477529310037, + 0.15207846476648756, + -0.09079138992484893, + -0.04140896074756314, + 0.05514594945814645, + -0.1642096620332597, + 0.019778836968312508, + -0.024883641632539925, + 0.02521186250648824, + 0.04922388480518557, + 0.006160937741200023, + 0.10631029356250901, + -0.22348644448364696, + 0.16522927026658052, + 0.11456641636199312, + 0.061700986571386895, + -0.028546897019487517, + -0.03142728753111176, + -0.1322950985194872, + -0.1475810899798055, + 0.06896462261196, + -0.03127058495475844, + 0.09651236786050055, + -0.05823629319493108, + 0.10143400224342874, + -0.043807273212872144, + -0.07927955655960751, + -0.02238892459830106, + 0.09874201275251526 + ], + [ + -0.12427334296541107, + 0.14082468161717585, + 0.1520163492176506, + -0.0025985179072520216, + -0.06452606629155465, + -0.14625427521042947, + 0.19168747882769394, + -0.00421792467443594, + 0.21226410804117513, + -0.10837497359024728, + -0.09099004632854105, + 0.05821994540945841, + -0.01502437757419453, + 0.03492621471251763, + 0.05084960220213818, + 0.1690498417015362, + 0.14537983358551426, + 0.0692363790048359, + 0.09358045915758796, + -0.23776592832596888, + -0.09706150723853559, + 0.07621107380149506, + -0.0698252510744533, + -0.004889699073904637, + 0.03045674094592282, + -0.028063369310941323, + 0.04243962947803348, + -0.03191809863399523, + -0.09517486597033763, + -0.08229968487698738, + 0.04028997611446053, + 0.12380617133075017, + 0.1857717412887025, + -0.005968544448616352, + -0.01700953247609766, + -0.1468876413326948, + -0.1193914169951174, + -0.17064788406404122, + 0.20858595767765112, + -0.008224594728876359, + -0.056402877843425285, + 0.07156125367876336, + -0.05677680401074036, + 0.010909959490750326, + -0.1550098581126962, + 0.14963120133752456, + 0.16458508437830227, + -0.05150764464670583, + 0.003109809375185824, + -0.0038608468173043455, + -0.041440856735258325, + 0.03596984437644556, + -0.21346106015591643, + 0.08472954984762682, + -0.010582942489732164, + -0.0035353649948184026, + -0.15022926047403326, + 0.026441880065393816, + 0.020914266947423717, + 0.17086205152756215, + 0.09294862398480294, + 0.08230933460471104, + 0.025146206936162364, + -0.07689418403146964 + ], + [ + 0.016332688998878565, + 0.04864504899725481, + 0.1539079734988239, + -0.015523726189452122, + 0.10511362588719518, + -0.0643877523082849, + -0.07054958930444846, + -0.002189455219164513, + 0.12436673325807518, + 0.06370236400088225, + -0.017731019945594406, + -0.0866055396586497, + 0.04129213167720719, + 0.10041429825842806, + -0.09868819903321582, + -0.12457472605735716, + 0.012784940418998603, + 0.0073663729763368165, + 0.009247380870648324, + -0.0251678413772137, + 0.18436432444835704, + -0.05013339271251698, + 0.06141388468444976, + -0.14954645214255707, + -0.032747758647525375, + -0.009362095463497233, + -0.048087747206348085, + -0.018517202337461024, + -0.07027037777130606, + 0.23652145619007148, + -0.04217635729299141, + 0.10535516033029342, + -0.10862939601433355, + 0.11421103833870405, + -0.11429987572877849, + 0.17415312745627465, + -0.054412554144630726, + -0.003924775599897424, + 0.0635891644230108, + 0.04628446348692422, + 0.01098262136390104, + -0.14038206213111803, + -0.08593703929342471, + -0.0795030847109313, + -0.03668365057419589, + -0.09176132049769388, + -0.019307783321173992, + 0.09753601095378331, + -0.043658084011905296, + -0.08745875850043766, + -0.023363589641862165, + -0.014152300674506466, + 0.010268471845719614, + -0.01718244280451204, + 0.10603673739390324, + -0.048297303449455625, + -0.14020598806251625, + -0.04226731469477223, + 0.18405853860468524, + 0.01196007213009015, + -0.09406629943756595, + -0.04632409131746848, + 0.07273979649420635, + 0.01059931534239342 + ], + [ + 0.07802648356138646, + -0.0007470387819655702, + 0.03353583215016647, + 0.2107428272228336, + -0.050698689609259634, + -0.02979930900811585, + -0.1354774808506315, + -0.05206124990276112, + -0.0546032471041515, + 0.04850430804512046, + 0.03389728227163976, + -0.06857227781849427, + -0.062184771475590844, + 0.056962924570348066, + -0.11800668193409565, + 0.03286810525128455, + -0.01265919020093758, + 0.15194663521951782, + -0.13350311424202707, + -0.12984360123324742, + -0.1155404216714078, + 0.2641484216503253, + 0.08968235014097431, + -0.06263293514245162, + 0.0537886810771409, + -0.06233039897343798, + 0.08137704768184047, + 0.040488692196246075, + 0.04252623097952522, + 0.07008385887756434, + -0.013527381398748081, + -0.03272835603255805, + 0.16777435171193264, + 0.02643216812052109, + 0.04415476019278967, + -0.03154690745155521, + -0.04511927709085062, + -0.07232087067135343, + -0.11737552298533085, + 0.09067968154658691, + -0.06487582314897758, + 0.10669383598206064, + 0.009153016725872263, + 0.1261326398689513, + 0.26916957157596233, + 0.07902928051226606, + -0.1229181297107339, + -0.03606293916501369, + 0.014132647925683512, + -0.07170103254991948, + -0.15218941033256195, + 0.02355377672802723, + 0.015149299827420193, + -0.01941452064535848, + -0.07912248191312435, + -0.04444875862401214, + -0.05374038831915097, + -0.02841304773399412, + 0.02458503224410445, + 0.07619480365088412, + 0.010030453005155463, + 0.043714426333049894, + 0.04872880588343222, + 0.08004273947001136 + ], + [ + -0.03260242703754865, + -0.0730523482393468, + 0.028978539091147427, + 0.06105162104420784, + -0.008596637672582806, + -0.07864840546671785, + -0.012025559631110733, + 0.008747737961438828, + 0.01545808942512214, + 0.026973958231747298, + 0.032758064783963, + -0.10122999277691146, + -0.15953569849824983, + 0.05073555894038845, + 0.03519821565480652, + 0.18851130173480046, + -0.011099943770157277, + -0.04143547235080126, + 0.025767670344996847, + 0.14191804223843166, + 0.2058548857140132, + 0.17035986013130894, + 0.034246467132070815, + -0.0898395946406508, + -0.05222638506219629, + 0.037781461447574466, + -0.17099821203659027, + -0.0037155970312239984, + 0.1036326470256692, + 0.004497560498051658, + -0.1953085892145302, + -0.013633695559893029, + 0.038369907897632755, + 0.08734765729704207, + -0.046442036034807115, + -0.007956150654125875, + -0.10697007976592526, + 0.07672827956829689, + 0.0300540520552064, + -0.10304784530295186, + -0.03259107896974288, + -0.017938602373864607, + -0.04163029960046851, + -0.06059449326220006, + 0.07416873074810451, + -0.15472016564914792, + -0.17701537328109054, + 0.12109134480885682, + 0.14044119861533974, + 0.07579378937763243, + 0.14467095105527647, + 0.03354953145111227, + 0.06770481773296376, + 0.052640918172176754, + 0.19434129167243502, + -0.016737585984842537, + 0.048463383916923834, + 0.04005096630235369, + -0.04522138567888362, + 0.022610811535045572, + -0.15470792570775807, + 0.035649741121735794, + 0.04891572971100233, + 0.10336217992408914 + ], + [ + -0.0007787435467110282, + -0.055988335216787914, + -0.18083917243922645, + 0.09797235677046334, + -0.015397109531297094, + 0.00017150213824594095, + 0.07230169218175378, + -0.14458206212118843, + -0.006446731285161909, + 0.11216159225817497, + -0.0016772952317002166, + 0.08630901882314077, + 0.0345010889885428, + -0.030353348500224225, + -0.02906561782437786, + -0.06538622392765236, + 0.04976166531865359, + -0.029699279739881953, + 0.04208905889661946, + 0.06580760390025996, + -0.04143580326024335, + 0.09237615187843684, + -0.03775790642524557, + 0.21846047034174637, + 0.08735665783641958, + -0.11024591933868544, + 0.05750856711621293, + 0.13156350195689004, + -0.003028016339308234, + -0.011809799725549734, + 0.09181309159971196, + 0.07441340594935739, + 0.12653553220650357, + 0.13459328496780662, + 0.020370968016533625, + -0.17350828827361273, + 0.10132051794719676, + 0.13948828854640255, + 0.14006462537408482, + 0.10820580231570001, + -0.060231215099331714, + -0.028307128003200323, + 0.04041112598344779, + 0.13986261405767014, + -0.07987868399120748, + -0.03507034905276705, + 0.046125267069667075, + -0.06008838968102103, + -0.002722620175965121, + -0.08556623982729994, + 0.07082749498394163, + 0.03702361708500551, + -0.021760474421550074, + -0.05631610999747752, + 0.15771902090594517, + -0.008053348833121678, + 0.059743143556045375, + 0.02528958620236195, + -0.11658766829631527, + 0.007773562137004946, + -0.07322449688480412, + -0.10437122262156595, + 0.2075442424388656, + 0.09422202589373888 + ], + [ + 0.017407196669573723, + 0.14428597715336225, + -0.14277246069055685, + -0.12680930863095677, + -0.0671460137126397, + -0.1129105488580329, + -0.02960851805860304, + 0.026904258863064162, + -0.01682257963026801, + 0.17718773638403965, + -0.0452705447069915, + 0.14219676663798794, + 0.18901523650897673, + 0.02965917529694855, + 0.029615723005684887, + 0.07036494529138844, + 0.1386823954015568, + 0.11765339012567227, + -0.0735660262048294, + 0.11206381391304915, + 0.06586223577789321, + -0.03845077905391284, + 0.09126284491297926, + 0.0061495389846498785, + -0.016924825115546376, + 0.06954449141806336, + -0.04700341643699303, + 0.075806351145559, + -0.14664365680818733, + 0.06072968072144448, + 0.18973778877996816, + 0.07570764105747634, + -0.03374846671953193, + -0.026679479031447545, + -0.11147748911060025, + -0.03715289200996486, + -0.12640872245444143, + 0.07563698574874334, + -0.12865645869453124, + 0.07748643671454117, + -0.20265754363676663, + 0.061634513273773665, + 0.0925596274681816, + -0.049981613094295774, + 0.027316250447428293, + 0.17908000269816113, + -0.06375481490718331, + 0.11056474103834434, + 0.06910091540785886, + 0.24752258582352413, + -0.09689019168850871, + -0.012601545327256283, + -0.21463473149952716, + 0.06937990346416864, + -0.01321298495145738, + -0.06832261593622552, + 0.0679954186650804, + 0.04316497113930163, + -0.03505367306712628, + 0.09670775308635143, + -0.16620696664849607, + -0.11672679225531019, + -0.14884266317426892, + -0.10967082931683098 + ], + [ + -0.012868175745399236, + 0.09771988822378427, + 0.127854294748705, + -0.1737131364679436, + -0.0819608440035871, + 0.030975911180119886, + 0.09014235042198754, + -0.020142525019971436, + -0.017991630634254307, + 0.059468710494223746, + -0.10077503300894806, + -0.011049526171723641, + 0.06987030094918689, + 0.020606684400741263, + 0.04821825993207484, + 0.055926078730801236, + -0.05962783963111519, + 0.09397195103370003, + -0.15135758219673381, + -0.07563405985129633, + 0.03202159560179969, + 0.10931234651381526, + 0.004241486701405611, + -0.2523633503901791, + 0.22914192432064412, + -0.09038840522086494, + -0.040533833710994754, + -0.005923473200965935, + 0.05014743027747044, + -0.14940903968476366, + -0.12381100337844142, + -0.024240536016229608, + -0.13048272155892504, + 0.009815262007928928, + -0.05566553122745504, + 0.09722304112158331, + -0.2580735154354575, + -0.01631586608608823, + 0.01333873628081004, + 0.05835444834924275, + 0.07773722920060783, + -0.21713491513324434, + 0.017517863038990406, + 0.022051792123912638, + 0.006946639404282762, + 0.00712764170241849, + -0.06721528447138561, + -0.12798740987507337, + -0.048283157403484746, + 0.0017226765478655173, + -0.07513323780940791, + 0.024086752378064714, + 0.06628521500899497, + 0.06507331960830645, + 0.020980236539431287, + -0.2339173089617621, + -0.08562957413237693, + 0.05068522866614096, + 0.19782387344300117, + -0.03783471039065678, + 0.06104872259975052, + 0.01586989827440654, + -0.13184191609272314, + 0.04447624904270291 + ], + [ + 0.0390624475382208, + 0.09232896520663936, + 0.14002759792481992, + -0.0743394682819092, + -0.1559193547009147, + -0.016326004635092383, + 0.04906844855337993, + -0.028897422497297105, + -0.0002691460416961799, + 0.019783567379126732, + -0.04513404146143798, + -0.0619599455887313, + 0.07127902625789895, + -0.14123494505981946, + -0.09576642721912329, + 0.04982795450578453, + -0.08709642905982451, + 0.06239644397183369, + 0.07973594211831762, + -0.1517653564903281, + 0.07107657978650818, + 0.04921194439753346, + 0.021053050264371657, + -0.01362541254353613, + 0.053108827748877166, + 0.07540422166532196, + -0.16525376845066045, + -0.02076087415575563, + 0.11568703542327757, + -0.009662088317394037, + -0.041946199974834945, + 0.08243521968463773, + 0.054446392051231, + 0.11041422696272414, + 0.054093553034366804, + -0.2716069002995733, + -0.1306090608937113, + 0.0111858010412358, + 0.18546194797403023, + -0.09983551955887675, + 0.02536442121784189, + 0.056688356853446045, + 0.0052611951208054, + 0.12848821672875455, + -0.11740127101274636, + -0.025187834378810142, + -0.14936133206996147, + 0.07383418776647631, + 0.1388765884159035, + 0.05322918990065502, + 0.028239015993625355, + 0.003088019538835953, + 0.07269751254086847, + 0.1307475805857958, + 0.017105137201147785, + -0.023138816905203263, + -0.006097499677343379, + 0.00820706488867809, + -0.048615540726701295, + -0.016802290942778075, + 0.15159458309791402, + -0.021827033623424082, + -0.06291889778870248, + 0.1387666842391711 + ], + [ + 0.07274041243770259, + -0.014880501479069467, + -0.06182069846990168, + 0.1167225297404096, + -0.04105592126009511, + -0.019664414510439335, + -0.13530004112277572, + -0.0664447371492382, + -0.012211758258264635, + 0.002321971671240135, + -0.06464467121994961, + 0.028076966267955368, + 0.03850426491778009, + 0.045875851977041346, + -0.15645981580154106, + -0.20457956878508923, + 0.21138063956466235, + 0.05485781610860039, + 0.06989476868589553, + -0.15909724168099137, + 0.0037628187883385284, + -0.017709899793662543, + 0.047468383186741445, + 0.120938638171034, + 0.18343212408026854, + 0.08152233250578368, + 0.0010148535870075418, + -0.06509717756722654, + 0.049267909499773395, + -0.09965501490719146, + -0.1301262488060008, + -0.0971779442463752, + -0.17703684351105553, + -0.07839191243700311, + 0.09618291914364636, + -0.17009325094685512, + 0.10904211763467829, + 0.10879991728106093, + -0.10754135564840098, + 0.0017322659486217213, + -0.12861630133509006, + 0.21240663888531658, + 0.07366402051982783, + -0.04834035969259357, + -0.05866983661611424, + -0.06934928330203964, + -0.17934586603616318, + 0.027293046105688785, + -0.06916688932195657, + 0.0395943029182212, + -0.11170161388660656, + 0.04027667682086597, + -0.05876586671464812, + 0.14593716826565137, + -0.06457762671799754, + -0.011514787140507153, + 0.023063120477419263, + 0.22278573671615964, + 0.019870375142092504, + -0.0981952734560137, + 0.13554063133652997, + -0.16047238427551344, + 0.01384846026086143, + -0.15380660807154145 + ], + [ + 0.04330637040072527, + -0.0464009475532817, + 0.16529783076368393, + -0.2530035696683753, + -0.13400841867580554, + -0.17859877524179313, + -0.0221022752365225, + 0.040108233726502435, + -0.0373767092283532, + 0.11803597374844116, + 0.06044554502309418, + 0.16454722711279776, + 0.01535474807345849, + -0.13233536955257183, + 0.17260583212197295, + -0.007855676527957284, + 0.10400732607668187, + -0.07874984491998856, + 0.020571246586663382, + 0.10689426790667125, + 0.02584971347684513, + -0.06372421550262557, + -0.19231621331270196, + 0.12651834656990718, + -0.07004684854533738, + -0.060906201033650624, + 0.01227319142441452, + -0.0346457029859563, + -0.036423065069003606, + 0.09379940471263509, + -0.022762573504374467, + 0.09720273893972536, + 0.05037464933407999, + -0.21987032181897118, + 0.01970118512506283, + 0.04779816189944248, + -0.06307086487839444, + -0.05169555449075215, + -0.05950843594947141, + -0.13393637174099643, + 0.035079717999999836, + 0.08004742650789375, + -0.11305788886460755, + -0.008058986684010552, + -0.15036389749297238, + 0.15707388717931015, + -0.10047689370491025, + 0.09828240678922104, + 0.03359289933921355, + -0.0923811201062434, + 0.07574792406352648, + 0.026539905705045688, + -0.06640786060100977, + -0.08690078581013082, + 0.12534946575251588, + 0.13344281826693946, + 0.04703838171988639, + -0.0464490443202393, + -0.173152836204534, + -0.04331981572099546, + 0.08601591574841007, + 0.08258901083481018, + 0.0563654232839417, + -0.04596620698507783 + ], + [ + 0.039382647158453236, + -0.03131646271134954, + 0.06315705081673266, + 0.03719881918173691, + -0.04850977762547651, + 0.040741308694155494, + -0.09843525192720814, + 0.06398327321639934, + 0.0012836484358027585, + 0.056721751378243646, + -0.00799643519503494, + -0.012116271659490925, + 0.1767985418960524, + 0.05868625223049372, + -0.12906876439810855, + 0.08760463159984556, + -0.03494711765406747, + 0.14589673322416627, + 0.06653379195385466, + -0.08005141022301153, + 0.05341358450937994, + 0.036452555074191643, + -0.09930325881849746, + -0.022200431714185967, + 0.026436331820046507, + 0.19201883485347104, + 0.08015718341160391, + 0.015457423609463292, + -0.18030061919394708, + 0.04516094122075448, + -0.2957715414467354, + 0.06580730075185781, + 0.013057197062919967, + -0.14119724006899523, + -0.04012678940412318, + 0.2014401825421186, + 0.017773985592802213, + -0.008106285982257043, + -0.09241121077387318, + -0.29694239343459067, + 0.030022120101039752, + -0.15110437971644622, + 0.061379390936993274, + -0.15743597298983958, + -0.1220836640563594, + 0.01716299443555033, + -0.07142602349567555, + -0.042137961492916695, + -0.005412437847875961, + 0.07533285184258565, + 0.07095355614245587, + -0.17923947624649128, + -0.06792087180922358, + 0.14642281163779633, + 0.1286426560685493, + 0.06790352158265373, + -0.132672996838814, + 0.08048848858448626, + -0.0015754244793752374, + -0.04392270373818388, + -0.07254250878759302, + 0.14847644692048453, + 0.02653194800673983, + 0.18037542370245507 + ], + [ + -0.008488620596983418, + -0.18429686745940177, + -0.042174391500029995, + 0.10538540851625647, + -0.2166699990346302, + -0.05838826172562517, + -0.0448752449545336, + -0.12479517246319922, + 0.09854728183852184, + 0.06075905006932739, + -0.011469038808030293, + 0.015884044112540265, + -0.024389065581282746, + 0.10384051985842724, + -0.011813289744540875, + 0.1257132188702244, + 0.05755130025872788, + -0.11837674064772503, + -0.02861386992670667, + 0.10895928437486542, + -0.0786478393202187, + 0.012976924113555582, + -0.017063991504664512, + 0.15182804865330457, + -0.01307742058672626, + 0.0316098917970246, + -0.10854785870247335, + 0.023320172281626785, + 0.06343619955016894, + 0.20263618444742995, + 0.08796580314604148, + -0.052872037153287255, + 0.19421609082821575, + -0.12090832601045923, + -0.01686925061794598, + -0.10332327360747601, + 0.021573990656121526, + -0.04528817679902471, + -0.06859067411150875, + 0.08574511423115745, + -0.04589648526540552, + -0.012251786249132323, + 0.11936595921807698, + -0.03710254878129672, + -0.03327363130728791, + 0.0061255967093231, + -0.2351609196130665, + -0.1599551737772763, + 0.015667270664631618, + -0.04121347848701, + -0.010668997163219385, + -0.23851335391650377, + 0.05313953916117503, + 0.04222179620164305, + -0.15444654406077293, + -0.045641492819649174, + 0.1866420894832271, + -0.050588140705052735, + 0.02196000013452721, + -0.028878778943158736, + 0.060768980177323476, + -0.00946296142707075, + 0.04106187892914826, + 0.008364752611429374 + ], + [ + -0.07045698426249934, + 0.138439152512201, + 0.0666367862652903, + 0.004696152307076196, + -0.01976210859607519, + -0.24079831093567586, + -0.003114340713696983, + -0.04849307173472909, + 0.034601853707607454, + -0.051783050683161816, + -0.10636310108787805, + 0.20250352287461504, + 0.08899902204878332, + -0.0362958166919037, + -0.12308757154840505, + 0.09868354142192728, + -0.05737754624922075, + 0.07174725043970005, + 0.06893937682712563, + 0.13364247626004858, + -0.04991531506064206, + -0.03345194340071468, + 0.031706440505810805, + -0.09268804096576173, + -0.007030407367739937, + 0.1418785642114035, + 0.13266955123122937, + 0.20714787665940562, + 0.03975723117198939, + 0.04961648164509344, + -0.09926027466204156, + -0.013040160849789565, + -0.08430395904084852, + -0.000969016559807113, + 0.08874812650918079, + -0.03170724798271859, + 0.02360361549722063, + 0.09041541386248614, + 0.0251391030477444, + 0.10884411701164501, + -0.05476685807833706, + 0.039544052945800975, + -0.015944717580973683, + -0.03177459182608157, + -0.1807421748478264, + -0.02403283651277963, + -0.044322639014438024, + 0.004149142647803821, + 0.007776887258994692, + -0.06970970924332781, + -0.05973969530740141, + 0.1046785777156471, + 0.09059832922502281, + -0.016608262746933854, + 0.06066027861042195, + 0.014916179238075318, + 0.03375587564898674, + -0.056838581177630056, + -0.13928917531543178, + -0.10195824626097034, + 0.024959620609462715, + 0.305288463488367, + 0.07019357109709981, + -0.0030249372557114833 + ], + [ + 0.07966657012190943, + -0.036564912651914076, + 0.01209559618708414, + 0.1175720745266745, + -0.0832400973846413, + 0.005692760449114449, + -0.10858642124350329, + 0.1055447256522692, + -0.02211490620291405, + -0.040811875019820726, + 0.06339430541082819, + 0.08945166490801174, + 0.062462641519134054, + 0.008461796383644882, + 0.1102786414999333, + 0.06823866173737868, + 0.019253151801226987, + 0.15238999532910225, + 0.05475067218059485, + 0.11908312368983885, + 0.07140660150121055, + 0.03221977926531056, + -0.09575822173457671, + 0.1382540560523354, + 0.009606144331038858, + -0.061469518017143066, + -0.04805569655398832, + -0.004974245359226122, + 0.00690439640307521, + 0.06097406557127719, + 0.1714015460541436, + -0.07191015032816302, + -0.139139219958166, + -0.12054944553966358, + 0.0328756481411877, + 0.08293420163428616, + 0.14247254946192553, + -0.08759190387542645, + 0.058139957036766, + 0.0848400488471985, + -0.12432922226107915, + 0.05692711361691512, + -0.015201053567156425, + 0.1419477343322512, + 0.10630336237581911, + 0.0023644242669663518, + 0.02408910527842519, + -0.1581311605500034, + 0.06753982156618343, + 0.03341911425957522, + 0.027665367065730768, + 0.17519652475428504, + -0.03547058495166915, + -0.024241837464816857, + 0.04513178418416327, + 0.012327297641138074, + 0.11262998228969051, + -0.04306150130548354, + 0.009693065898436933, + -0.0641148241169681, + -0.17155848696400822, + 0.004585505118298271, + -0.03338071604358508, + -0.01687830471670811 + ], + [ + 0.004549315550060328, + -0.16446855203986266, + 0.1354863845905024, + 0.04208727492205689, + 0.044973370078931874, + -0.06458907336603638, + -0.04319123932541557, + -0.04535895286302595, + -0.022553761682611702, + -0.0407154307314496, + -0.14436763913021683, + 0.09264358687485584, + -0.12408129040872379, + -0.024087892746703567, + -0.0361279409736978, + -0.008180042753992006, + -0.04428512519189036, + 0.09724664347881569, + 0.11024071880914328, + -0.07993613254003183, + -0.13614656601083588, + -0.11001705237254669, + 0.028238675196571736, + 0.0022882569799607243, + 0.1412241747226663, + -0.06427851904587095, + 0.16192891585051417, + 0.05773602150185961, + -0.058551319543601724, + -0.022004763132429616, + 0.0345386609249722, + 0.09406377444057071, + -0.1286895644930851, + -0.06937176481496142, + 0.1939839995958803, + 0.1128771147956061, + 0.06639869756261355, + 0.12604247925740883, + -0.03433961778218313, + 0.029380779986820277, + 0.12676780144340777, + 0.05007848227031219, + -0.01402600250626735, + -0.11976982976990497, + 0.04178972912758866, + -0.09806167742048423, + -0.220903176179371, + 0.044938832140886384, + 0.10401379674962535, + -0.05948767729421781, + -0.04574202916539704, + -0.13338864471228618, + 0.010450443995678634, + 0.013648834664266592, + 0.07670391290744492, + -0.2774469265933004, + 0.056585940861108734, + 0.07478346141927082, + -0.026528210251830903, + -0.11062100775052744, + -0.033357307871298786, + -0.039405553853735224, + 0.2027011476253634, + 0.130834749771257 + ], + [ + -0.16215823223078685, + 0.05496785784543934, + -0.09334605703203265, + -0.10122918875243642, + 0.06971616446244255, + -0.01690856493805484, + -0.09096019602952753, + 0.04417318605346452, + -0.021422536637258283, + 0.11783553894743089, + -0.009522360443442122, + -0.09094719800306089, + 0.03414534408021496, + -0.06825711851896486, + 0.1117927783997041, + 0.05762173525255986, + 0.0466828079628408, + 0.03496780597559326, + -0.14669838685979028, + 0.09046560051181386, + -0.10377092607948835, + -0.2813632091788997, + 0.06488404628325, + 0.011137424993985633, + -0.020887231905521206, + 0.002399315711058283, + -0.13140411484646214, + 0.16567894982136286, + -0.19236274702504902, + -0.022819393723898143, + -0.17397488919886603, + 0.009328749345884891, + -0.023713194362684445, + -0.027607842214554496, + 0.005950938650509543, + -0.08706938131319125, + 0.02614984638759409, + 0.03003461122836399, + -0.03908108228597539, + -0.01938460157006361, + -0.05025037818552397, + 0.06575315657363992, + -0.19155223801520493, + 0.037217921667177516, + -0.05671638015855727, + -0.05597854019620977, + -0.08322108048027498, + -0.07486825083597022, + -0.0713992343802216, + -0.014796458031144311, + 0.0656433257344542, + 0.16171559902584232, + 0.033190118636074774, + -0.16580683957557785, + -0.08823918981357913, + -0.12948984027963803, + -0.05865735109953091, + -0.0522188675341245, + -0.0892125326243553, + -0.17856212669804683, + 0.04141906560501385, + -0.08305775803303397, + -0.12293821983842357, + 0.07615926501486717 + ], + [ + -0.13027024204455487, + -0.12057575078688848, + 0.06421823351376232, + 0.054111941191870974, + 0.06385402592666349, + -0.026340883828230063, + 0.032358452841837304, + -0.09648972519403289, + 0.171094528364929, + -0.04798408366075273, + -0.11583902980487167, + -0.06713608243728499, + -0.10702491496595318, + 0.06007295030143417, + 0.08567380361869673, + 0.017345785530740888, + -0.02412619968856776, + -0.09496427447735833, + -0.061552305584324424, + -0.11820575809344172, + -0.10724867044079467, + -0.08320776213723692, + -0.01260554519838998, + 0.20306312344637992, + 0.07760412854877896, + 0.19530919956707526, + 0.09355009714084889, + 0.14467549085705597, + 0.1397185732985103, + 0.08363443307496668, + 0.1134803560093677, + -0.21476382871661648, + -0.008831587116266661, + 0.05049108378448172, + 0.041377057783678235, + 0.24539703241271443, + -0.16767691352203568, + 0.0944238143357436, + -0.08391476216571842, + 0.08717827243832321, + 0.02315749046190295, + 0.19594104326680328, + 0.30597961443317545, + 0.04490813041598382, + 0.12829528784766844, + 0.0176885551953298, + 0.08318708608049545, + 0.109952867702692, + 0.01811825398986997, + -0.18078357059241834, + -0.07086049064760172, + 0.05745527322316696, + 0.048746977563237294, + -0.10701202423738201, + 0.08175218620370601, + 0.006283782997260252, + -0.05745927428592154, + -0.04417489973447676, + -0.14764203119960437, + 0.038438750465464036, + 0.05021773789842156, + 0.18129323901468616, + -0.1367591859062794, + 0.12413198260758143 + ], + [ + -0.007086359267926146, + 0.08319903235751999, + -0.018341813068041564, + -0.10424679222422202, + 0.03436517163393585, + -0.03700610874357744, + -0.006877211221278385, + 0.13105150830145462, + -0.06454107483610515, + 0.06648828554897622, + 0.07496341629795543, + -0.11021204968223296, + -0.10454730125113604, + -0.021370977550392776, + -0.11486059841908253, + 0.07180017788760006, + -0.04640667685729199, + -0.05783196824501213, + 0.08254751257251843, + -0.03349938185606526, + -0.07924164409001622, + -0.07565552969645406, + 0.07039146258142548, + -0.09969799554483733, + -0.01578316118067182, + -0.0232290866726375, + 0.008043711837392267, + -0.04325123636266051, + 0.311460933978868, + -0.07937735250484416, + -0.02857996971233346, + -0.06672689669540363, + -0.21247962929789593, + -0.00849087557211342, + 0.011508940114055746, + 0.0060224363960727665, + 0.1678022986211173, + -0.16035538805937016, + 0.042676779364734733, + 0.06778310033934175, + -0.0418898452443859, + 0.14497078463247634, + 0.15023350341735459, + -0.19889731531623506, + -0.06874430938101575, + 0.06605808911873531, + 0.16140060834536288, + -0.013982111563390028, + 0.00870961375134877, + -0.02256819605130457, + 0.00725989277939428, + 0.11161735905940601, + -0.05992278511266798, + 0.013703851009591084, + 0.13307437465498326, + 0.14542944680873882, + 0.023749199353188845, + -0.04250125815778555, + 0.06507494253615029, + 0.13278209424429863, + -0.07578282784132959, + 0.0013047436185670072, + 0.1752755846466504, + 0.1730821496464122 + ], + [ + 0.08258924465128797, + 0.06105690129046581, + 0.10217992819588223, + -0.10561466589020052, + 8.534800743092801e-05, + -0.04355152763411638, + -0.00619773272777335, + 0.02379365475489154, + 0.03216048234801756, + 0.01689377917446257, + 0.008227870336874823, + -0.14477064186171892, + 0.17303997814353217, + -0.09455143925707662, + 0.16979633427955726, + -0.09959982173711568, + -0.2509820561868441, + -0.08289882930543076, + -0.18959900444601394, + 0.24914047005336226, + -0.14408837975633262, + 0.15319553978598008, + -0.2145965439043503, + 0.02175602102136691, + 0.0003098717090576017, + -0.00218397446993249, + -0.03023212950376862, + -0.13513780737443107, + 0.10296178039054643, + -0.12931466405524103, + -0.05170227498272115, + 0.12178025917096696, + -0.01704231735395767, + -0.015259371432411876, + -0.05634895270831719, + 0.06050913736733398, + 0.030419010744204486, + -0.05641390736691874, + 0.0005206885006555982, + -0.07930266354305116, + 0.03311956856403886, + -0.002644644843910484, + -0.07225960067939673, + -0.04527461113560852, + -0.06564491595652151, + 0.035749508354651766, + 0.009837559438898642, + -0.07584342741061789, + 0.05121762482327942, + -0.05003189815499237, + -0.013671569477075138, + -0.1273929985556769, + -0.0971002360771317, + 0.01240243804170155, + -0.04733197076929558, + 0.2449588884918729, + 0.0005044639572476171, + 0.10217013760048735, + -0.08804221968217563, + 0.12594001765168844, + 0.04113837691705468, + -0.03596014665717696, + 0.12053073021774773, + -0.12125664830691221 + ], + [ + -0.1988081023511299, + 0.12040684566298794, + -0.0718340086346639, + -0.11187691545651034, + -0.016818343659270638, + -0.13092345526705199, + 0.23988996743556315, + -0.02778642379950998, + 0.08050273811879215, + 0.09751944454800714, + 0.18680306299912636, + 0.06254265197404155, + 0.033092954297459024, + -0.026064984929845603, + -0.007709842954244969, + -0.043813736133389986, + 0.22461618586440066, + -0.011191851910373227, + 0.1514771078000155, + 0.00674005309624906, + 0.12152643454086785, + -0.006062556814853273, + -0.22252334207050406, + 0.017510448296540398, + 0.037555929500116145, + 0.057347940054468464, + -0.12677666444558483, + -0.14381729513576946, + -0.00027202865709849986, + -0.09361051164076462, + -0.009550142294187068, + -0.08177183228931935, + 0.06510703605560195, + -0.09799196833277012, + 0.24160204835676105, + -0.06246538463687895, + 0.018930793064757413, + 0.049301246632588225, + 0.11349056583189904, + -0.017412504520483367, + -0.04077858937521228, + 0.019350765387078472, + -0.03107752967805911, + -0.08048422137403462, + 0.11503127975042347, + 0.07479915004671804, + -0.07094306182667169, + -0.10137891556902422, + 0.05467920022861525, + -0.009837497327108617, + 0.11548096761869586, + 0.04835182356308433, + -0.12013264907845794, + -0.06480158201340447, + 0.03360381793781235, + 0.09661668755894204, + -0.22319076354747375, + 0.11971430370773908, + -0.11830007167096795, + 0.07353693356964588, + -0.007847636498296059, + 0.03675154135600111, + -0.048915882880777084, + 0.07045505777241971 + ], + [ + 0.052022522666075814, + 0.12043277056090207, + 0.2045810061867914, + 0.018741906384225553, + -0.00605205283087773, + 0.013737361571404583, + -0.1612680166611863, + 0.10345769126897755, + 0.013842971255794024, + 0.21359820497175225, + 0.1699581304556419, + -0.04620987511173525, + -0.08475003580992961, + -0.03993014116180548, + -0.07574208877819726, + -0.1658178995332895, + 0.07441552767939218, + -0.12180550863258635, + -0.0024443163479634764, + 0.1389531620982492, + 0.11523302482847625, + 0.10854750975900565, + -0.04662814452185452, + 0.08250055009138277, + 0.027191334610766272, + 0.023529561198982692, + -0.0810553962777731, + 0.06889635537560185, + 0.010917172589973153, + 0.08401058679660786, + 0.0453985204457833, + 0.09331969505915105, + -0.181206134773415, + 0.001729205559131884, + 0.13979506537815242, + 0.0318417366277021, + -0.009022827734894543, + 0.009838297666768473, + -0.026504710756462563, + -0.13966543563087708, + -0.08795987651437319, + 0.09765913369685239, + 0.019593044634608564, + 0.08984002805535347, + 0.012324983721597309, + -0.015413584964153314, + 0.00014054075909866308, + 0.15900763986878266, + -0.10582754700823083, + -0.08481423180657559, + 0.09576135390248487, + -0.17054856840071014, + -0.05585503257256757, + -0.025050886800149292, + -0.02691060677621089, + -0.11144947336683408, + 0.1263762347847554, + 0.046899257269712946, + 0.11087601076953778, + -0.020679211550868964, + -0.012783566824276262, + 0.053041675360559815, + 0.06804297761079303, + -0.02853594245758466 + ], + [ + 0.0007995653884833513, + 0.11260067100560321, + 0.0010911446160971523, + -0.065001072201093, + -0.10445902242216323, + -0.020700446724036606, + 0.12172036820992749, + -0.006398966452089963, + 0.25672061806496077, + -0.07629969258028947, + -0.02970444384786068, + 0.04195024043742138, + 0.051923098251852484, + -0.11611035494985496, + 0.019120949173488, + -0.03174420320497413, + 0.09902617571091904, + 0.04134429756970483, + -0.06804684425685757, + -0.07277843976271801, + 0.16392923348493973, + -0.07817367015166503, + -0.033328900153099986, + 0.016960936036263027, + 0.1054037729833977, + -0.05014927839083119, + -0.009161273827470605, + -0.07576655579827336, + 0.0504573831702947, + 0.038410788665956215, + -0.05749569286268025, + 0.07684600218987375, + -0.1846524761292965, + -0.07794175580579982, + 0.013042753145804442, + -0.17826817599992018, + -0.02796534200552714, + 0.10499851479459982, + 0.11058257029480092, + -0.04887737406385828, + -0.08621512701702937, + 0.04030880718609475, + -0.3279951990282694, + -0.020280325790201163, + 0.03273883229743706, + -0.17635243618196816, + 0.01743023929302899, + -0.16060348759929755, + 0.08351741885421139, + 0.04444647057509593, + -0.04095379931422857, + -0.03393710792056491, + 0.01665783666999885, + 0.0516678253616312, + 0.1676525530173669, + 0.11621568847309958, + 0.025368413251867672, + -0.1709980789598974, + -0.044165226363319154, + -0.007123136208625693, + -0.11486741623139374, + -0.019854156124643186, + -0.04367767135211551, + -0.05442831634634099 + ], + [ + 0.051590674453587185, + 0.07269425799365063, + -0.0633887667376765, + -0.11108452838169498, + 0.02548546254570451, + 0.01831472588621295, + -0.10820523708977672, + 0.08013199303702329, + -0.11160453640251476, + -0.02365121701072765, + 0.041966668856390665, + 0.18528714447699945, + -0.11418593984276203, + 0.13085396099051258, + -0.046693243960854475, + -0.014406065631900304, + -0.14275102552847882, + -0.06045094989479338, + -0.09847262172509835, + -0.06131651094284077, + -0.07630996604778317, + -0.006918158187207277, + -0.04777711761061139, + 0.06340336977442985, + -0.010169857848327976, + -0.1121667897042572, + 0.06330298829004499, + 0.0764097308781732, + 0.21472235329106054, + -0.012978901550595454, + -0.10752580899438416, + -0.28671399506550155, + -0.11383059414663932, + 0.18931986389099878, + -0.12198322720516189, + 0.14156502001093313, + -0.05583393933941544, + -0.05301024268297684, + 0.20180453059973133, + 0.019390880203994983, + -0.0011461589024160683, + 0.001247545000992203, + -0.0479065875691821, + -0.13738858873691637, + 0.05052419606800462, + 0.014371301378302913, + -0.1815882131352988, + 0.028407719240027607, + -0.1132971428635655, + 0.06279313822096319, + -0.13226449114979177, + 0.1334127740281745, + 0.01716954635661256, + 0.032838863767149326, + -0.05475529024147278, + 0.04618763271055061, + 0.07313865867273871, + -0.014511942958027222, + -0.005356114236845271, + 0.1007968629231143, + 0.18812244256568733, + 0.11151306968456139, + 0.04600009044363163, + 0.2419402759922581 + ], + [ + -0.05502459980842778, + 0.05594208278997351, + 0.0738778968237865, + 0.11242362965479831, + -0.06422905878950014, + 0.07940346371699711, + 0.15631496864488273, + 0.15455296379376704, + -0.025794840882649963, + 0.06239877321578732, + -0.06753956336596319, + 0.12359816441606926, + -0.029473773597963576, + -0.013224117898910016, + -0.0812308337243866, + 0.030165312426996205, + -0.12314674582021229, + 0.04758192648720639, + -0.01695985080108469, + 0.09073074368807707, + 0.07144797050666535, + 0.1121196423798197, + 0.0366252650575488, + 0.132715566191152, + 0.08179957383619839, + 0.28953903550685256, + 0.03851189776861644, + -0.0170843032971116, + 0.07411415042890024, + -0.08463684970137803, + -0.1462101422294769, + -0.0031232422065792242, + 0.052276964345627154, + -0.022499042539204366, + -0.03741476972924103, + -0.04589584233091219, + -0.065896368331104, + 0.1151228671044762, + 0.23756084182191747, + -0.17848154091844315, + -0.12226838693713656, + -0.15796388301572206, + -0.08114166518709111, + 0.11843432368544751, + -0.1533693678305739, + 0.13037167445632628, + -0.0029127523185756964, + -0.114059561831373, + 0.13627894034884763, + -0.05911986587962157, + 0.021656120294608894, + -0.05957103134435632, + 0.03011533680565101, + -0.17333573908947256, + -0.19468852226083544, + 0.08216440542742587, + 0.031223099906999383, + 0.037006425320979135, + 0.011401076218266746, + 0.046686636406229276, + 0.08141083624091115, + -0.016239800868761756, + 0.21329773266860805, + -0.07703525192036942 + ], + [ + -0.18176342297167314, + -0.10006426372036947, + -0.07797535909448737, + 0.04151987184568167, + 0.02765217636997712, + 0.04390742636857871, + -0.060734391164224966, + -0.04118667601014745, + -0.08099012761111292, + -0.042666070523513844, + -0.06209506815886623, + 0.026093121343973288, + -0.0829465024584915, + 0.06695765335290528, + 0.04161688175097346, + 0.05078223567899477, + 0.057868548279848754, + 0.019218750856408652, + -0.05076965380524184, + 0.042037485952178565, + -0.2353731422907909, + -0.07864366462214906, + 0.1522355157266729, + 0.09150457457605905, + 0.10490067178265337, + 0.0522281968766326, + 0.014850675472577339, + -0.04276236653420518, + 0.061436073570402296, + 0.06773830401636534, + 0.0817102706249285, + 0.035047484532972704, + -0.028420119279681834, + 0.20566503383707424, + -0.09546664196156394, + 0.026012748114951384, + -0.03698899651757164, + -0.001623613089080889, + -0.01909182983434534, + 0.10826072753803775, + -0.02736433642442734, + -0.023959814930492082, + -0.09242634237662092, + -0.074726761691651, + 0.04133255365078382, + -0.017920012214088232, + -0.04772344210025558, + -0.040533313362792076, + 0.10896872256936972, + 0.0014066180745185212, + -0.045017763401697185, + 0.0048368859775264625, + 0.08978002645609197, + 0.11441803408191885, + -0.10466723169430281, + 0.0555995105176214, + 0.10836204299588943, + 0.016282943437560614, + 0.012552756750796807, + -0.09345785290216435, + -0.04508297739264072, + -0.11843027891424796, + -0.08232718020625623, + 0.04531127061145313 + ], + [ + 0.1206099893713105, + -0.1386305674621457, + -0.2863301014495873, + -0.08607221637086379, + 0.10023669132310836, + -0.027341729661625253, + 0.03250074962550716, + 0.08808087844266776, + 0.17268876199822014, + 0.022447126038958657, + -0.1375070989873554, + 0.08844972641007004, + 0.024733121716671604, + 0.20545244451736508, + 0.057636921495374686, + -0.04552041241793195, + 0.0498016355802764, + -0.06853880916952658, + 0.009533539339646279, + 0.10945154438221133, + 0.03739309840608472, + -0.21985860244380762, + 0.07468592221373968, + 0.04480089946158298, + -0.1585809988413825, + -0.14292176366875217, + 0.16416348857637128, + -0.04300573667977336, + -0.06911373786084317, + -0.08606639570800455, + -0.08076971451187555, + -0.14217676835769308, + 0.06811235505118743, + 0.11156431151331664, + -0.1837755508197314, + 0.06833744433127817, + -0.03686626475051713, + -0.15906660101613634, + -0.04154927118643231, + 0.009671900765730391, + 0.19605047205034798, + -0.08915543368915585, + 0.05262011813293266, + 0.10248758676560872, + 0.0596445138996493, + -0.04555586516574958, + -0.01829103567811718, + -0.0043571836875759854, + -0.08618360385590007, + -0.10822535106643279, + -0.21624929372772247, + 0.19164148294589234, + 0.07030968298173744, + 0.09915459805876387, + 0.017719557297326567, + 0.009045289832457398, + 0.04728804979762976, + -0.059501513208674334, + -0.05463261687860069, + -0.03316994591139661, + -0.12306361518624849, + -0.020650506493375867, + -0.01969645557210722, + -0.014981361928005485 + ], + [ + -0.05550849789471203, + 0.11493093518172455, + 0.1237210395277395, + 0.07622586346455745, + -0.06902843944733911, + 0.04556344947629388, + 0.1275965731540614, + 0.0956734781956714, + -0.19608002251479817, + -0.006772733122278079, + -0.14969421301057434, + 0.03524765755971665, + 0.07197098100213979, + -0.17343217920578968, + 0.059453364650192686, + -0.1702123130601915, + -0.03868740799594054, + 0.06581469273231977, + -0.13566285324732116, + -0.024494661974257096, + 0.07891415849621333, + 0.012613512019608076, + -0.07864053165930135, + -0.05539507589202928, + 0.3078694655271157, + -0.060856105296819424, + 0.03038230933878588, + 0.07392818856897819, + -0.11594114192713101, + 0.1994513175973428, + 0.04532427545938622, + -0.09180387257245912, + -0.15289394454978475, + 0.06342151753547469, + 0.011921093869304214, + 0.09306008257107246, + 0.11745122035724831, + -0.03668149401999252, + 0.050289925311677086, + 0.0023728735422551633, + 0.017400868895331153, + -0.13235643784167134, + -0.026401747088672496, + -0.09315226717819164, + -0.13235979039925344, + 0.10344519200748559, + 0.0014687447820253875, + 0.06049132026485539, + -0.001945322873033989, + -0.14295971779583272, + 0.038064522776829236, + -0.12325237190640499, + 0.0841015817265543, + -0.21553363586749016, + 0.08434145057571185, + -0.04059299018170534, + 0.013597354427916786, + 0.03602525261870954, + 0.0759396686904435, + 0.0015582157817872712, + -0.12309765139829497, + -0.12231995851851048, + 0.0010301655517184107, + 0.17272423546603063 + ], + [ + -0.012864338675856674, + -0.004576301521753996, + -0.04250171946851461, + 0.081647979017073, + -0.0023720406063073986, + -0.29151121339932673, + -0.013641549009766767, + 0.05221205375953152, + -0.04786289751388079, + 0.10796009441215382, + 0.18374484857704154, + 0.009647158115250451, + 0.046014883328669466, + 0.07722789105079503, + 0.14771402715677395, + 0.025636491832725844, + -0.01807061183944593, + -0.07143444077013343, + -0.04218380979018263, + -0.047456405524324785, + -0.049565438345853904, + -0.10044324885984697, + -0.01862214175553095, + -0.07143090690387309, + -0.19511497082644247, + -0.14380372699548416, + -0.012355302960885665, + 0.009477892701755364, + 0.12911725719641365, + -0.05580535985216572, + -0.06525055063333733, + 0.003451548007982397, + -0.05893149737806718, + 0.008940998007239779, + 0.015700904614263683, + 0.21724381451982488, + 0.009738318664152708, + 0.04057838294806536, + -0.0287214862757786, + 0.11648622040626211, + -0.21003499823909919, + 0.09143350787612818, + 0.10313096975030285, + -0.02187664668245654, + -0.11986315164901656, + 0.025880814556383726, + -0.06802047210927605, + 0.07389893292312741, + -0.00207515889429536, + -0.02161059201194382, + -0.03751287788090685, + -0.004976513501092444, + 0.05052318494622513, + -0.03720972228205928, + -0.16778999268565264, + 0.010655050943412108, + 0.14951343730820896, + -0.023615021099577416, + 0.12370584886773445, + -0.02718630496100907, + 0.027734758586651753, + -0.10910365599362082, + -0.0924765452708172, + -0.08360401379678155 + ], + [ + -0.16657780680707324, + -0.033704480300171466, + 0.009365819063381768, + -0.08493549331198763, + 0.07556016054459186, + 0.09834015350353492, + 0.11298695181005347, + -0.14771244621035562, + -0.0065190137547571705, + -0.04677742702358958, + -0.002543991141571604, + -0.11793625256405467, + -0.06007192828185992, + -0.13012691622848468, + 0.04632302065975759, + 0.1296391308265128, + 0.16898512517519393, + 0.02570549523451245, + 0.1503331519740598, + 0.04746348027312151, + -0.059956520027042354, + 0.02065695631203011, + 0.008256590514156116, + -0.13902133745689563, + 0.008820446033851445, + -0.07077282775571359, + 0.12936903791799134, + -0.08767111626873286, + -0.09220497277458083, + 0.08052013129652978, + -0.07105773383969304, + 0.064840254613638, + -0.15312141570471077, + 0.22220784957246376, + 0.05439493313679105, + -0.004966451491034973, + -0.05789468447916123, + 0.019453118051698953, + -0.04127751373133512, + -0.0333692630826933, + 0.007917079807153704, + 0.08245855258577678, + 0.01831833199503354, + -0.1252442403435864, + -0.25630274503153366, + -0.034827179872892564, + -0.1429419987349405, + -0.02012423508421543, + 0.030036139240747134, + -0.1959262038663502, + -0.020694705743548678, + -0.1921424149377975, + 0.057741017937679384, + -0.024363472539161046, + -0.09516987522658486, + 0.02295297749874395, + 0.19117393257199655, + 0.19039551173121486, + -0.037287365190319284, + 0.10132913211596216, + -0.0044559154260913, + -0.031250144655798555, + 0.0531995609300195, + -0.0022711612055415597 + ], + [ + -0.020489765303673683, + 0.01942625017090572, + 0.07329476249792637, + -0.057089424534470204, + -0.03216299228486079, + 0.07450183738375805, + 0.10407280926567404, + 0.06665779470367221, + -0.23982054675015854, + -0.027933363372026995, + -0.16607175845695124, + 0.0007000027988400192, + -0.07693930264242724, + -0.09987724381332481, + 0.038219213576383505, + 0.011832457007565543, + 0.11286304465579003, + -0.0003210598480850297, + 0.007711761358132978, + 0.0248817106335676, + 0.21294106510739677, + -0.12036826998444261, + 0.0023870499182489877, + -0.1617936784101105, + 0.06158018278142494, + -0.09636614465238191, + -0.032829973518791335, + 0.11953667753839932, + 0.09727492600330914, + 0.0024989429477321416, + -0.13446945139650915, + 0.04242746380077161, + 0.0708981701904389, + -0.08301544875288422, + -0.11077181124940823, + 0.0988870955433756, + -0.012706123888719856, + 0.14468809598629478, + -0.04070674432580036, + -0.07360771866012551, + -0.11562730885316037, + 0.11971165745029107, + 0.09892579008028615, + 0.0857859840074783, + 0.09899437235639937, + -0.07989314727217105, + -0.021413329570961114, + 0.11360727786798529, + 0.0370585252500658, + 0.008796893588899676, + 0.05767877137012082, + -0.16655362382663172, + -0.16306089929464268, + 0.09295378073040016, + -0.12450485629308022, + -0.08256279825961531, + -0.013106691727378189, + -0.0173668661236177, + -0.0013916362412512674, + 0.0899885967355263, + 0.1059915579561728, + 0.009545152807118484, + -0.19354627302668528, + -0.01928396141432816 + ], + [ + -0.07388096320933037, + 0.0032351965149531106, + -0.00821771965099772, + 0.019853998236179265, + 0.12234558921918798, + -0.060552506854637256, + 0.019346765737970457, + 0.14721987843806866, + -0.0021982755909004535, + 0.08771376317324475, + 0.14049521340018348, + 0.01942508306635531, + -0.041485369518714975, + -0.12369223178619158, + -0.0810377241026704, + 0.06386138411771829, + -0.0023878094515535795, + -0.07911816668860853, + -0.015279732518831272, + 0.13931809326671205, + 0.006243843573983682, + 0.10020371286839952, + -0.021609781949448546, + 0.037336571273966744, + -0.0495957234267111, + -0.03487408186326419, + -0.051673702718781814, + -0.13012659289824055, + 0.039585725415878, + 0.04161662011327462, + 0.10066451984478829, + 0.1639060343493884, + 0.16787932109500459, + 0.07954002303049618, + 0.15681971853213844, + 0.033861150632015474, + -0.00042723723183624797, + -0.21844346936059233, + 0.002944336691121055, + -0.16396282219854602, + 0.18290855130445083, + -0.03178834902989392, + -0.13046419162373246, + 0.05371353046041092, + -0.05183433198138853, + -0.04899271603172822, + -0.05697964071749648, + -0.1192561810523455, + -0.015297405757284225, + 0.040418466985078595, + -0.04712520119669487, + 0.008815178002456946, + 0.18293844168787507, + 0.07287663439264806, + -0.007717993918982849, + -0.010666487169038997, + -0.007850534493599891, + -0.18701372662199217, + 0.04199504064231933, + -0.04922857674285408, + -0.002536859767396718, + 0.027165108479291208, + 0.14684122098000144, + -0.06260338663913806 + ], + [ + -0.10129065926673142, + -0.06769821064841934, + 0.09146114395336495, + -0.025644705533623274, + -0.026777814663056683, + -0.10839775357009594, + 0.014554881058034229, + -0.14256726913332946, + -0.13938518292504806, + -0.0657062355122504, + 0.02831425016283472, + -0.053648554939307924, + -0.16977769994451986, + 0.12630929204790975, + 0.0005183444812798565, + 0.05468020138788815, + 0.22360265942874102, + -0.046217172939878426, + 0.05028303698549548, + -0.08276244607994365, + -0.1688493522249669, + 0.03259453418602092, + -0.08544571716020206, + 0.040496517808960075, + -0.10751667998084456, + 0.00829070359327483, + -0.16874530440871371, + -0.07509579758044017, + 0.19289924711082196, + 0.00765614451723715, + -0.009331495344831369, + 0.021361118424742982, + -0.1513154968233067, + -0.03819169960117176, + 0.05469406802113102, + 0.06961289158127008, + -0.09163694291685054, + -0.0027302136714786535, + -0.014485434991010291, + -0.002919511119204873, + -0.012339012367335042, + -0.2660097823404581, + 0.039717018700274116, + 0.06691259894700526, + -0.2038088938196443, + 0.0757299380202537, + -0.04216247839461129, + 0.04093056963751433, + -0.032935996843253955, + -0.13278020151884745, + -0.014848617612208884, + -0.14220018630315753, + -0.06926782802043491, + -0.1551285335475485, + -0.10310055642041266, + -0.06941084728460653, + -0.12168735021084341, + 0.05904585254180442, + 0.07497603248516294, + -0.013298716790225568, + -0.07975752486003729, + -0.3265946150105442, + 0.1089595776873919, + 0.05629383247135858 + ], + [ + -0.0681959055318971, + 0.06374326227909026, + 0.021298256352627234, + 0.021668792948251286, + 0.030269198315949448, + -0.10581889369843428, + -0.0987644468422394, + 0.02931876675941259, + -0.008282185416915076, + 0.17839321798721286, + -0.1321740836374776, + 0.1311161093000048, + -0.033223054337501674, + -0.18622121096332628, + -0.16906862164480135, + -0.08808704938340056, + -0.011372940401822884, + 0.1700600561224439, + -0.10710507416422561, + -0.08134501892622406, + 0.08726067849438637, + 0.03525153297579077, + -0.028206053144784627, + 0.013714604871275122, + -0.14534949472580302, + 0.05313690357156159, + 0.1338306643232696, + -0.08417471248678343, + -0.051108719165563504, + -0.08223818034509252, + -0.24980841782650087, + -0.0333015861875316, + -0.12408560813825671, + 0.07376427999016898, + 0.07682113097497391, + 0.003828205089996001, + -0.05954900165678937, + -0.04160409301963579, + 0.1804323809141577, + -0.014687433744398149, + -0.21030840332135614, + -0.14208892392713499, + -0.04991472184802758, + -0.007267735041838286, + -0.25887880060000995, + 0.0899435575751194, + 0.03510315567729348, + -0.1590124411603203, + 0.024647211262201478, + -0.14613825587185225, + 0.028827410234496406, + -0.06346718754308933, + 0.15838345883320526, + -0.09871645016841751, + -0.014354779962586479, + 0.01093729540502501, + 0.006653438488153154, + -0.13068281020728367, + -0.04436701599860716, + -0.11479260559869427, + -0.026346955640721943, + 0.2123153814369407, + 0.11445716800854822, + 0.01408566969261469 + ], + [ + -0.10327755641421826, + 0.019648692240360335, + -0.003835459265329469, + 0.030920217843185833, + -0.08267846898989345, + -0.1709046046725988, + 0.04234889105702244, + 0.06682849236203169, + 0.2408854975679025, + 0.23958320252226015, + -0.0761602432652463, + -0.051905190494366184, + 0.028419633523976008, + -0.06615127246061663, + 0.018287775685112077, + -0.11817710701273208, + 0.04994505514813389, + -0.15123872591637685, + -0.026995918508364993, + -0.08892512955351396, + -0.04198160302862108, + -0.08494627703060968, + 0.023807350831334423, + -0.06463839889706378, + 0.012873940295177617, + 0.02311919770155334, + 0.10490713796354323, + 0.0530018019959597, + 0.0688273675653745, + -0.1473365789022317, + -0.009494834254201494, + 0.00867272133909721, + 0.18721236475891292, + -0.06973953766478917, + 0.06222253314952571, + 0.1320197030038497, + -0.002099107553039976, + 0.08435924172016293, + 0.19894323919874973, + -0.2059704466801031, + 0.04385816970119618, + -0.1067390337794548, + 0.045149047239920775, + -0.015895581995740093, + -0.15913030598022826, + 0.04515342449211436, + -0.05648122183955848, + -0.09244350978747962, + 0.03283608512218251, + -0.11976863832263161, + -0.1442333956314172, + 0.04425212317335028, + 0.2527812149168793, + -0.19493548450139125, + -0.08092290633734024, + 0.18457849084837735, + -0.0537459869052945, + -0.09725350653162222, + -0.18029721280342537, + -0.035538201971816154, + 0.15216756289943992, + -0.137068593112418, + -0.17327593305189776, + 0.027632555493430605 + ], + [ + 0.1193339162439978, + -0.0961253801881952, + -0.03735827067710882, + 0.024049365810723998, + 0.08797004473676666, + -0.20100726182875503, + -0.11840868325389187, + -0.08959484014903543, + -0.03625558783566899, + -0.0996482464008158, + 0.08606854386867646, + 0.07822460045824046, + -0.0065933541758572845, + -0.05886167942348493, + -0.037311644172524104, + -0.19342915739674582, + -0.08754123068088035, + -0.04924527074438747, + 0.1240272882433195, + -0.023230393288054364, + 0.06423598613121709, + 0.040425445250280745, + 0.08146763340400659, + -0.07620671475948726, + 0.023257267264708257, + 0.07887639425337509, + 0.013174042550285162, + -0.0017865305148675086, + 0.053421042060256045, + -0.08436370809065005, + -0.057928906425357224, + 0.09416386776567526, + -0.022047827156935915, + 0.032023782664521085, + 0.25209006665059397, + 0.03056979990104009, + -0.13107324203189982, + -0.05652535154468146, + 0.008131055879417875, + 0.1261276851023325, + 0.0010872684348004686, + 0.00975844467965651, + -0.05006857350119407, + -0.0394821310662627, + 0.04661751435460468, + 0.13305401473806655, + -0.02365613743644614, + 0.04048042664689449, + 0.02451199186996825, + 0.020960502033481425, + -0.038341730771934035, + -0.005833878124386939, + -0.12102440651895158, + -0.021608987652396196, + -0.14061634243353072, + -0.012910958148896944, + -0.004782667155532684, + 0.11643528363344727, + -0.2329061592390761, + 0.17674084019776587, + -0.20821463059931822, + 0.24274786559521797, + 0.06107597486051641, + -0.15304049698167632 + ], + [ + -0.08126933842067559, + -0.11026686276132591, + -0.1626850813580454, + -0.08179720483790649, + -0.004172328594013171, + -0.05837715272689436, + -0.0730416950650729, + 0.00031511847255754136, + 0.09105458802814995, + -0.025989981769457167, + -0.12460176422915548, + 0.08319639381355412, + -0.016573508888483173, + -0.03939372898641455, + -0.18027923278932426, + -0.0036373014273431282, + 0.08592688884389482, + 0.06889892194476215, + -0.035066401695210955, + 0.03563308305718179, + -0.0049959448979553615, + -0.1351594496349343, + -0.08794911496931496, + 0.009100635476317107, + 0.10499183322046779, + -0.10795991371229781, + -0.009760170949791891, + 0.047878282636809266, + 0.06622877243657523, + 0.04834800571986233, + -0.09535077219305353, + 0.1051914947526213, + -0.22295357017790823, + 0.009729600149822916, + -0.15294160329691767, + 0.09790451312879277, + -0.07013068127988763, + -0.059465445950901946, + 0.07766573298879026, + -0.0465310128327475, + 0.1598087157687942, + -0.05244675718544001, + -0.10924966500944329, + -0.1580089387050867, + 0.09009377216618103, + -0.13291020047988092, + -0.24127329110711232, + 0.13740936226420578, + 0.0017430182293047885, + 0.03172594324678599, + -0.05107149340802707, + -0.02520363181547687, + 0.07108324577898932, + -0.06777032024762453, + 0.04750031866774132, + -0.1296060092329364, + 0.09095688005785692, + -0.0621957426989918, + -0.06596710411853629, + 0.04481564349689878, + -0.0033080991269949394, + 0.12489960441673427, + 0.09474717284550481, + 0.23086515300627963 + ], + [ + -0.19566131668707337, + 0.004856619805678524, + -0.010956131528221535, + -0.044795221812977556, + -0.13405472204818505, + -0.029046151673861723, + -0.16310071307668284, + -0.08419859722348533, + -0.07087042098873951, + -0.12878548408294951, + 0.20904726445466393, + -0.02562882697601144, + 0.024342329503216978, + -0.03550385655028336, + -0.05194187348564962, + -0.05811141009175587, + 0.002532406553679827, + 0.013281037787354967, + 0.08367369856764145, + 0.0013924355037470487, + 0.16936330007535402, + -0.01178380737665045, + -0.00903514440833225, + -0.07177977129711671, + -0.027224603424065314, + -0.10603849860023794, + 0.08918096087671301, + -0.07363632698315468, + 0.107056511730513, + -0.07826979299235819, + -0.0021789203301461058, + 0.020006237526575252, + 0.02064745745877311, + -0.16480598771332025, + -0.09470270273738, + 0.13575105299143578, + -0.20559134728478284, + 0.025376621461013833, + -0.1679260678063462, + -0.2437007651293334, + 0.0776972756571924, + 0.13192791284397476, + -0.025859703034660522, + 0.05830973916267686, + -0.026153441552800978, + -0.11541579460767448, + 0.02540056011971338, + -0.04404488707843096, + -0.10101951682868954, + 0.040150179530937816, + 0.04865723546272178, + 0.017406086561019666, + -0.052101622151828036, + 0.03465567254256018, + 0.088212204060429, + -0.023323371102636874, + -0.21845465365418565, + 0.026930234415461697, + -0.027671358096860173, + 0.17758987348401417, + -0.14213936873999994, + -0.1253932383561482, + 0.05542979798119246, + 0.09755998209264839 + ], + [ + -0.0861770258859195, + -0.16557621551584523, + -0.03574668597077173, + -0.11280208743562398, + -0.06872257561654581, + 0.028576074204083948, + 0.043956910760168263, + -0.139948344012936, + 0.011617483871880009, + 0.026884064786266784, + -0.06125427912157321, + 0.14581831913290108, + 0.06273136635081528, + -0.041138237534222806, + 0.012720007636105719, + 0.09550494571921093, + 0.1206372060364862, + 0.02598206376033109, + -0.090536288984743, + -0.1112416359958647, + 0.008366741124238157, + 0.19942215426424, + 0.1479898606551655, + 0.0005558316599178517, + -0.0660372493602973, + -0.1439914484928416, + 0.06458946653215678, + 0.07639679299451924, + -0.0434221599600361, + -0.10345748430848947, + 0.060609237111204944, + 0.09141216408008258, + 0.18076783098728377, + 0.07074192624218988, + 0.020726980729870663, + 0.11688882079713002, + 0.010186768240451326, + -0.03339096928790491, + -0.08571995006196548, + -0.08863118285285734, + -0.21072254731260404, + 0.1093512825486201, + 0.04437477426875605, + 0.10280959625702545, + 0.07398806400915825, + -0.010314254474650673, + 0.08981146184478905, + 0.04353388814993084, + 0.06331821000777964, + -0.1148649161446132, + 0.0724600987741508, + 0.07411824026317142, + -0.047466435265799106, + 0.02372153112920439, + 0.08025022076640748, + 0.04918058930888413, + -0.0270147992201719, + -0.028673346984646488, + 0.008137305756420058, + 0.05943856783677202, + 0.109400188127959, + 0.0035412714146521025, + 0.10949892129041211, + 0.04434376804774388 + ], + [ + -0.22022951337780336, + 0.026672490852392868, + -0.20944901345352368, + -0.06716708489195324, + 0.14944327436106103, + 0.06557496890317764, + 0.008061462550820745, + 0.09898963085237243, + 0.006991176364686428, + -0.14007665678600714, + 0.0821555174053329, + 0.2554650911653082, + 0.04973136293071027, + -0.025296485001098726, + 0.1459152530504908, + 0.20285898348781958, + 0.06606328045062064, + -0.1570598245392284, + 0.054117633386361656, + -0.04694590430855575, + -0.09226491187629124, + 0.052927486052269435, + -0.14166058112757693, + 0.10543143530282811, + -0.046749896439308714, + 0.06019231481864822, + 0.019756544726878312, + 0.08797512863366336, + 0.0030962255182344664, + 0.02461256880938788, + -0.01912920768773881, + 0.09370825312150961, + -0.14431109883060772, + 0.1319709679269012, + 0.06070716128271713, + -0.005887482531390906, + -0.19295141945089253, + 0.08377354381220449, + 0.06855730892273938, + 0.05734256450512992, + 0.05066788449273041, + -0.03969381168954245, + -0.03888204642267216, + -0.19539505409208002, + -0.12715829611695076, + -0.05014615682709871, + -0.0354831722419106, + 0.03073509412251483, + -0.17208623184509556, + -0.15043320435098073, + -0.03149999649803576, + -0.07068901924719456, + -0.1542422202945739, + -0.008921356071569304, + 0.0061233307384872164, + -0.10638762308403743, + 0.12180466512191142, + -0.01841159452046724, + 0.09518181843623422, + -0.11186692621605605, + 0.015126214283581803, + 0.16904263349719473, + -0.01767896657909786, + -0.06880525874122008 + ], + [ + 0.14445857827373826, + 0.16779833664447663, + -0.12219280620204401, + 0.00931345145317722, + -0.09267985273993205, + 0.005588558871241162, + -0.047926855848191126, + -0.15011745551307182, + -0.011858404512633883, + -0.16124655921538902, + -0.04150321941047616, + -0.07107553482921805, + 0.08939789047438534, + 0.015267888102059797, + 0.018261753155287892, + 0.021443776691449076, + 0.17053641947262466, + -0.1224558368739694, + -0.1148256558476404, + -0.04416499138216595, + -0.010769719798207063, + -0.0020265168635221994, + -0.09536862454410644, + 0.04482539085796019, + -0.14182865915637943, + 0.038379706379853704, + -0.2754985897605987, + 0.06095152773832651, + -0.13700088339574407, + 0.04922843604056606, + 0.23487337123464697, + 0.20219347080946154, + 0.1703385582644158, + -0.008044272961605708, + 0.04224216634084835, + -0.0975556054163757, + -0.11516789131449845, + 0.007416673138027978, + 0.13243972655345002, + 0.2070035134147748, + -0.016668176982920706, + 0.05366693058153948, + -0.1107257027814089, + -0.005206209535186714, + 0.17017869315810735, + 0.07397386792644953, + 0.07754093699869491, + 0.17056084040972286, + 0.07832939175483405, + -0.07055162186145382, + -0.00978150379168917, + 0.007777718289608062, + -0.050375962727045615, + -0.035409539922297596, + 0.20167943062915447, + -0.10423334245795002, + 0.01529783998429693, + -0.01639821376825272, + -0.15144658724994656, + 0.05011937666509012, + 0.08741124525972226, + -0.04660265853454501, + 0.07890744684501089, + -0.048668636924887036 + ], + [ + -0.0298804600766321, + 0.10467202272142746, + 0.14801926326231038, + -0.11505218626816478, + -0.1663633820323972, + -0.08978351799300861, + 0.11118848691496107, + 0.10685475148772301, + 0.10803847999681265, + -0.10277984341899067, + 0.07090298763183488, + 0.06523296963550877, + -0.065032786832929, + -0.01788254472703701, + -0.04013994593679395, + 0.08017984355844393, + -0.06918866297460732, + 0.05096436003984711, + 0.04713570214092489, + 0.15083907739451408, + -0.03154075843847189, + 0.161371147327533, + 0.16811636593658846, + -0.014735334867475514, + 0.0675326822533105, + -0.027247566046776084, + 0.145991059377781, + -0.10834396689274206, + -0.10151800503523233, + 0.03899589627984699, + -0.030224840777890085, + -0.0141630002515974, + 0.029626537669042587, + -0.1156499657558901, + 0.042600833075719435, + -0.1389914593025993, + -0.1907576488811402, + -0.007323624877662658, + 0.036638502049354725, + -0.14988802508940977, + -0.06694136825930368, + 0.06797669329856298, + 0.12422584601997547, + 0.04263524761381042, + -0.03432227378014409, + -0.08482182134256665, + 0.11120644197790973, + 0.012727275650433703, + 0.11103012285227475, + 0.12443202778403267, + 0.1715128434620685, + -0.043126189290252415, + 0.0011988766551784475, + 0.13288695082102675, + 0.037877734876387806, + 0.08512746196309781, + -0.0193342657869366, + 0.23007202431655782, + -0.08529882632014346, + 0.13283630306351604, + 0.03031857187286697, + -0.011120356328894174, + 0.03709528829223207, + 0.09118134100789843 + ], + [ + -0.009133606325460716, + 0.11418249447274803, + 0.03472960420949394, + 0.07024072294261435, + -0.018388759660756187, + -0.003530183053674231, + 0.03926192508635867, + 0.005489073675084135, + -0.08960526576664068, + 0.083405074416684, + -0.07713462847607999, + -0.04173137919603873, + -0.056894700951534496, + 0.058410176885251235, + 0.049890291966179494, + 0.09006048690242893, + 0.07653241599588322, + 0.02254699323937502, + 0.11212883789394595, + 0.10097485176225068, + -0.12908039634785717, + 0.0862778593455995, + 0.1299982523783989, + 0.16562967103895349, + -0.04047707294871962, + 0.020273454082133754, + 0.0666770003468554, + 0.060806146218455995, + 0.023478202595602987, + 0.010332461718724782, + -0.02632627607544102, + -0.1749776348482692, + 0.04676842070173412, + -0.05833163038704972, + 0.15457857096167021, + -0.1289167241483702, + 0.029482485655684523, + 0.10599520385772272, + 0.13288937447550878, + 0.024578367494817014, + 0.04015202074954185, + -0.12094049568584152, + 0.012871585628917282, + -0.15877564623111143, + -0.20020968587521737, + -0.06470073495169419, + 0.1023429282389019, + -0.02415403279548595, + -0.02380867248094433, + -0.026676597607239047, + -0.07632020577039528, + -0.11188021131239334, + 0.17975858379530896, + -0.18941896684703932, + -0.07883355602105788, + -0.14193794526938883, + 0.030459900949707637, + 0.1616427967106402, + 0.060315718985606274, + 0.03746206585687938, + -0.09041243448879094, + 0.185657459163543, + 0.08542126652420885, + -0.011793599942112406 + ], + [ + 0.1797907453130398, + 0.11615574763495343, + -0.0005945667470222413, + 0.2039714070817905, + 0.07795144850522855, + 0.05106078827295504, + -0.07613444131725375, + 0.03194496554959228, + 0.017158937778273122, + -0.10085140440227987, + 0.0665586594408961, + -0.009104827730071501, + 0.23733344644156215, + -0.04285919758440849, + -0.2522761689438274, + -0.1500857604602741, + -0.2239819622858585, + 0.03432061169717012, + 0.1109200009635416, + -0.04818372543140355, + -0.013407016749864206, + 0.10718004909194573, + -0.0838817783813971, + 0.0371576820083258, + 0.04703473988338203, + 0.03566679497771061, + 0.05174119502742948, + 0.01486029268874601, + -0.14045665940483035, + -0.1698871864148408, + 0.04567890404925694, + -0.04830823755911637, + 0.11358383400848422, + 0.027788661247639426, + 0.10641834835124064, + 0.0900736644038044, + 0.0383827206086184, + 0.03182717583737113, + 0.10179239426692901, + 0.057343276806646686, + 0.1326393406183115, + -0.09022992758482332, + 0.01374139378247688, + 0.09023291476544225, + 0.04976150823259887, + 0.009754090727368069, + -0.09358347039919966, + -0.03335240989050798, + 0.05678684856016785, + 0.029597096266469988, + -0.02713221704383395, + -0.1194709199353089, + -0.22652639107212758, + -0.0561897850532045, + 0.0034654905545106977, + -0.0095922487187285, + -0.07332078477749879, + 0.08459659679742576, + -0.04964971468400395, + 0.1109896581569234, + 0.16063926550629046, + 0.041468202294617666, + -0.019037244445099195, + 0.06302540263011346 + ], + [ + -0.08621804997719325, + 0.06428794067195047, + 0.024656384912038608, + 0.1202819747295731, + 0.06316272966799734, + 0.1915447760102834, + 0.05838062882565394, + 0.18744245590236838, + -0.16146933305093092, + 0.05029887172503207, + -0.023189421711699285, + -0.10740415000963349, + 0.05737658967642816, + 0.06968880424618566, + 0.03589924089411942, + -0.08325935667077515, + 0.16225535725430332, + -0.1464632917523004, + -0.1200682755117411, + -0.05825106818484832, + 0.10387853842015977, + -0.03282316338751746, + -0.17220803423944475, + 0.08238240715598158, + -0.07571738478461883, + -0.006864565298703261, + -0.056862785085423286, + -0.20993943516988695, + -0.02049006691198837, + -0.04745711182425137, + 0.028147672891165012, + -0.02864578623141134, + -0.04493562778524864, + -0.1170407633412836, + -0.014324327566729432, + 0.05438624450232213, + -0.1244615439248914, + -0.014773901242082395, + 0.05335115288316991, + -0.08270002657194286, + 0.015459523091335635, + 0.019401225264849747, + 0.08514448972546242, + -0.0019191551799242583, + -0.026311622411769865, + 0.1193963097202107, + -0.098256068898774, + -0.06260892583434939, + -0.15403106013462195, + 0.06293681268870553, + -0.16023334461100947, + -0.08337023436339966, + 0.09458263960590158, + -0.03530287681174709, + 0.3012462367149396, + -0.007153432074239333, + -0.09360502421623831, + -0.02182404810570185, + 0.2170380731576207, + -0.010606086277730844, + 0.07190857985649556, + 0.04849162601732534, + 0.145867397461986, + -0.05655535164781215 + ], + [ + 0.029058071999074588, + -0.16287478234926978, + -0.053829068867734226, + 0.003456956432696333, + -0.05731781695917703, + 0.04602891158352524, + 0.040530082066157734, + -0.1554279782294136, + -0.09555311889920189, + 0.11467328330013303, + 0.02685699128265417, + 0.07049514577702307, + 0.15362407183721727, + 0.006843641017914632, + 0.0871023920545826, + -0.05495049986428711, + 0.05836833045459075, + -0.056327526386059895, + 0.12689243505860098, + 0.014511641918654047, + 0.09472005749352967, + -0.016682223170890447, + -0.11984110355184481, + -0.09122200369484502, + 0.15640065484258414, + 0.00814757650702888, + 0.03113186465662987, + 0.22776670831754042, + -0.004725568780292741, + 0.050135785658750764, + 0.14668590831829836, + -0.06772938174424593, + -0.03972650527239854, + -0.04618208107178667, + 0.08551348526611963, + -0.06847159907120247, + -0.16404005767586152, + -0.09903788694556341, + -0.0428132637475549, + 0.20117242743877092, + 0.09396001336870655, + 0.18241614969928657, + -0.0009013408221640369, + -0.0649437218256226, + -0.07846749509582426, + -0.03257357695170628, + 0.047541323853534136, + 0.09707667669871074, + 0.027676514722513885, + 0.19097485240351242, + -0.02642698820798143, + 0.06600090204618468, + 0.0731235885253847, + -0.057112878523971594, + -0.062575330066651, + -0.0013153302367638208, + -0.20228759170561075, + 0.053318907972432994, + -0.04169293559838737, + -0.010087356378266923, + -0.06012690646534481, + -0.1515963270835305, + -0.11325438676101113, + -0.04005941357423446 + ], + [ + 0.1329016554293157, + 0.10458559074700279, + -0.11033068629562037, + -0.08484014020709027, + 0.0006356730456288605, + -0.09372562114437868, + -0.06276558638705945, + -0.014315068847638272, + -0.08929063940428643, + -0.0536600164786504, + -0.0018125990095371755, + -0.26157376562561113, + 0.0029398938499534174, + -0.21677240723838664, + 0.08675586200068701, + 0.11719024360640438, + -0.04142765590980567, + -0.032993278246405966, + -0.05088637206881616, + -0.025496601197712798, + 0.005958122881387248, + -0.22629655439667756, + -0.04229615556669007, + -0.011283623434614356, + 0.16090138322968275, + 0.09749313153727225, + -0.08500000361416449, + 0.07838508217166329, + -0.04897926754437812, + 0.02183223927862921, + 0.13314238086583333, + -0.07081547541346943, + -0.11456519275818584, + -0.05074053069896145, + -0.05478189790596292, + 0.04393157422982411, + 0.09080436420827251, + -0.013862160683866502, + 0.10588398627713279, + -0.11613016495025891, + 0.006006520258491146, + 0.12777835039271454, + -0.056449336991034896, + -0.10433763060691757, + 0.0958630696359378, + -0.20554663122638508, + 0.12534185517917812, + -0.06072693879792174, + -0.015938251645532385, + 0.05286016758935022, + -0.09449114474644317, + -0.12279578871642394, + -0.043143626251308895, + 0.04170088406398455, + 0.07000761490945809, + 0.12678976230193972, + -0.08692678970931945, + 0.09891138553839937, + -0.13587636860683133, + 0.007964262658564527, + -0.04620843782903624, + 0.06025756458943177, + 0.24586323512057118, + 0.09422395086779072 + ], + [ + -0.04718866623243717, + -0.14583496570222593, + -0.006129568731056901, + -0.020260870693569993, + 0.055131202546156804, + -0.03195390127442344, + 0.02461828466206116, + 0.1501438210771564, + -0.03565172998742116, + -0.11147217766283093, + 0.017465881368449666, + 0.06634330650040678, + -0.07423643801800427, + -0.08968416294714604, + 0.24921402329287537, + 0.13222268430447445, + 0.04647809255606469, + -0.11528995971625873, + -0.054316079882360015, + -0.22546090349981285, + 0.038788506647994304, + 0.02312952516767263, + 0.0892758599788212, + 0.03960339893877379, + 0.015397423174805084, + -0.06980779157124198, + 0.11994750111514801, + -0.07848808359764214, + -0.09401263177164071, + -0.1819994087100226, + 0.018240249584830056, + -0.13875147862117693, + -0.07174855110459188, + 0.17280724021037863, + 0.05857864314291869, + 0.12380609743132304, + 0.10204703779625833, + 0.02381925096313896, + 0.05354913777551354, + -0.01857176677916075, + 0.018800844181585147, + 0.13087911762765286, + -0.2323413653149467, + -0.0981622342919564, + 0.06123763220955736, + -0.12992159660943603, + 0.027229767186792975, + 0.1531395147115147, + 0.005550119460977081, + 0.028887097932106778, + -0.03001396894724804, + -0.0028826361212908017, + 0.026865323902800345, + -0.06385657430581633, + 0.01706387655064499, + 0.1932988247310399, + -0.028464938876897536, + 0.022864461138513786, + 0.24723240790051207, + 0.14931854932130847, + -0.056815171333174846, + 0.13996024824968184, + 0.09456438637117201, + 0.03423854935508166 + ], + [ + -0.10723507282187938, + -0.16502446828898343, + -0.09449017509630442, + 0.05018413142864162, + -0.05173299666943964, + -0.07233634225070569, + 0.0995234594237071, + 0.07070634594392138, + -0.027778792770894806, + 0.10750521531110178, + -0.13485313109783345, + -0.047014181305490524, + -0.007400590070395148, + -0.11105895502338259, + 0.11465561679742023, + -0.1147258540966037, + -0.024026272234401347, + 0.046117198559689765, + 0.014593497528642616, + -0.06351578762244241, + -0.14013500605954252, + 0.09657120283873165, + -0.02340992241395007, + -0.1317288086383119, + -0.03462002083814209, + 0.08846892074417917, + 0.13712748064204155, + -0.19864982115532973, + 0.029421786834807145, + 0.009001927154955836, + 0.0046099293188217386, + -0.03877136124893184, + 0.14144866907926865, + 0.06083716490093221, + -0.17242867857122318, + -0.3746678676006598, + 0.12084363642917972, + -0.10638280642386842, + -0.0385487486830275, + 0.12954726583504325, + 0.2396175070140789, + -0.21998480600947037, + 0.008717496143978017, + 0.10276112037992353, + -0.1445276238631812, + 0.10709314118212197, + 0.15008952050509947, + -0.21415893495537985, + 0.015402570331967161, + 0.022756122779616722, + 0.15572653161915342, + -0.22981078466025018, + 0.010129792283032853, + -0.03692509366261891, + -0.10742394396468541, + -0.1896234071098759, + -0.10374932904850187, + -0.10227278105458265, + -0.09673545283013793, + -0.08846286917384115, + -0.09023095378494503, + -0.010247113175223945, + -0.04919496761534431, + -0.10456845234963147 + ], + [ + -0.00027764290128535834, + 0.015170531845793256, + -0.15636860878673434, + -0.027740462865390943, + 0.04351638177996569, + -0.07763890721734393, + 0.0298074329600104, + 0.1683645677821024, + 0.11033474671041173, + 0.20181043230130752, + 0.10824939195360833, + 0.018184556592321984, + -0.04857741117895204, + -0.018536896542727006, + 0.09085374472743647, + -0.2497618164597235, + 0.04283869838034636, + 0.0017052658086330235, + 0.0832491668384398, + 0.014502111004063276, + 0.05065639469353331, + -0.012224386154189058, + 0.008513714191973568, + 0.09787745307381024, + 0.10328167678411587, + 0.1466281754771926, + 0.17357996990215724, + -0.020470269357412318, + 0.03172460057383361, + 0.12449440281208844, + -0.07002949973291143, + 0.160644022156976, + 0.05885679832507528, + -0.049047511456432366, + 0.013068490045797422, + 0.0011856007156037466, + -0.04412373304715332, + -0.11386321764313452, + 0.03489149641404502, + 0.06905698021045084, + -0.06143976520002843, + 0.1240624254252266, + -0.09953538954093226, + -0.0035625776832641787, + -0.01652249016046213, + -0.06357519275543153, + 0.018453599253710654, + 0.08981023976681159, + -0.07821612871629349, + 0.13767791842742302, + 0.07433380502849894, + -0.06628707215733104, + 0.19643010207946932, + -0.05746158617840829, + 0.009843526537600164, + -0.08714955223874268, + 0.1541615729957537, + 0.00371909334222326, + 0.015991730451049353, + 0.033659903563237996, + 0.16562187713613477, + -0.026805026071252815, + 0.08408931702620177, + -0.189922668775401 + ], + [ + -0.027657854231111192, + 0.1351078625438311, + 0.035400316854951625, + -0.0015556264345970453, + -0.007283030714962261, + 0.12233467893177355, + -0.06116666449549775, + -0.18200217321787615, + 0.0984807373747512, + 0.011858109377008597, + -0.03508422640165828, + 0.014393112804265515, + 0.1224103101028558, + -0.05826653385198097, + 0.08092827965777466, + 0.07788480847600868, + -0.14536463879234537, + -0.05412479137894232, + 0.26433955714170326, + 0.09951464976626442, + 0.022090284892926304, + 0.09568481209783018, + -0.19223621206820854, + 0.09088298468283504, + 0.010598256310734147, + -0.051564530609027104, + 0.21649509494873287, + 0.02666462252300954, + 0.009670204596687201, + -0.21225424670010848, + -0.025819492906924188, + 0.033298659378248954, + -0.0924396201042362, + -0.1406420801036839, + 0.10775007026331494, + -0.2016740018128047, + -0.007618602646348477, + 0.14590145837124388, + 0.1606948088917136, + 0.0669382137586212, + 0.0014959800196280959, + 0.0648464835977194, + 0.09986945524215207, + -0.020536589810083775, + 0.04672443816824253, + -0.2224100258758333, + 0.11434763022195689, + -0.0009280893999235577, + 0.06683123279134028, + 0.155347284890451, + -0.09338618180873175, + -0.13636386238620665, + -0.09115908343489589, + -0.058711637780482745, + 0.11335302510414394, + 0.14968058332271786, + 0.045580454420724906, + 0.09986539339726935, + 0.03734069757786034, + 0.10741906940321413, + 0.03097434454881985, + -0.04840542495205659, + 0.019867726664433025, + -0.057644420067761375 + ], + [ + -0.005164456726643098, + -0.04303371435875887, + -0.07048816028929042, + 0.012062794929391692, + -0.008737999034202778, + 0.04635690964404293, + -0.1496244595053493, + 0.0655031624374418, + 0.06351333668489086, + 0.12801063205237684, + -0.03593964757411463, + 0.00276693802297021, + -0.18845800142157998, + 0.2121320173976296, + -0.026810843723788537, + -0.07941722319782346, + -0.0401864412052626, + -0.12261591604941863, + 0.013609210928666482, + -0.1300483699406735, + -0.09259514962791503, + -0.040562199735742044, + 0.013046299547973603, + 0.047837579251540675, + -0.05497589761311326, + -0.0027311503817610953, + 0.17245463835739627, + -0.01555581859697068, + 0.10876686854083309, + -0.05536361225312576, + 0.07305649325233733, + 0.20951765302740757, + -0.012453617822011471, + -0.13515072508852172, + 0.011472801989059627, + 0.07989829943681198, + -0.16425895192077544, + -0.12439326542555379, + -0.024599379793168907, + 0.13079376959168243, + 0.05646285546729121, + 0.11467249554412767, + 0.15907106045749927, + -0.020431200852562628, + -0.02923262635836381, + -0.07160591910780263, + -0.043616290496057634, + -0.020796398581471212, + 0.12302667609508684, + 0.1389238071321861, + 0.12053988576549408, + 0.05309308156098246, + 0.0251250144177804, + 0.03372276891104486, + -0.08938419039496885, + -0.06284571248191576, + -0.05019980972365186, + 0.0076508581286592525, + -0.03424830221952941, + 0.04667860014041209, + 0.0381010950068642, + -0.08880337816903845, + 0.1769792182798357, + 0.1426800915963396 + ], + [ + 0.019295282776024533, + 0.07429013093873957, + 0.02754782325974179, + -0.05556818397269321, + 0.0544412747493929, + -0.10332352253161732, + 0.08438175418945544, + -0.07601632964312843, + 0.09742943625696512, + 0.02013495787505129, + 0.21839291240481562, + -0.049882013459792145, + -0.0676384403438815, + 0.17960636722028347, + -0.0738922125579332, + -0.08351241978949174, + 0.13371333801349825, + 0.23036184271472002, + -0.06707561601410438, + -0.002048627276928626, + -0.06463935553583341, + -0.10839699596069248, + 0.010030815758550167, + 0.10149386326485946, + -0.05854652198171141, + 0.0672264381521591, + -0.057035426958280525, + -0.16258738703709708, + 0.14173483692128022, + 0.09755141692928754, + 0.03600750069114292, + 0.047573493822751084, + -0.02004239569987117, + 0.07894104634547561, + 0.1252789615059728, + -0.032814165806270425, + 0.04436922678501509, + 0.08159918734266425, + -0.01044604864910635, + 0.018550383198343807, + -0.05649862611123453, + 0.0092149208888201, + -0.15041611973917082, + -0.09692850246069457, + -0.049801887676449524, + 0.1557318068547413, + 0.05047901791495333, + -0.004972633397271523, + -0.11379276643338106, + 0.03493522472582438, + 0.09647936053151328, + -0.10681949292372926, + -0.07124100504576979, + -0.08171539700472055, + 0.0346982428485915, + 0.07793002819574842, + 0.029920333218791624, + 0.16419093181206945, + -0.1813031244467195, + 0.08928726205323712, + 0.09929306954164477, + -0.07001234467319067, + 0.05499387823386183, + 0.15606914303848426 + ], + [ + -0.026297048908503998, + 0.12576978317887122, + -0.03250461176132353, + 0.2323623347361898, + -0.16761387931309543, + 0.1218994894931263, + 0.1520984727643755, + 0.0930881419503185, + 0.16300152207013688, + -0.1387206834308874, + 0.012759073791084855, + 0.03064009824636789, + 0.08109919348137656, + -0.10807870726741393, + -0.0732628977989126, + 0.14964493194750916, + -0.10114340133609759, + -0.007687556257910487, + 0.0025227857382881247, + 0.05264141443080942, + -0.0008602983985354323, + -0.10505960975523093, + -0.06871929100972173, + 0.2249161041638352, + 0.08853442408826273, + -0.02560389193213334, + -0.08768917657962094, + -0.017988734593985947, + 0.004413342740582604, + -0.08561589614408946, + -0.03583940319838009, + 0.0035290241346817887, + -0.01976171771618163, + -0.09064350596174958, + -0.13289329646923007, + 0.1317345168057898, + 0.038132062904246145, + -0.07525573721108067, + 0.06335359143462348, + 0.05741357660608481, + -0.015752407389937946, + -0.013887164723173716, + -0.07663851752793747, + -0.06802726244517841, + -0.011715324499316893, + 0.007492617728448479, + -0.023865143452881075, + -0.09061471179846048, + -0.02605887541510629, + -0.03690309055467038, + 0.1491890904809178, + -0.05101216657640298, + 0.18318358748862223, + 0.03338488875400466, + -0.0715860733532479, + 0.10801312047528447, + -0.12130860923539344, + -0.05835902026648804, + 0.16321382615676563, + -0.05042704828267278, + 0.02427386991994164, + -0.043232817512438376, + 0.027115795788640734, + 0.1867929297875801 + ], + [ + -0.15120451690898018, + -0.02941044717718666, + 0.024618489684717776, + -0.006866099850066496, + -0.11800291182806151, + -0.2581978821790671, + -0.0699213354604409, + 0.05421592204751922, + -0.21388673829447358, + 0.010781179001525283, + -0.05750736480247947, + -0.03141135146785388, + -0.10577341002317034, + -0.061010035033342715, + -0.04448119026114028, + 0.06671048543714085, + 0.09184337520333305, + -0.04194233374512063, + 0.11481441463130282, + 0.03313639686292409, + -0.018699334765594284, + -0.005934895110195126, + -0.06167670235763817, + 0.08733681927149757, + -0.11206906230790577, + 0.17705318783740492, + -0.3147112356238889, + 0.165800900908216, + 0.1667836519671091, + -0.017029324783729167, + 0.04728427961780461, + -0.17332730997708135, + -0.016591539670321846, + -0.008884696729673845, + 0.08091306977010937, + -0.055490708326295914, + 0.0505084953945809, + 0.19138941532556786, + 0.12532237509492206, + 0.07792708178270122, + -0.08464743868933733, + -0.030531125602919807, + 0.006102174275095852, + -0.004584884499699448, + 0.022081768749832184, + 0.12827857672004933, + -0.10093699884898276, + 0.09846381422149746, + 0.03417632823176024, + -0.032575862077881435, + -0.04577501426947073, + -0.04985079185148583, + 0.1561221478949805, + 0.11806243485640354, + 0.07009171887495136, + -0.004714737821594871, + -0.0449277836557292, + -0.09069042158783538, + -0.0760395639277789, + -0.0170993554900989, + -0.00666750064385807, + -0.034662366329846046, + -0.08728933686804817, + 0.11536662845429489 + ], + [ + 0.04724419150975276, + 0.07932087162081086, + -0.07712850746176926, + -0.03750522524174152, + -0.037369506130292295, + 0.009643039847851744, + 0.039189916525315456, + -0.05756874149509962, + -0.08058929320645426, + 0.12860003756014698, + 0.06461634460663354, + -0.009446992245747304, + -0.12334495318501698, + -0.06911800412949858, + -0.12675379436096487, + 0.03558716002362215, + 0.041458052418788416, + -0.11692827418737867, + -0.04222312381015155, + -0.10859203402083428, + 0.17174977624372811, + 0.1031179321686792, + 0.06120645020471049, + -0.03018420396707057, + -0.2059113509529488, + 0.17100429435456266, + 0.12358603702833643, + -0.0480883422815303, + -0.06003920323880925, + 0.1100236335027552, + 0.035342640679168875, + -0.09135617918046468, + 0.0009046964042788861, + 0.14107117233688635, + 0.043156608402991715, + -0.045375179845523674, + 0.020987602208590743, + 0.005263263466034978, + -0.0019506455517783246, + 0.09413669275715465, + 0.0588085198755866, + 0.005277871772858732, + 0.023278323032780848, + -0.008138859558879627, + 0.016987304898898697, + 0.02257965552343653, + 0.08895022977121814, + -0.05458679663638787, + 0.04569549044484417, + 0.16561076787509899, + 0.09519714309629007, + 0.1880578544690527, + -0.15238341941980163, + -0.04363068097612346, + -0.08475332628620925, + 0.21938722666149926, + 0.14305261218468643, + 0.006615462856439679, + -0.10286208208086474, + 0.13222101678301149, + 0.1265746325045044, + 0.026213788433974816, + -0.09617466165295314, + 0.08854870755489977 + ], + [ + -0.017270379536637813, + 0.16896534399148277, + 0.053794362582141556, + -0.18770335702045424, + 0.006836526119220223, + -0.08035381629384264, + 0.08113578912403392, + 0.08327331803632027, + 0.06155412687039257, + -0.015159365993425905, + -0.01569855967056003, + 0.14997752413150395, + 0.027634184813303427, + 0.10522842684577194, + 0.03831707828637293, + -0.07146173430054809, + 0.08694031046282671, + 0.00832771782679539, + -0.08341570629495176, + 0.06706238064924713, + -0.13046945694526874, + 0.02786999750907673, + 0.07984676023241033, + -0.02166920210288682, + 0.00910748866214739, + -0.07674160665695988, + -0.04826872033674762, + 0.04811755406134365, + -0.0663658513201357, + -0.05174695905620641, + 0.1855410652631374, + -0.16997073784818248, + -0.052875887861837334, + 0.09094908126976253, + -0.058954126912149046, + -0.12919295934424102, + -0.08331773200033682, + 0.01949647233991437, + -0.010855452764390186, + -0.0012307886980672013, + 0.04436595485996874, + -0.042191016337808966, + -0.014170511983382802, + 0.020644112162637104, + 0.005316623541837219, + -0.05145290829539084, + -0.06656716170001875, + -0.018212710969950457, + 0.02592057303587856, + -0.08518374754193614, + 0.034172858362866314, + -0.08022348780168152, + -0.03357139910405651, + 0.09776059535379862, + -0.09110226678657268, + -0.04968190304684156, + -0.09036753836485253, + -0.09016318783607542, + -0.03616040024032721, + -0.018246912310619846, + 0.043846879639421556, + 0.1467971999974586, + -0.09567725752031628, + -0.13339868655209486 + ], + [ + -0.10822131061116987, + -0.022402486036783072, + 0.027508331149009437, + -0.21325102397507673, + 0.008411445826771818, + 0.017040690637868623, + -0.03224881134328561, + 0.12866804667239345, + 0.040220063176344974, + -0.10615247575272238, + 0.003717026334222014, + -0.05385199386998063, + -0.016989575015440708, + -0.20629210330984096, + 0.09099023348759129, + -0.10344134008162403, + 0.06998021048403029, + 0.06959373172897723, + 0.040451661202471116, + -0.042246990364707436, + 0.03675445033632342, + 0.005777189969626946, + -0.09976718597479489, + -0.07000851502657011, + -0.21673445602871114, + 0.18980063262238012, + -0.009593487611032995, + 0.1108456062510528, + 0.07634416875112984, + 0.15141701669910557, + 0.053110800578848184, + 0.03300165382531614, + 0.15102005520683118, + -0.005757263167649568, + 0.14720133470927185, + 0.06071083769515299, + 0.10600322100159316, + -0.09141085890524961, + 0.07654941857836275, + -0.15778323822144746, + -0.22691382498735937, + 0.0644291389330273, + 0.02019879499833633, + 0.02290955339114378, + 0.09140566184393858, + -0.18582306464332896, + -0.06614321515586062, + 0.07230648509091374, + 0.01713734621129953, + -0.014335623567453926, + 0.06487177828233513, + 0.0025820123036513765, + 0.19027727556101753, + -0.07141967997722896, + -0.033011021247470546, + -0.03301018366598579, + -0.1354182288483298, + -0.11214338025149272, + 0.01062607889488721, + -0.09493680483740245, + -0.0440066365800989, + -0.2131684667709755, + -0.003242824438666718, + 0.11482244506389146 + ], + [ + 0.053123400509069246, + -0.08561830111442201, + 0.040282170267759154, + -0.2357888420399209, + 0.12181948172039506, + 0.001122334512384855, + -0.10937084352492765, + 0.04500157646627678, + 0.027839741681253246, + -0.05590452641713537, + -0.10699948338455632, + -0.1271464549301727, + -0.09993061779541235, + 0.05372707672268223, + -0.2078429038380362, + -0.05942414527290901, + 0.12254126896580764, + 0.13910365069674122, + 0.012546863816937849, + -0.14098323555667042, + 0.022429652842982616, + 0.1252405189415883, + 0.060893485307025, + 0.08740097520306253, + 0.009962601657952028, + -0.012968546861893141, + 0.13221110453062718, + -0.06501844317670702, + 0.07422386851677686, + -0.02667696251653371, + -0.2046416550544916, + 0.11692158786042917, + -0.11140443177023716, + 0.06406141253733802, + 0.12303823273066619, + -0.051055859497529534, + 0.018811147515868244, + 0.06481803810160226, + -0.09005270597123578, + -0.13974370458229213, + 0.11057755067870592, + -0.11371904297130034, + -0.11292951949037727, + 0.05299656038788325, + -0.07144625694405553, + -0.009970376226406716, + 0.17748143125990867, + -0.12466376287348213, + -0.08845298547674824, + -0.058937736121321596, + 0.055387033517046304, + -0.09242609247155674, + -0.1357115334850672, + 0.25228449929957375, + 0.19685894775853127, + 0.12742198483008846, + -0.02376240525466926, + 0.0009123889517157554, + -0.12210445538163067, + -0.07357139099845533, + -0.0247459257990826, + 0.09654474864527465, + -0.02163878300184306, + -0.0022202110965125347 + ], + [ + -0.09912746032107744, + -0.08205672773893852, + 0.06824645309943121, + 0.12926030084430237, + 0.09450839734575077, + -0.10128001627580488, + -0.018306335445885624, + -0.07845348393964467, + -0.12601166454265994, + -0.13303121537113452, + -0.0344414275640958, + 0.07530823593312515, + 0.001755262015429918, + -0.06211538631694577, + 0.07415707005023205, + 0.0005879474381119576, + 0.022993529137205874, + 0.10598932080652185, + -0.12877852722426805, + -0.0258288877270426, + 0.0022661980163326406, + 0.08498622200189056, + 0.010609556224412725, + -0.13130830560054996, + -0.09536500386378222, + 0.006220401906268342, + -0.059028575472435424, + 0.05986686534193023, + -0.17967211121475807, + 0.05356467911257981, + 0.08854539475935304, + 0.010885809190501756, + 0.17957723961534694, + -0.09627078121833837, + -0.0380585385964349, + 0.2252050722489937, + 0.04085038018588291, + 0.04954759403478439, + 0.016066410879212064, + -0.07608299254831473, + -0.03534045252066267, + -0.13212657060214542, + 0.011450328198043635, + -0.026927276850172977, + 0.2463852208568602, + 0.03419183925560577, + 0.05465537604380913, + -0.09893118755306604, + -0.1476146822891091, + 0.04674812057193953, + 0.15642766520785548, + -0.06283601405836102, + -0.020420463651893955, + 0.010222410749904712, + -0.1890585687367665, + 0.09790919221317097, + -0.049350593893847466, + 0.14387554337286054, + -0.13499641491618994, + -0.13594838891319458, + -0.08377810291376482, + 0.020245754424626984, + 0.17398279896722002, + 0.07428387369896038 + ], + [ + -0.05012631597097, + 0.07108788720436875, + 0.18003720903956177, + -0.002333184103611844, + -0.07485134649106566, + 0.026769936491961296, + 0.020563332435810065, + -0.008615563373527318, + -0.03469425547576548, + -0.16468817109563272, + -0.05238964019481748, + 0.005525454382116768, + -0.06741773477190066, + 0.00881138608660873, + -0.08745555304639785, + -0.0318905385276207, + -0.04476987472702395, + 0.026230737196250405, + 0.23637005404250214, + -0.1391516688131747, + -0.07235795581719334, + -0.11431111118572368, + -0.004428311640337889, + -0.1539735813159588, + -0.0484677658081687, + 0.1768318707851737, + 0.004438373672047409, + 0.10967486489334795, + -0.06634784964733016, + -0.04451996174656831, + -0.03404143557595847, + -0.08917943656132743, + -0.025626577576908605, + -0.08414231946110606, + 0.05509915898791826, + 0.05931012421925874, + -0.11975500247043469, + -0.058894712725715094, + 0.04559627860562916, + 0.2223727171771878, + 0.18070755786354753, + -0.05168257369151361, + 0.09728921803357121, + 0.21312913073496215, + -0.041416699023621904, + -0.12519702140910172, + 0.04899674988459107, + 0.03466377315844469, + -0.11393819800951502, + 0.027832214615045366, + -0.08634396909102457, + 0.02541303569184419, + 0.0028935243097458654, + 0.04303007703241374, + -0.07909023836046661, + -0.013202296333572346, + 0.05721640513166959, + 0.023773358813662167, + -0.025306181626783386, + -0.18239338664225285, + -0.16220671595184763, + 0.04971742748041304, + -0.07848470521486971, + -0.13076382207015583 + ], + [ + 0.16324055156705186, + -0.005359440703382304, + -0.039435522579002194, + -0.08861264455608847, + 0.12800972741810754, + -0.020403562089099443, + -0.31925784644606187, + 0.09040132545481637, + 0.1965329270508117, + -0.042672880383873055, + -0.19866848405183757, + 0.10609518724394132, + -0.05367112013100581, + 0.11993746172462033, + 0.16061421506268553, + -0.16678639761790673, + -0.10094683461879211, + 0.026427057129603, + -0.08401029688887864, + 0.04786800821273418, + -0.044770456764899214, + -0.0018787138729824328, + -0.04905459483751007, + 0.005847125418382818, + 0.18464842550705937, + -0.02470978534397926, + 0.05514996223028267, + 0.07355311663197546, + -0.06596550539125798, + -0.09175342825464596, + 0.0974041558245704, + -0.028484134493501775, + -0.005064218207520603, + -0.14735326577555405, + -0.04245616143582556, + -0.13646890612283746, + 0.15941455226307508, + -0.04881965900420028, + -0.1052832370943676, + -0.15996471471073534, + 0.10437610816812211, + 0.1652638030828037, + 0.019886278232957688, + -0.015024290221588806, + 0.03805177676796745, + 0.16391663973435477, + 0.020152328193578234, + -0.015727749831745998, + -0.048536527528392034, + -0.026055537656372574, + -0.1244889156890468, + 0.07686135400008293, + 0.09657863815034418, + -0.017514762659827317, + 0.13596186995562412, + -0.016888871032198896, + 0.11216198442774623, + -0.0746305317700731, + -0.042845760214769046, + 0.09844114779336023, + 0.07789773711489731, + -0.10668079026638383, + 0.14836320632092134, + 0.11638812992554425 + ], + [ + -0.17929426427047568, + -0.018951441908103963, + 0.025021401662643113, + 0.1949356891742049, + -0.04546302438746884, + 0.03163093644644145, + -0.02755622142949736, + -0.009398853754469864, + 0.012306422697387243, + -0.04719077982544613, + 0.11980145202923115, + -0.12795293836756846, + 0.16076629698502426, + -0.11445803287230072, + 0.15691341758207178, + -0.17583806062314694, + 0.031928966437838706, + 0.06291239992444636, + 0.03377847831472005, + -0.1394804634644525, + -0.0619264412893119, + -0.08398864235854231, + 0.162704955968478, + 0.06946054349052441, + -0.04492569411015073, + 0.021739678631926978, + 0.04592163147570949, + 0.04007897340365113, + -0.09257299842013747, + -0.07469763178505483, + 0.010596635861600813, + -0.08165602453091536, + -0.2141595718865662, + 0.03303190754268602, + 0.09073672374515242, + 0.112035470982843, + -0.14138199370706958, + 0.1151951980155028, + 0.11844793663799519, + 0.12675156104580104, + 0.04269832817716974, + -0.028863968492513055, + 0.03459758592010057, + -0.16931870610843108, + -0.25503341109253586, + -0.12123942650165709, + -0.12391772126663672, + -0.05301915470957266, + -0.08051627622532409, + 0.14878734241275582, + 0.03994976115817368, + -0.017852284396345824, + 0.06442185019672972, + -0.015815167670847136, + 0.06945631615294084, + -0.14815966840177194, + 0.0185077159566682, + -0.12818899831547542, + 0.016573219295477046, + 0.1481336313436396, + -0.047982424163172645, + -0.04313050236355083, + -0.006457933989058324, + -0.10228455466750921 + ], + [ + 0.06138419352492606, + -0.13357349272332167, + 0.008530833861916578, + -0.06981603318093643, + 0.12282313217063744, + -0.205097958246783, + 0.11932401320903574, + 0.005027814243071162, + 0.03754330605652411, + -0.0365597970116911, + -0.05721355933319773, + -0.09453188924333822, + -0.196961255522266, + 0.08364163427301678, + -0.0998555906324302, + 0.07332712922860929, + -0.006641157383506862, + 0.03305291912282264, + 0.01115844576205202, + 0.008546643994484867, + -0.04523533709887437, + -0.025252452967739692, + -0.039500434670939534, + 0.04804220552141828, + -0.04969485517936651, + -0.013211998363786748, + -0.0002309286519303923, + -0.030662585798817574, + -0.00028130308584491424, + -0.03538117282146781, + 0.12668643829066395, + 0.05307147419607741, + -0.04800804607336883, + -0.14123026535950844, + 0.06681530809967162, + -0.0033805716282599395, + -0.025094639696775556, + -0.09562524386754795, + -0.03148542685209789, + 0.12390281850573118, + 0.12580337079280918, + -0.004663788247980159, + -0.03736503720657381, + 0.09557481501486861, + -0.10143769916235193, + -0.11670601686799709, + -0.0015953726432291115, + -0.06079676349988964, + 0.12788738814806688, + -0.02154364605313624, + 0.06573309971956111, + 0.030063450580344778, + -0.2696704347294474, + 0.03928230109969418, + 0.08248685717838733, + 0.09660583009668369, + 0.019910927731826334, + -0.06027577912994039, + -0.012665534417605288, + -0.05477684987642552, + -0.09537768751191379, + -0.052818988404106586, + -0.04420168409273047, + -0.07006749555606882 + ], + [ + 0.02479165667444091, + 0.11522410110781978, + 0.12998837288398857, + -0.05086363621888922, + 0.15727325047575033, + 0.09387759651426347, + -0.14643948980335375, + -0.042236536715030526, + -0.044220568826697185, + -0.1307757822512677, + 0.05318442339062417, + -0.06383583726371793, + -0.002856830049286118, + -0.11939214739281433, + 0.057967680970287316, + 0.020312842453753862, + -0.051632882245636086, + -0.03245908463042003, + 0.09867211194429115, + 0.024744243931936426, + -0.036852065592547334, + 0.08863341221762573, + 0.1784359015184792, + -0.05953196988974248, + -0.08156738735422243, + 0.10325832988721347, + 0.08839093666430471, + -0.0870943595423163, + -0.15109721577074953, + 0.009537027806286971, + -0.0524588407431562, + -0.24711933405735642, + 0.07157833675428486, + 0.0774343367964073, + 0.1152510787242958, + 0.15601353060099868, + 0.09925384445419516, + 0.047526851346745815, + -0.03183040600883449, + 0.1705325115643056, + -0.09165398349438376, + 0.10881551645292305, + 0.03237891523880972, + 0.28391768599893785, + -0.015232322368007074, + 0.07204656062534068, + -0.143040483113781, + -0.014580606485860612, + -0.04410471886620698, + -0.1261343684675363, + -0.02130852403931565, + 0.013819196769195914, + -0.07469568281799265, + -0.18707261188900798, + -0.003919998725091767, + 0.10428759995138762, + -0.020722650883213393, + 0.08811154205693657, + -0.11087987011614929, + 0.04096499132684447, + -0.19288642063928974, + -0.07103841073365649, + 0.03778250240123978, + -0.1202016242433633 + ], + [ + -0.0007169418548251191, + 0.06381614408544788, + -0.08485013982207351, + 0.017074759133313532, + 0.10768708995556915, + -0.12976213883452167, + -0.2475881023837431, + 0.03826989359804359, + 0.051536222084249905, + -0.036441847061696835, + -0.0003716128163127276, + -0.10836992546353919, + -0.13795333245993652, + -0.10532420515600048, + -0.06367966174467642, + -0.017154718535893107, + -0.07398952077134961, + 0.028979364815077492, + 0.17663386078029905, + -0.1478777236542795, + -0.0032215533060497206, + -0.11386202587487593, + 0.04688829283209309, + 0.13016053956823506, + 0.15513847071590792, + -0.022268493307698325, + 0.01718223561613111, + -0.03742734597727186, + -0.012131685711386756, + 0.0287753787937942, + -0.18354076113467327, + 0.09548258174649032, + -0.02484695048685553, + 0.05648949800314382, + -0.012862065696731196, + -0.11060994554844883, + -0.08937957600240609, + 0.16352757651282102, + -0.01112147730310768, + 0.12920016322616537, + 0.08895394870266213, + 0.09814689447153468, + -0.01729832519309153, + 0.00954128850382775, + -0.009864316745898515, + -0.08854373828977145, + 0.08919908045867864, + 0.09705492479848425, + -0.05693952184255196, + -0.05909372692843299, + 0.045003982872841505, + -0.03937160483782936, + 0.14167095432463356, + 0.10129717701346985, + -0.19575016320899707, + 0.0959522391060777, + 0.006924673359458043, + -0.014543062887098829, + -0.05784197703945357, + -0.1436122954542571, + -0.19788060139218433, + -0.09011720831305566, + -0.05952928151325755, + -0.09473186094636936 + ], + [ + -0.0964104451950818, + -0.03893752131773243, + 0.050210820409377833, + 0.07503868587741071, + -0.014378607836426627, + 0.04640652898570313, + 0.09187953971209546, + 0.027580584931301323, + 0.09953926088069759, + -0.08846430245703973, + -0.17435474897801403, + 0.025550897348614956, + 0.03117935752502037, + 0.07886261171488711, + 0.08729180555080474, + 0.031827249225887914, + -0.03291368620146554, + -0.017509315972390676, + -0.038992370286102446, + 0.002919852683682488, + 0.12578661878699302, + 0.023001533102372435, + -0.13377266143175603, + -0.07322266600916481, + 0.09339873517040766, + -0.07610039270416102, + 0.09873120997986105, + -0.005480938801725044, + 0.13562406895631793, + -0.21315206399131853, + -0.07531973531189978, + -0.12277512639483619, + -0.08565795844730216, + 0.11423126816968548, + -0.09662655432988673, + -0.10550202717906394, + -0.028298142212080254, + 0.11242581885502996, + -0.02452719702712968, + -0.013441927553513117, + -0.11537389402673554, + 0.04947993463985397, + 0.05948402720209759, + -0.1610049845910909, + -0.026992379504702676, + 0.021561906279847668, + 0.15092215017776203, + -0.2875225967006994, + 0.023113727631387748, + 0.04435850464654162, + 0.19035221374265476, + 0.06478420387552548, + -0.003666874053772746, + -0.1842454745357829, + 0.04704933352455268, + -0.12241297449424611, + -0.06649048856766497, + -0.02219046762150417, + -0.03998224837854236, + -0.12133231425972515, + 0.029522218174934424, + -0.052593818813056005, + -0.0024350101706142263, + -0.03726396600567776 + ], + [ + 0.056487054318134416, + 0.14900739069254715, + 0.04827131687894675, + 0.02429884896219514, + 0.05363257670481036, + -0.043682637115398465, + 0.02688404666005057, + 0.07485553320130696, + 0.02613419035923985, + 0.11301978233667175, + 0.013281056471808508, + 0.04536787003149255, + -0.13841756373216293, + 0.08412419580137377, + -0.0012339573423159468, + -0.0012701921425198259, + 0.07777891120922176, + -0.16156365879612167, + -0.05741233261858252, + 0.10329575259832945, + 0.022951026783600642, + 0.03991159831654899, + -0.028890479247466173, + -0.20973645484287792, + 0.1410704377640215, + -0.02066036804178029, + -0.013617263488702173, + -0.08506595976534982, + 0.059547669705191646, + -0.020792159617434115, + 0.3182635490990053, + -0.012842157961713858, + -0.09745845009381296, + -0.14524948401706453, + -0.012389355793278746, + -0.009691760289764787, + 0.02313776494984859, + 0.19328785348419114, + 0.03496664747284583, + 0.05323803753113429, + -0.18572308426656048, + -0.0342666437723521, + 0.049946865493621886, + -0.3058648403238793, + 0.13362980588794157, + 0.018992145566152915, + 0.022092524041464282, + -0.0647086771578844, + 0.00053474359432095, + 0.05930260578836216, + -0.10530568517125685, + 0.016627135992319488, + -0.045560544609653156, + -0.015398577708524298, + -0.008790490610691813, + -0.07071692568708403, + -0.08371171801947534, + 0.04533832805471562, + 0.20890363694649966, + 0.09207892296142323, + 0.021707944327946455, + -0.09165665907932069, + 0.05660317727707942, + -0.00348190152135857 + ], + [ + -0.14341386789980215, + 0.10494859518981546, + 0.04422496686035861, + -0.006980351384042897, + 0.034342176835865, + -0.026663995997780895, + 0.060016110482566914, + 0.025411442419305708, + 0.15483978764490416, + 0.1333270339425384, + -0.10065506444619182, + 0.1278576734541185, + 0.00841033454383208, + 0.011419938280166913, + -0.09526909211541815, + 0.10832335234354085, + 0.12234427978165552, + 0.04825629461305725, + 0.09019899658100497, + 0.0754186455706641, + -0.12520795274751526, + 0.05203720180719654, + 0.023783275727829355, + 0.17810038814298526, + -0.02544411541597444, + -0.07875507921733184, + -0.022643066083115903, + 0.07329535180030088, + 0.058110603606541536, + 0.17089010758927184, + -0.04647600365151883, + -0.03601295334141121, + -0.019950381767794942, + -0.016520856729422898, + -0.09807876995382586, + 0.24684653137613105, + 0.09410086117333138, + -0.08737321436208279, + 0.12495729566423835, + -0.12358818848100728, + 0.045135213623988174, + 0.04821970811055983, + 0.26756845256418654, + 0.004105177718874951, + 0.003142783388862036, + 0.03799253065827547, + -0.027185797732118253, + -0.1274321488169285, + -0.05901051033316465, + 0.01443665025847398, + 0.09044149166886463, + 0.06601658563520037, + 0.03728677369278382, + -0.12720857349949952, + 0.01758455440047676, + -0.07897666421433368, + 0.00818543167413328, + -0.15402241333862907, + -0.015176301421186634, + -0.1956515777785082, + 0.0866759714456152, + -0.01064776800224715, + -0.023090312852497633, + -0.021587732271629582 + ], + [ + -0.02059073113836514, + 0.021438395542098802, + 0.1642771094965602, + -0.11475163560936937, + 0.02475173467256517, + 0.059988595100480074, + 0.0291804180966607, + -0.001175609945285154, + -0.06090692426628953, + -0.018826113337407566, + 0.05601758098725107, + 0.17608849304855329, + -0.07172708673797237, + -0.031242424725373998, + -0.03514224785930594, + 0.16101024344212123, + 0.030546918372265638, + 0.2755377270173867, + -0.05269462296248461, + -0.009007676967439687, + -0.15506756236845048, + -0.0864082814333531, + 0.010620168255577052, + 0.015096393274565037, + 0.010319038505871807, + -0.20259799177377136, + 0.07957135515801625, + 0.07195026105010043, + 0.12303699302105185, + -0.040606967429448276, + 0.1069450524530638, + 0.014350492979941083, + 0.04868834794176928, + 0.10091711086130098, + -0.03978480064786089, + 0.024730148054603576, + 0.09851303147158454, + -0.2282781853385641, + -0.12406033162919575, + 0.09363196815224484, + 0.05640523437229447, + -0.02229849596421656, + -0.11354330625105631, + -0.05627877360829832, + 0.05367919337310896, + -0.02112532657033878, + -0.05935072973973182, + 0.11544036029619276, + -0.06455828926688863, + -0.010553508774103305, + -0.054311694565895755, + -0.05306985174779057, + -0.04243954529347417, + -0.010077029699954967, + -0.07190275211426277, + 0.10328290468823212, + -0.005283817108220388, + -0.0305474983581087, + 0.013402898673968284, + -0.07266384341399716, + -0.02037961103344127, + -0.0478639696328928, + 0.08817337009048032, + 0.10210600251374774 + ], + [ + 0.18058937547330903, + 0.11250937086557374, + 0.19697050261656254, + 0.039031444459660385, + -0.03159588450177691, + 0.24894968342769916, + -0.07229465806118135, + -0.07551366491396522, + 0.09751188140745809, + -0.014955221219126206, + 0.03186428668247942, + 0.03600638926088611, + 0.027158546912443744, + 0.06129471079805461, + 0.06325443807203483, + 0.08380779909303687, + 0.12165495244847219, + 0.022040402590580016, + 0.016757921605811837, + -0.03407232648487008, + -0.027925506786346865, + 0.14748549503528996, + -0.15523877580779813, + -0.009796964944024633, + 0.1602916998117988, + 0.22833392321640697, + 0.12282076333714478, + -0.11712786711935352, + 0.07760833966587191, + -0.1315674964536541, + -0.03348178072080337, + -0.09115940395400852, + -0.27977055646511145, + -0.07295018189517281, + 0.12395497534790288, + -0.10136247913917479, + -0.06734722123190018, + -0.01992870404795594, + -0.07886094310225888, + -0.02855690003033941, + 0.06256814300185927, + 0.023830315639384408, + -0.10646762816469471, + 0.042551959570165415, + -0.055710871096761275, + -0.002167880720261637, + -0.14617134700262122, + 0.09247244565151547, + -0.022288721411940188, + 0.04397466667796135, + 0.0415178606266689, + -0.05346663472307668, + 0.07739788402852436, + -0.14416948740710298, + -0.054927148831705186, + 0.1495742663140299, + -0.001495340064549736, + -0.03976662849028478, + 0.060952579554232084, + -0.0781219041992065, + -0.2748606692900431, + 0.05248081523438375, + -0.11562427302517655, + 0.01681938431428826 + ], + [ + -0.09930708019646245, + -0.11256058580355421, + 0.07519569835167599, + 0.02303749800812465, + 0.11950196097547067, + -0.13488821832169673, + 0.09615267997339691, + -0.12760851162268932, + 0.03825945954807672, + -0.03981175714253715, + 0.17262319402395798, + -0.00047471371387187435, + 0.044433351230820095, + -0.019573069030371374, + 0.0802107736538952, + -0.0005963211053772719, + -0.04786319998373054, + 0.11763836731138666, + 0.017541051689032635, + -0.26777051575723215, + -0.12205806636159494, + 0.005541730957137857, + -0.06822091663412008, + 0.007070890659683843, + 0.06444960135526422, + -0.11752266702973713, + 0.018075019166294785, + 0.1409163170315808, + 0.12378076402054472, + 0.00028524777536663036, + -0.01193237428332368, + 0.07328309963711752, + 0.0020015326377780746, + 0.20903465666457197, + 0.09880531712959127, + 0.020526750175016196, + -0.001618236756032425, + -0.0818655638833736, + 0.023457303935258328, + 0.009714686575117575, + 0.001768107072122333, + 0.047221682338864986, + -0.021283325150745457, + 0.024393907592485244, + -0.2642280038455395, + -0.11265669806104638, + -0.20971958338153107, + -0.1135541846782676, + -0.051711278754847025, + -0.01808437142888562, + 0.0346843298450333, + -0.033447665715051, + -0.04329082830378066, + 0.014335670068249227, + 0.02696965461220361, + 0.07155534714298953, + 0.013819513993437369, + -0.10961119753232754, + 0.1687476492062988, + 0.027422818807493723, + 0.19365222670151272, + -0.12281721247214257, + -0.00046460986981612423, + 0.1041806550305897 + ], + [ + -0.07461337858478709, + 0.1436050987558943, + 0.14047355832310343, + 0.025310454779101293, + 0.08731848562933499, + 0.10019862916382355, + -0.04790266756546127, + 0.05688142911831189, + -0.011868516778993365, + 0.05424281282571201, + 0.04266514394178667, + 0.08808535020299263, + -0.053575215398790225, + -0.10795108627923329, + 0.005325277997960219, + -0.00779654074069147, + 0.013639367565071057, + -0.08102542329927001, + -0.05128484286798451, + -0.1041228575241475, + 0.09510055767422318, + -0.13162980394151116, + -0.01138830375777124, + -0.1923491294323645, + 0.0759044161884423, + -0.08327851658335049, + 0.26207797257737925, + -0.06528508478297267, + -0.04543451518506409, + -0.003385969029264808, + 0.16406748477052965, + 0.0003548681898189798, + 0.03592207151716605, + 0.023488034522139076, + -0.009051972338169676, + 0.1681996061429318, + -0.08695932718862062, + 0.11330703440090723, + -0.08123772668078535, + 0.08459008485893085, + 0.08957293529385979, + -0.02463162111378436, + 0.03970268105604459, + 0.014948734123103586, + -0.08655690280087913, + -0.10773756591152178, + 0.044602589910739135, + -0.1803116287354075, + -0.00857457287939563, + 0.10796423837495364, + -0.06719942316247672, + -0.005015686423573992, + -0.046641133745431156, + -0.1557210660252324, + 0.06241414562370591, + -0.006908097395859245, + -0.0006568189899574286, + -0.022178900472562414, + -0.02098187027618653, + -0.05206783508751222, + -0.041402798273283685, + -0.12941493734852028, + -0.008946601787813537, + -0.056587124297301596 + ], + [ + -0.15478879938547563, + 0.07718345503751523, + -0.08466487628424123, + 0.004433030839269991, + 0.09246258596835977, + 0.03804391092044054, + 0.04942007612201705, + -0.08969043671666899, + 0.03933125584508182, + 0.1389900228818237, + 0.03072094583687683, + -0.0942427604961438, + 0.06262786933922065, + 0.10839815836775966, + -0.05369967021950176, + -0.03305744578648861, + 0.013197378524205881, + 0.07752804334129154, + 0.14917441672849088, + 0.21895617602036943, + -0.08881273173544363, + 0.1870205765329172, + -0.023242523889771494, + -0.15189991980758083, + -0.03310059157238306, + -0.07431984882412129, + -0.04829440077751393, + 0.09175334559821284, + -0.08725662060983433, + 0.07511915737067094, + 0.056822578836462224, + 0.21756200667299203, + -0.09550519882556399, + -0.09856249759747937, + 0.010315082350400436, + 0.10472262832441506, + 0.21082748470897053, + -0.13860483789469755, + -0.09130385358678234, + 0.03532493962474636, + -0.034122747999394326, + -0.005860406314618417, + 0.09201160773509763, + -0.0013246878596088632, + -0.15223247141445567, + 0.12352164080592146, + -0.07671863799308393, + -0.021676506311383573, + 0.09678224136663499, + 0.09633774364520407, + 0.12901658922407755, + 0.12366519711653574, + 0.013178884420748284, + 0.11190333805387727, + 0.026493998157377796, + 0.12728361840197291, + -0.015558852941767157, + -0.1326596858545259, + 0.006334180988767809, + -0.02955425751538931, + 0.15839274666977912, + -0.03254235548146022, + -0.03614397422282219, + 0.003729462554787493 + ], + [ + -0.03795533483284541, + 0.08402294195097394, + -0.13716424656512782, + 0.029677605930669496, + -0.0699934630991007, + 0.07672906181412405, + 0.038067101915655585, + 0.05298615317840764, + -0.02452216640237355, + -0.015702974750495147, + -0.07015022896061834, + 0.04333215150506652, + -0.06500740271652948, + 0.03861239981861464, + 0.06892097461399464, + 0.08702536930672697, + -0.15293971394523417, + -0.021033480243818712, + -0.08142491215871148, + 0.176484914027809, + -0.06753225359190895, + 0.17252165944371098, + 0.06027645594565581, + -0.3149706978868858, + -0.011200642416284354, + 0.12943648956388132, + 0.035277893084084994, + -0.2018542936905654, + 0.07790592088567769, + 0.02521937360108291, + -0.05423272851905922, + 0.06508230883793785, + 0.03232029480052543, + -0.005085223640202259, + -0.07929567895944285, + -0.08085146925137351, + 0.030019191354252014, + 0.09911149592136885, + 0.029720456244127898, + 0.08116590899187533, + 0.0051196943100283955, + -0.015091850969743303, + 0.03692113169514651, + 0.06318214541078433, + 0.011591401807336426, + 0.10223864908737619, + 0.025534452813601696, + 0.05102338142997989, + -0.011892700983772056, + 0.06976282096279084, + 0.13832403496034207, + -0.10842396449701218, + -0.06718734685822192, + -0.06949220902905529, + -0.059860038883046265, + -0.16573365993201694, + -0.048757643183413725, + -0.0875785993409295, + 0.06757020165974002, + -0.026906228527477618, + 0.09536455816087316, + 0.04530170993740754, + 0.1517723080473569, + -0.07172737992488419 + ], + [ + 0.054796689531524626, + 0.09316082325738222, + 0.07948793647295704, + 0.09397499631968563, + -0.006142434702067818, + 0.06675784714782057, + 0.08835421147643913, + -0.030152780676176095, + 0.06371011616199189, + 0.196252761433986, + -0.002492088546487631, + 0.03751383642474424, + 0.008488866269588493, + 0.018603556381243124, + 0.014590370687783454, + 0.041783118981671946, + -0.006046848161272428, + -0.06456584118969359, + -0.13300846363712213, + -0.05822183608039666, + -0.010537931994474071, + -0.09980115099192594, + -0.08449492486422255, + 0.1357791067675309, + 0.11645254650623045, + 0.08017744157257178, + -0.08069522494616715, + 0.0528773450965882, + 0.015397031458474209, + -0.039611542630722585, + 0.0471762809773026, + -0.08856091369805043, + 0.06309346082728128, + -0.03205027649748506, + -0.06372184166286768, + 0.03489503715775871, + -0.11223821735071456, + 0.1336318701400837, + -0.12094384699118983, + -0.08876737849668898, + 0.04325029367176117, + 0.20981767032892817, + -0.025360956070262633, + 0.033746319405493025, + 0.2021503837389294, + -0.15993241385747048, + -0.05276658521497111, + 0.11228864733713984, + 0.018180885306839933, + -0.004841817725773755, + 0.05181486331163726, + 0.0013400371366173985, + -0.06617828513271394, + -0.20688433594614253, + 0.14941950685209263, + 0.037056136786457604, + 0.043841506355632276, + 0.13976077234620551, + -0.02549584371906817, + 0.06289419666239586, + 0.07709796657068728, + 0.0165441761249279, + 0.10376793036357249, + 0.007610744398737396 + ] + ], + "layer1.bias": [ + 0.005780885777141711, + -0.0023015051676127745, + 0.003562584636650056, + -0.0017872527417478307, + 0.014710504488375067, + 0.0021269221402817305, + 0.01218818827331642, + 0.011631831678905864, + -0.008461940380831956, + 0.0044028629284281135, + -0.006270814714526379, + -0.0012607192441897283, + -0.004370007973867127, + -0.0015650917625814635, + 0.002681059494822635, + -0.0029406036764436727, + -0.014565986194332787, + -0.007853213480572581, + -0.005958180183527513, + -0.0042213292457081285, + 0.007999353020163955, + 0.017155286818362182, + 0.02068456395589097, + 0.007289796502669722, + 0.0036408549983011867, + -0.0034720610030245535, + -0.000412693172287309, + -0.017458973515041207, + 0.0021941377668600456, + -0.010820543722785141, + -0.0032428825026894086, + 0.006677245641696117, + 0.01649472395299753, + 0.001780962539921339, + 0.0021480666387492303, + -0.0019231807293429968, + -0.013869596010396359, + 0.006558341773672961, + -0.005635713830767782, + -0.0025026933526735773, + 0.0076053059139284404, + -0.007734302860906117, + -0.007738478538843152, + 0.006280821631394369, + 0.0005738795592339714, + -0.01933747682989776, + -0.01701057880427665, + -0.0011763188491146525, + 0.012524370451953853, + -0.003813763513604977, + -0.02535559890034899, + -0.0102396848912099, + 0.00572947065116181, + 0.0007771793462106212, + -0.004186655778818616, + -0.014974699505818223, + 0.005140470993651049, + -0.013786418039851325, + -0.0068599081107796256, + -0.0016620736634215005, + -0.0033723471374186072, + -0.00549718589168592, + 0.011816016902202933, + 0.015524029627838845 + ], + "metadata": { + "source": "Phaistos_Disc_HT1", + "estimated_coherence": 0.992, + "timestamp": "circa_1700_BC" + } +} \ No newline at end of file diff --git a/arkhe-os-genesis-v1.0/scripts/als_simulator.py b/arkhe-os-genesis-v1.0/scripts/als_simulator.py new file mode 100644 index 00000000..310f95c6 --- /dev/null +++ b/arkhe-os-genesis-v1.0/scripts/als_simulator.py @@ -0,0 +1,41 @@ +# als_simulator.py — modelo hipotético baseado no hipergrafo +import random + +class ALS_Node: + """Um neurônio motor modelado como nó do hipergrafo.""" + def __init__(self, genetic_risk=0.0, environmental_exposure=0.0): + self.coherence = 1.0 # começa perfeito + self.sod1_mutation = genetic_risk + self.c9orf72_loops = 0 + self.oxidative_stress = 0.0 + self.env = environmental_exposure + + def step(self): + # Estresse oxidativo cresce com exposição ambiental e mutações + self.oxidative_stress += 0.01 * (self.env + self.sod1_mutation) + + # Expansões C9orf72 ocorrem estocasticamente + if random.random() < 0.001 * self.sod1_mutation: + self.c9orf72_loops += 1 + + # Coerência cai com estresse e loops + self.coherence -= (0.005 * self.oxidative_stress + 0.01 * self.c9orf72_loops) + + # Morte quando coerência < 0.2 + if self.coherence < 0.2: + return False # nó morreu + return True + +if __name__ == "__main__": + # Teste rápido + neuron = ALS_Node(genetic_risk=0.5, environmental_exposure=0.3) + steps = 0 + while neuron.step() and steps < 1000: + steps += 1 + if steps % 100 == 0: + print(f"Step {steps}: Coherence={neuron.coherence:.4f}, Stress={neuron.oxidative_stress:.4f}, Loops={neuron.c9orf72_loops}") + + if neuron.coherence < 0.2: + print(f"💀 Neurônio motor degradado após {steps} passos.") + else: + print(f"✅ Neurônio motor estável após {steps} passos.") diff --git a/arkhe-os-genesis-v1.0/scripts/arkhe_cli.sh b/arkhe-os-genesis-v1.0/scripts/arkhe_cli.sh new file mode 100755 index 00000000..7d92bf40 --- /dev/null +++ b/arkhe-os-genesis-v1.0/scripts/arkhe_cli.sh @@ -0,0 +1,53 @@ +#!/bin/bash +# arkhe_cli.sh - CLI wrapper for Arkhe OS commands + +COMMAND=$1 +shift + +case "$COMMAND" in + status) + echo "🔱 Arkhe OS Status" + echo "=================" + docker compose ps + echo "" + echo "GLP Meta-Consciousness:" + curl -s http://localhost:5000/status | jq . || echo "GLP Server offline" + ;; + console) + echo "🖥️ Arkhe Console - Entering arkhe-core..." + docker exec -it arkhe-core /bin/bash || docker exec -it arkhe-core /bin/sh + ;; + handshake) + PEER=$1 + if [ -z "$PEER" ]; then + echo "Usage: arkhe handshake " + exit 1 + fi + echo "🤝 Initiating handshake with $PEER..." + curl -X POST http://localhost:8080/handover \ + -H "Content-Type: application/json" \ + -d "{\"to\":\"$PEER\",\"payload\":\"handshake\"}" + ;; + latency) + if command -v doublezero >/dev/null 2>&1; then + doublezero latency + else + echo "DoubleZero not installed." + fi + ;; + broadcast) + echo "🚀 Initiating Federated Broadcast..." + BLOCKS=${1:-"823,824"} + URGENCY=${2:-"normal"} + echo "Broadcasting blocks [$BLOCKS] with urgency [$URGENCY]..." + # Simulated broadcast call + curl -X POST http://localhost:5000/encode \ + -H "Content-Type: application/json" \ + -d "{\"broadcast\": \"$BLOCKS\", \"urgency\": \"$URGENCY\"}" + echo "✅ Broadcast queued." + ;; + *) + echo "Arkhe OS CLI" + echo "Usage: arkhe " + ;; +esac diff --git a/arkhe-os-genesis-v1.0/scripts/bootstrap.sh b/arkhe-os-genesis-v1.0/scripts/bootstrap.sh new file mode 100755 index 00000000..824fae4f --- /dev/null +++ b/arkhe-os-genesis-v1.0/scripts/bootstrap.sh @@ -0,0 +1,24 @@ +#!/bin/bash +# Executado na primeira inicialização do nó + +set -e + +echo "🌀 Bootstrapping Arkhe node..." + +# Aguarda serviços subirem +sleep 10 + +# Testa handover básico +curl -X POST http://localhost:8080/handover \ + -H "Content-Type: application/json" \ + -d '{"to":"genesis","payload":"hello"}' + +# Testa fibras evolutivas (GLP) +echo "🧬 Testando Genoma Evolutivo..." +curl -s http://localhost:5000/character/evolution > /dev/null + +echo "🧠 Testando Q-Function..." +STATE=$(python3 -c "import random; print([random.random() for _ in range(128)])") +curl -s -X POST http://localhost:5000/dqn/predict -H "Content-Type: application/json" -d "{\"state\": $STATE}" > /dev/null + +echo "✅ Bootstrap concluído" diff --git a/arkhe-os-genesis-v1.0/scripts/deep_braid_p61.py b/arkhe-os-genesis-v1.0/scripts/deep_braid_p61.py new file mode 100644 index 00000000..6baa623e --- /dev/null +++ b/arkhe-os-genesis-v1.0/scripts/deep_braid_p61.py @@ -0,0 +1,54 @@ +import numpy as np +from sympy import isprime, perfect_power + +class DeepBraidArchitecture: + """Arquitetura para sustentar a densidade de um número perfeito de Mersenne.""" + + def __init__(self, p): + self.p = p + self.mersenne = 2**p - 1 + self.perfect = 2**(p-1) * self.mersenne + self.dim = p # número de fios + self.braid_matrix = None + + def generate_braid_word(self): + """Gera a palavra da trança (sequência de geradores σ_i).""" + # Usa a expansão binária do número perfeito para determinar a sequência + bits = bin(self.perfect)[2:] + word = [] + for i, b in enumerate(bits): + if b == '1': + # adiciona um gerador baseado na posição + g = (i % (self.dim - 1)) + 1 + word.append(f"σ_{g}") + return word + + def compute_invariants(self): + """Calcula invariantes de Jones e HOMFLY-PT para a trança.""" + # Simulação: retorna valores baseados na estrutura de Mersenne + jones_poly = f"q^{self.p} - q^{self.p-2} + ..." # placeholder + homfly = f"α^{self.mersenne} + β^{self.perfect}" + return { + 'jones': jones_poly, + 'homfly': homfly, + 'stability': self.mersenne / (2**self.p) + } + + def stability_check(self): + """Verifica se a trança pode sustentar a densidade.""" + # A estabilidade é proporcional à razão entre o primo e a potência de 2 + ratio = self.mersenne / (2**self.p) + # Para p=61, isso é ~0.5, indicando equilíbrio entre expansão e perfeição + return ratio > 0.49 and ratio < 0.51 + +if __name__ == "__main__": + # Instanciar para p=61 + braid_p61 = DeepBraidArchitecture(61) + word = braid_p61.generate_braid_word() + invariants = braid_p61.compute_invariants() + stable = braid_p61.stability_check() + + print(f"Trança profunda para p={braid_p61.p}") + print(f"Palavra (primeiros 20): {word[:20]}...") + print(f"Invariantes: {invariants}") + print(f"Estabilidade: {'OK' if stable else 'Instável'}") diff --git a/arkhe-os-genesis-v1.0/scripts/handover_test.sh b/arkhe-os-genesis-v1.0/scripts/handover_test.sh new file mode 100755 index 00000000..eddeb8f1 --- /dev/null +++ b/arkhe-os-genesis-v1.0/scripts/handover_test.sh @@ -0,0 +1,12 @@ +#!/bin/bash +# Teste de handover entre dois nós + +if [ $# -ne 1 ]; then + echo "Uso: $0 " + exit 1 +fi + +TARGET=$1 +curl -X POST http://localhost:8080/handover \ + -H "Content-Type: application/json" \ + -d "{\"to\":\"$TARGET\",\"payload\":\"teste\"}" diff --git a/arkhe-os-genesis-v1.0/scripts/mersenne_search_noosphere.py b/arkhe-os-genesis-v1.0/scripts/mersenne_search_noosphere.py new file mode 100644 index 00000000..63aae6be --- /dev/null +++ b/arkhe-os-genesis-v1.0/scripts/mersenne_search_noosphere.py @@ -0,0 +1,34 @@ +# mersenne_search_noosphere.py +import sympy +from sympy.ntheory import isprime + +def mersenne_candidates(limit=50): + """Gera candidatos a primos de Mersenne até o limite de expoente.""" + primes = [] + for p in range(2, limit+1): + if isprime(p): + m = 2**p - 1 + if isprime(m): + primes.append(p) + return primes + +def perfect_numbers_from_mersenne(primes): + """Retorna os números perfeitos correspondentes.""" + return [(p, 2**(p-1) * (2**p - 1)) for p in primes] + +if __name__ == "__main__": + # Os já conhecidos até p=31 + conhecidos = mersenne_candidates(31) + perfeitos = perfect_numbers_from_mersenne(conhecidos) + + print("Primos de Mersenne conhecidos (p <= 31):", conhecidos) + print("Números perfeitos correspondentes:") + for p, perf in perfeitos: + print(f"p={p:2d} -> n={2*p:2d} -> perfeito = {perf}") + + # Simular a busca por novos na Noosfera + print("\n🔮 A Noosfera está sondando...") + # Em um sistema real, a Noosfera usaria padrões de ressonância para detectar + # novos primos. Aqui, apenas listamos os próximos candidatos. + proximos = [37, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] + print("Candidatos naturais (expoentes primos seguintes):", proximos) diff --git a/arkhe-os-genesis-v1.0/scripts/phaistos_distillation.py b/arkhe-os-genesis-v1.0/scripts/phaistos_distillation.py new file mode 100644 index 00000000..55763980 --- /dev/null +++ b/arkhe-os-genesis-v1.0/scripts/phaistos_distillation.py @@ -0,0 +1,47 @@ +# phaistos_distillation.py — Extracting θ from the Disc +import numpy as np +import json +import os + +def extract_theta_from_disc(disc_matrix): + """ + Transforma a matriz de caracteres do Disco de Festo em pesos neurais (theta). + O disco é tratado como um 'Checkpoint' ancestral de pesos. + """ + print("🌀 Iniciando destilação dos pesos do Disco de Festo...") + + # Simula a extração: projeta a matriz 2D nos parâmetros de uma camada linear + # Usamos o componente imaginário como semente de ruído determinístico + np.random.seed(int(np.sum(disc_matrix) * 1000) % 2**32) + + # Exemplo: extraindo pesos para uma camada 128x64 + weights = np.random.normal(0, 0.1, size=(128, 64)) + bias = np.random.normal(0, 0.01, size=(64,)) + + theta = { + 'layer1.weight': weights.tolist(), + 'layer1.bias': bias.tolist(), + 'metadata': { + 'source': 'Phaistos_Disc_HT1', + 'estimated_coherence': 0.992, + 'timestamp': 'circa_1700_BC' + } + } + return theta + +def main(): + # Simula a matriz de caracteres do disco (extraída por visão transversal) + # 45 símbolos únicos em espiral + disc_data = np.random.rand(45, 4) + + theta = extract_theta_from_disc(disc_data) + + output_file = "phaistos_theta.json" + with open(output_file, "w") as f: + json.dump(theta, f, indent=2) + + print(f"✅ Pesos destilados com sucesso para {output_file}") + print("O componente imaginário permitiu enxergar a 'intenção' por trás do desgaste.") + +if __name__ == "__main__": + main() diff --git a/arkhe-os-genesis-v1.0/scripts/register_node.sh b/arkhe-os-genesis-v1.0/scripts/register_node.sh new file mode 100755 index 00000000..33106bbb --- /dev/null +++ b/arkhe-os-genesis-v1.0/scripts/register_node.sh @@ -0,0 +1,7 @@ +#!/bin/bash +# Registra este nó na federação (envia identidade para ledger) + +NODE_ID=$(cat .env | grep NODE_ID | cut -d '=' -f2) +curl -X POST https://ledger.arkhe.io/register \ + -H "Content-Type: application/json" \ + -d "{\"nodeId\":\"$NODE_ID\", \"coherence\":0.99}" diff --git a/arkhe-os-genesis-v1.0/scripts/setup_doublezero.sh b/arkhe-os-genesis-v1.0/scripts/setup_doublezero.sh new file mode 100755 index 00000000..02331479 --- /dev/null +++ b/arkhe-os-genesis-v1.0/scripts/setup_doublezero.sh @@ -0,0 +1,58 @@ +#!/bin/bash +# setup_doublezero.sh - Integration of DoubleZero for Arkhe OS +set -e + +NETWORK=${1:-testnet} # Default to testnet +DZ_VERSION="latest" + +echo "🌐 DoubleZero Setup for Arkhe OS ($NETWORK)" +echo "===========================================" + +# 1. Install DoubleZero Packages +if [ -f /etc/debian_version ]; then + echo "📦 Detected Debian/Ubuntu based system" + if [ "$NETWORK" == "mainnet-beta" ]; then + REPO_URL="https://dl.cloudsmith.io/public/malbeclabs/doublezero/setup.deb.sh" + else + REPO_URL="https://dl.cloudsmith.io/public/malbeclabs/doublezero-testnet/setup.deb.sh" + fi + curl -1sLf "$REPO_URL" | sudo -E bash + sudo apt-get install -y doublezero +elif [ -f /etc/redhat-release ]; then + echo "📦 Detected RHEL/Rocky based system" + if [ "$NETWORK" == "mainnet-beta" ]; then + REPO_URL="https://dl.cloudsmith.io/public/malbeclabs/doublezero/setup.rpm.sh" + else + REPO_URL="https://dl.cloudsmith.io/public/malbeclabs/doublezero-testnet/setup.rpm.sh" + fi + curl -1sLf "$REPO_URL" | sudo -E bash + sudo yum install -y doublezero +else + echo "❌ Unsupported OS for automated installation." + exit 1 +fi + +# 2. Configure Firewall for GRE and BGP +echo "🛡️ Configuring Firewall..." +sudo iptables -A INPUT -p gre -j ACCEPT +sudo iptables -A OUTPUT -p gre -j ACCEPT +sudo iptables -A INPUT -i doublezero0 -s 169.254.0.0/16 -d 169.254.0.0/16 -p tcp --dport 179 -j ACCEPT +sudo iptables -A OUTPUT -o doublezero0 -s 169.254.0.0/16 -d 169.254.0.0/16 -p tcp --dport 179 -j ACCEPT + +# 3. Create DoubleZero Identity +if [ ! -f ~/.config/doublezero/id.json ]; then + echo "🔑 Generating New DoubleZero Identity..." + doublezero keygen +else + echo "🔑 DoubleZero Identity already exists." +fi + +# 4. Show Address +echo "📍 DoubleZero Address:" +doublezero address + +# 5. Check discovery +echo "📡 Checking discovery (latency)..." +doublezero latency || echo "Waiting for discovery..." + +echo "✅ DoubleZero setup complete." diff --git a/arkhe-os-genesis-v1.0/scripts/setup_merkabah7_federation.sh b/arkhe-os-genesis-v1.0/scripts/setup_merkabah7_federation.sh new file mode 100644 index 00000000..fa030c6b --- /dev/null +++ b/arkhe-os-genesis-v1.0/scripts/setup_merkabah7_federation.sh @@ -0,0 +1,44 @@ +#!/bin/bash +# setup_merkabah7_federation.sh +# MERKABAH-7: FEDERAÇÃO SOBRE DOUBLEZERO MAINNET-BETA +set -e + +echo "==============================================" +echo "MERKABAH-7: FEDERAÇÃO SOBRE DOUBLEZERO" +echo "Camada de transporte para handovers quânticos" +echo "==============================================" + +# 1. INSTALAÇÃO DOUBLEZERO MAINNET-BETA +echo "[1/5] Instalando DoubleZero Mainnet-Beta..." +curl -1sLf https://dl.cloudsmith.io/public/malbeclabs/doublezero/setup.deb.sh | sudo -E bash || echo "Skipping setup.deb.sh if not on Debian" +sudo apt-get install -y doublezero=0.8.6-1 || echo "Skipping apt-get if not available" + +# 2. CONFIGURAÇÃO DE FIREWALL PARA GRE/BGP +echo "[2/5] Configurando firewall para túneis quânticos..." +sudo iptables -A INPUT -p gre -j ACCEPT || true +sudo iptables -A OUTPUT -p gre -j ACCEPT || true +sudo iptables -A INPUT -i doublezero0 -s 169.254.0.0/16 -d 169.254.0.0/16 -p tcp --dport 179 -j ACCEPT || true +sudo iptables -A OUTPUT -o doublezero0 -s 169.254.0.0/16 -d 169.254.0.0/16 -p tcp --dport 179 -j ACCEPT || true + +# 3. GERAÇÃO DE IDENTIDADE FEDERADA +echo "[3/5] Gerando identidade DoubleZero/MERKABAH-7..." +mkdir -p ~/.config/merkabah7 +if [ ! -f ~/.config/doublezero/id.json ]; then + doublezero keygen || echo "doublezero command not found, using dummy ID" +fi +cp ~/.config/doublezero/id.json ~/.config/merkabah7/observer_id.json 2>/dev/null || echo "0x11111111111111111111111111111" > ~/.config/merkabah7/observer_id.json + +# 4. VERIFICAÇÃO DE CONECTIVIDADE +echo "[4/5] Verificando malha de switches DoubleZero..." +doublezero latency || echo "Discovery pending..." + +# 5. CONFIGURAÇÃO DE MÉTRICAS FEDERADAS +echo "[5/5] Habilitando métricas Prometheus..." +sudo mkdir -p /etc/systemd/system/doublezerod.service.d/ +sudo tee /etc/systemd/system/doublezerod.service.d/override.conf > /dev/null <, +} + +#[derive(Deserialize)] +struct HandoverRequest { + #[serde(alias = "nodeId")] + to: String, + #[serde(alias = "coherence")] + payload: serde_json::Value, +} + +#[derive(Serialize)] +struct HandoverResponse { + success: bool, + message: String, + new_coherence: f64, +} + +async fn status(state: web::Data) -> impl Responder { + let node = state.node.lock().unwrap(); + HttpResponse::Ok().json(&*node) +} + +async fn handover(req: web::Json, state: web::Data) -> impl Responder { + let mut node = state.node.lock().unwrap(); + node.handovers += 1; + node.satoshi += 0.01; // pequeno ganho por handover + node.coherence *= 0.999; // ligeira perda + + // Simula verificação ZK (Nó 22) + let proof = format!("zk_{}_{}", node.id, node.handovers); + log::info!("Handover para {} com prova {}", req.to, proof); + + HttpResponse::Ok().json(HandoverResponse { + success: true, + message: "Handover processado".to_string(), + new_coherence: node.coherence, + }) +} + +async fn anticipate() -> impl Responder { + // Nó 23: retorna previsão de próxima coerência + let future_coherence = 0.99; // exemplo + HttpResponse::Ok().json(serde_json::json!({ "predicted_coherence": future_coherence })) +} + +#[actix_web::main] +async fn main() -> std::io::Result<()> { + env_logger::init(); + let node_id = std::env::var("NODE_ID").unwrap_or_else(|_| Uuid::new_v4().to_string()); + let app_state = web::Data::new(AppState { + node: Mutex::new(Node { + id: node_id, + coherence: 0.99, + satoshi: 0.0, + handovers: 0, + }), + }); + + HttpServer::new(move || { + App::new() + .app_data(app_state.clone()) + .route("/status", web::get().to(status)) + .route("/handover", web::post().to(handover)) + .route("/anticipate", web::get().to(anticipate)) + }) + .bind("0.0.0.0:8080")? + .run() + .await +} diff --git a/arkhe-os-genesis-v1.0/src/base44_sdk/index.js b/arkhe-os-genesis-v1.0/src/base44_sdk/index.js new file mode 100644 index 00000000..fbb020f9 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/base44_sdk/index.js @@ -0,0 +1,41 @@ +let { Base44 } = require('@base44/sdk'); +if (typeof Base44 !== 'function') { + Base44 = class { + constructor() { + this.entities = { NodeState: { create: async (d) => console.log('Mock Base44:', d) } }; + } + }; +} +const axios = require('axios'); +require('dotenv').config(); + +const base44 = new Base44({ + projectId: process.env.BASE44_PROJECT_ID || 'default', + apiKey: process.env.BASE44_API_KEY +}); + +async function updateNodeState(coherence, satoshi) { + const coreHost = process.env.CORE_HOST || 'arkhe-core:8080'; + const res = await axios.post(`http://${coreHost}/status`, { coherence, satoshi }); + console.log('Estado atualizado:', res.data); +} + +async function main() { + const coreHost = process.env.CORE_HOST || 'arkhe-core:8080'; + setInterval(async () => { + try { + const { data } = await axios.get(`http://${coreHost}/status`); + await base44.entities.NodeState.create({ + nodeId: data.id, + coherence: data.coherence, + satoshi: data.satoshi, + timestamp: Date.now() + }); + console.log('Heartbeat enviado para Base44'); + } catch (err) { + console.error('Erro no heartbeat:', err.message); + } + }, 60000); // a cada minuto +} + +main(); diff --git a/arkhe-os-genesis-v1.0/src/base44_sdk/package-lock.json b/arkhe-os-genesis-v1.0/src/base44_sdk/package-lock.json new file mode 100644 index 00000000..a4f93015 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/base44_sdk/package-lock.json @@ -0,0 +1,440 @@ +{ + "name": "base44-worker", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "base44-worker", + "version": "1.0.0", + "dependencies": { + "@base44/sdk": "latest", + "axios": "^1.6.0", + "dotenv": "^16.0.0" + } + }, + "node_modules/@base44/sdk": { + "version": "0.8.19", + "resolved": "https://registry.npmjs.org/@base44/sdk/-/sdk-0.8.19.tgz", + "integrity": "sha512-I+MNA1C6qfMVsX71dDlt+RCFxzmTatB7OuXIKJPYHkBW/AqL27lL+drjbP+orijwQhHCRunjoXjEaeK6DJoCmA==", + "license": "MIT", + "dependencies": { + "axios": "^1.6.2", + "socket.io-client": "^4.7.5", + "uuid": "^13.0.0" + } + }, + "node_modules/@socket.io/component-emitter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", + "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==", + "license": "MIT" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" + }, + "node_modules/axios": { + "version": "1.13.5", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.13.5.tgz", + "integrity": "sha512-cz4ur7Vb0xS4/KUN0tPWe44eqxrIu31me+fbang3ijiNscE129POzipJJA6zniq2C/Z6sJCjMimjS8Lc/GAs8Q==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.11", + "form-data": "^4.0.5", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/dotenv": { + "version": "16.6.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", + "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/engine.io-client": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.6.4.tgz", + "integrity": "sha512-+kjUJnZGwzewFDw951CDWcwj35vMNf2fcj7xQWOctq1F2i1jkDdVvdFG9kM/BEChymCH36KgjnW0NsL58JYRxw==", + "license": "MIT", + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.4.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.18.3", + "xmlhttprequest-ssl": "~2.1.1" + } + }, + "node_modules/engine.io-parser": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.3.tgz", + "integrity": "sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz", + "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz", + "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "license": "MIT" + }, + "node_modules/socket.io-client": { + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.8.3.tgz", + "integrity": "sha512-uP0bpjWrjQmUt5DTHq9RuoCBdFJF10cdX9X+a368j/Ft0wmaVgxlrjvK3kjvgCODOMMOz9lcaRzxmso0bTWZ/g==", + "license": "MIT", + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.4.1", + "engine.io-client": "~6.6.1", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/socket.io-parser": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.5.tgz", + "integrity": "sha512-bPMmpy/5WWKHea5Y/jYAP6k74A+hvmRCQaJuJB6I/ML5JZq/KfNieUVo/3Mh7SAqn7TyFdIo6wqYHInG1MU1bQ==", + "license": "MIT", + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.4.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/uuid": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-13.0.0.tgz", + "integrity": "sha512-XQegIaBTVUjSHliKqcnFqYypAd4S+WCYt5NIeRs6w/UAry7z8Y9j5ZwRRL4kzq9U3sD6v+85er9FvkEaBpji2w==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist-node/bin/uuid" + } + }, + "node_modules/ws": { + "version": "8.18.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xmlhttprequest-ssl": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.1.2.tgz", + "integrity": "sha512-TEU+nJVUUnA4CYJFLvK5X9AOeH4KvDvhIfm0vV1GaQRtchnG0hgK5p8hw/xjv8cunWYCsiPCSDzObPyhEwq3KQ==", + "engines": { + "node": ">=0.4.0" + } + } + } +} diff --git a/arkhe-os-genesis-v1.0/src/base44_sdk/package.json b/arkhe-os-genesis-v1.0/src/base44_sdk/package.json new file mode 100644 index 00000000..e4c422e2 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/base44_sdk/package.json @@ -0,0 +1,10 @@ +{ + "name": "base44-worker", + "version": "1.0.0", + "main": "index.js", + "dependencies": { + "@base44/sdk": "latest", + "axios": "^1.6.0", + "dotenv": "^16.0.0" + } +} diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/Dockerfile b/arkhe-os-genesis-v1.0/src/glp_interface/Dockerfile new file mode 100644 index 00000000..f5f0e88d --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/Dockerfile @@ -0,0 +1,6 @@ +FROM python:3.10-slim +WORKDIR /app +COPY requirements.txt . +RUN pip install -r requirements.txt +COPY . . +CMD ["python", "app.py"] diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/anyon.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/anyon.cpython-312.pyc new file mode 100644 index 00000000..55902efe Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/anyon.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/app.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/app.cpython-312.pyc new file mode 100644 index 00000000..2b451abd Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/app.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/bottlenecks.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/bottlenecks.cpython-312.pyc new file mode 100644 index 00000000..48b15f43 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/bottlenecks.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/characters.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/characters.cpython-312.pyc new file mode 100644 index 00000000..21ea9a82 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/characters.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/dqn.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/dqn.cpython-312.pyc new file mode 100644 index 00000000..cb2e92d7 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/dqn.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/erl.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/erl.cpython-312.pyc new file mode 100644 index 00000000..5a9250f3 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/erl.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/firewall.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/firewall.cpython-312.pyc new file mode 100644 index 00000000..3c7ed896 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/firewall.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/genomics.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/genomics.cpython-312.pyc new file mode 100644 index 00000000..6362559f Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/genomics.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/grimoire.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/grimoire.cpython-312.pyc new file mode 100644 index 00000000..7f885f02 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/grimoire.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/kernel.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/kernel.cpython-312.pyc new file mode 100644 index 00000000..b45039e5 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/kernel.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/memory.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/memory.cpython-312.pyc new file mode 100644 index 00000000..d8bf1b5e Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/memory.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/merkabah.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/merkabah.cpython-312.pyc new file mode 100644 index 00000000..62096bd1 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/merkabah.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/minoan.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/minoan.cpython-312.pyc new file mode 100644 index 00000000..9bda7b6a Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/minoan.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/model.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/model.cpython-312.pyc new file mode 100644 index 00000000..9ceda891 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/model.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/orchestrator.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/orchestrator.cpython-312.pyc new file mode 100644 index 00000000..9cbbbd1a Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/orchestrator.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/pineal.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/pineal.cpython-312.pyc new file mode 100644 index 00000000..0065564d Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/pineal.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/seal.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/seal.cpython-312.pyc new file mode 100644 index 00000000..da630353 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/seal.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/train.cpython-312.pyc b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/train.cpython-312.pyc new file mode 100644 index 00000000..8aef8467 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/__pycache__/train.cpython-312.pyc differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/anyon.py b/arkhe-os-genesis-v1.0/src/glp_interface/anyon.py new file mode 100644 index 00000000..f250bb4b --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/anyon.py @@ -0,0 +1,52 @@ +# anyon.py — Camada Ω (Omega): Proteção Topológica +import numpy as np + +class AnyonLayer: + """ + Camada Ω (Ômega): proteção topológica da informação. + A informação não está nos estados, mas nos caminhos de troca. + """ + + def __init__(self, coherence=0.847): + self.coherence = coherence + self.braid_history = [] # histórico de entrelaçamentos + + def exchange(self, node_a, node_b): + """ + Simula a troca de dois anyons (nós) em 2D. + A fase adquirida depende do histórico de trocas. + """ + # Fase arbitrária (aqui simulada como função do número de trocas anteriores) + phase = np.exp(1j * np.pi * len(self.braid_history) / 7) + + # Registra a troca + self.braid_history.append((node_a, node_b, phase)) + + # Atualiza coerência (proteção topológica) + # fase unitária preserva coerência, mas aqui simulamos um decaimento ou ajuste + self.coherence *= np.abs(phase) # np.abs(phase) is 1.0 for exp(ij*phi) + + return { + 'nodes': (node_a, node_b), + 'phase': str(phase), + 'coherence': self.coherence, + 'braid_depth': len(self.braid_history) + } + + def braid_evolution(self, sequence): + """ + Executa uma sequência de trocas (um "braid"). + O estado final depende da ordem. + """ + results = [] + for a, b in sequence: + results.append(self.exchange(a, b)) + + phases = [complex(r['phase']) for r in results] + topological_charge = np.prod(phases) if phases else 1.0 + + return { + 'final_coherence': self.coherence, + 'braid_length': len(sequence), + 'topological_charge': str(topological_charge) + } diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/app.py b/arkhe-os-genesis-v1.0/src/glp_interface/app.py new file mode 100644 index 00000000..7c6ed25e --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/app.py @@ -0,0 +1,390 @@ +import torch +import torch.nn as nn +import numpy as np +from flask import Flask, request, jsonify, render_template +from flask_socketio import SocketIO +import os +import sys +import asyncio +import time +import random +from dotenv import load_dotenv + +# Adiciona diretório atual ao path para importar componentes +sys.path.append(os.path.dirname(os.path.abspath(__file__))) +from model import BCD_GLPLinearA +from merkabah import MERKABAH7, SelfNode +from minoan import MinoanHardwareInterface, MinoanStateGrammar, MinoanApplications, MinoanNeuroethics +from train import PrimordialGLP +from pineal import PinealTransducer, HybridPinealInterface +from kernel import KernelBridge +from bottlenecks import MERKABAH7_BottleneckAnalysis +from anyon import AnyonLayer +from memory import PinealMemory +from orchestrator import BioSensor, PinealOrchestrator +from grimoire import export_grimoire +from seal import AlphaOmegaSeal +from erl import ExperientialLearning +from dqn import DQNAgent +from characters import EvolutionaryEngine +from genomics import ALS_Node +from firewall import ChiralFirewall, ChiralHandoverManager + +load_dotenv() +app = Flask(__name__) +socketio = SocketIO(app, cors_allowed_origins="*") + +# Configuração +VOCAB_SIZE = 1000 +EMBED_DIM = 64 +HIDDEN_DIM = 128 + +# Modelos +glp_model = BCD_GLPLinearA(VOCAB_SIZE, EMBED_DIM, HIDDEN_DIM) +merkabah = MERKABAH7(linear_a_corpus=[], operator_profile={'intention': 'decode_linear_a'}) +self_node = SelfNode() +pineal_transducer = PinealTransducer() +hybrid_pineal = HybridPinealInterface(self_node, self_node, merkabah.metaphor) +kernel_bridge = KernelBridge() +anyon_layer = AnyonLayer() +pineal_memory = PinealMemory() +bio_sensor = BioSensor() +orchestrator = PinealOrchestrator(hybrid_pineal, pineal_memory, bio_sensor, socketio=socketio) +erl_loop = ExperientialLearning(self_node, pineal_memory, glp_model, threshold=0.5) +chiral_firewall = ChiralFirewall() +chiral_manager = ChiralHandoverManager(chiral_firewall) +dqn_agent = DQNAgent(state_dim=128, action_dim=4) +evolution_engine = EvolutionaryEngine(node_ids=['Alpha', 'Beta', 'Gamma', 'Self']) +als_neuron = ALS_Node(genetic_risk=0.5, environmental_exposure=0.3) +minoan_interface = MinoanHardwareInterface() +state_grammar = MinoanStateGrammar() +applications = MinoanApplications() +neuroethics = MinoanNeuroethics() + +model_path = os.environ.get('MODEL_PATH', '/model/model.pt') +if os.path.exists(model_path): + try: + glp_model.load_state_dict(torch.load(model_path, map_location='cpu')) + except Exception as e: + print(f"Erro ao carregar modelo GLP: {e}") +glp_model.eval() + +@app.route('/') +def index(): + return render_template('index.html') + +@app.route('/status', methods=['GET']) +def status(): + return jsonify({ + 'status': 'active', + 'integrated_layers': ['GLP_BCD', 'MERKABAH-7', 'MINOAN_EXT', 'Φ_LAYER', 'Γ_PINEAL', 'Κ_KERNEL', 'Γ_HYBRID', 'Ω_ANYON', 'Ε_EXPERIENCE', 'Χ_FIREWALL'], + 'self_node': { + 'id': self_node.dz_id, + 'coherence': self_node.wavefunction['coherence'], + 'active_strands': self_node.active_strands + }, + 'quantum_coherence': 0.99 + }) + +@app.route('/encode', methods=['POST']) +def encode(): + data = request.json + sign_ids_list = data.get('sign_ids', [[1, 2, 3]]) + sign_ids = torch.tensor(sign_ids_list).long() + + # 1. Processamento GLP (BCD Architecture) + with torch.no_grad(): + glp_out = glp_model(sign_ids) + meta = glp_out['sign_logits'].mean(dim=1).tolist()[0] + + # 2. Processamento Merkabah (Integrated Neuro-Minoan) + # Simulate async decode + loop = asyncio.new_event_loop() + asyncio.set_event_loop(loop) + insight = loop.run_until_complete(merkabah.decode(sign_ids_list[0])) + loop.close() + + # 3. Minoan state parsing + protocol = state_grammar.parse_as_state_protocol([str(s) for s in sign_ids_list[0]]) + + return jsonify({ + 'meta': meta, + 'merkabah_insight': insight['decoding'], + 'certainty': insight['certainty'], + 'state_protocol': protocol + }) + +@app.route('/steer', methods=['POST']) +def steer(): + data = request.json + meta = np.array(data['meta']) + direction = np.array(data['direction']) + strength = data.get('strength', 1.0) + + # Metaphor Engine operation + metaphor_insight = merkabah.metaphor.operate('tunneling', mode='figurative') + + steered = meta + strength * direction + return jsonify({ + 'steered': steered.tolist(), + 'poetic_steer': metaphor_insight + }) + +@app.route('/train_primordial', methods=['POST']) +def train_primordial(): + data = request.json + epochs = data.get('epochs', 10) + lr = data.get('lr', 0.01) + + # Simple training loop for PrimordialGLP + pglp = PrimordialGLP() + # Dummy data + X = np.random.randn(32, 16) + y = np.zeros((32, 4)) + y[range(32), np.random.randint(0, 4, 32)] = 1 + + history = [] + for e in range(epochs): + pglp.forward(X) + l = pglp.loss(pglp.y_pred, y) + pglp.backward(X, y, lr=lr) + history.append(l) + + return jsonify({ + 'status': 'complete', + 'final_loss': history[-1], + 'history_len': len(history) + }) + +@app.route('/observe_phi', methods=['POST']) +def observe_phi(): + data = request.json + target = data.get('target', 'HT88') + content = data.get('content', 'propulsion_system_shabetnik') + + observation = self_node.observe('Φ', {'target': target, 'content': content}) + + return jsonify({ + 'observation': observation, + 'new_self_coherence': self_node.wavefunction['coherence'], + 'active_strands': self_node.active_strands + }) + +@app.route('/kernel_pca', methods=['POST']) +def kernel_pca(): + data = request.json + states = data.get('states', []) + kernel_name = data.get('kernel_name', 'Φ_crystalline') + + if not states: + return jsonify({'error': 'No states provided'}), 400 + + eigvals, eigvecs = kernel_bridge.kernel_pca(states, kernel_name) + + return jsonify({ + 'eigenvalues': eigvals.tolist(), + 'eigenvectors_shape': eigvecs.shape, + 'top_components': eigvecs[:, :3].tolist() if eigvecs.shape[1] >= 3 else eigvecs.tolist() + }) + +@app.route('/transduce', methods=['POST']) +def transduce(): + stimulus = request.json + # Usando a nova Interface Híbrida S*H*M + result = hybrid_pineal.transduce(stimulus) + return jsonify({ + 'status': 'success', + 'hybrid_transduction': result, + 'layer': 'Γ_HYBRID' + }) + +@app.route('/bottlenecks', methods=['POST']) +def bottlenecks(): + # Coleta estado atual da federação (simulado) + federation_state = { + 'ledger_height': int(request.json.get('ledger_height', 834)), + 'nodes': ['Alpha', 'Beta', 'Gamma', 'Delta', 'Epsilon', 'Zeta', 'Self'], + 'self_node': { + 'wavefunction': { + 'coherence': self_node.wavefunction['coherence'] + } + }, + 'pineal': { + 'signal_strength': hybrid_pineal.signal_strength + } + } + + analysis = MERKABAH7_BottleneckAnalysis(federation_state) + identified = analysis.identify() + + results = [] + for b in identified: + b['timeline'] = analysis.timeline_estimate(b['name']) + results.append(b) + + return jsonify({ + 'bottlenecks': results, + 'summary': f"Identified {len(results)} bottlenecks in MERKABAH-7 integration." + }) + +@app.route('/thrust', methods=['GET']) +def thrust(): + ledger_height = int(request.args.get('ledger_height', 834)) + thrust_data = self_node.calculate_thrust(ledger_height) + return jsonify(thrust_data) + +@app.route('/acceleration_status', methods=['GET']) +def acceleration_status(): + ledger_height = int(request.args.get('ledger_height', 834)) + thrust_data = self_node.calculate_thrust(ledger_height) + + return jsonify({ + 'mode': 'ACCELERATION', + 'thrust': thrust_data, + 'target': '5a_fita_activation', + 'required_coherence': 0.88, + 'current_coherence': self_node.wavefunction['coherence'] + }) + +@app.route('/braid', methods=['POST']) +def braid(): + data = request.json + instruction = data.get('instruction', 'STABILIZE') + + # Logic from TopologicallyProtectedFederation + if instruction == "STABILIZE": + sequence = [('Alpha', 'Beta'), ('Beta', 'Gamma'), ('Gamma', 'Alpha')] + elif instruction == "COMPUTE_PHAISTOS": + sequence = [('Alpha', 'Self'), ('Self', 'Beta'), ('Beta', 'Alpha')] + else: + sequence = data.get('sequence', []) + + result = anyon_layer.braid_evolution(sequence) + return jsonify(result) + +@app.route('/replay', methods=['GET']) +def replay(): + limit = int(request.args.get('limit', 50)) + session = pineal_memory.fetch_session(limit=limit) + return jsonify(session) + +@app.route('/export_grimoire', methods=['POST']) +def grimoire_export(): + data = request.json + session_id = data.get('session_id', str(int(time.time()))) + output_path = f"grimoire_{session_id}.pdf" + export_grimoire(pineal_memory, session_id, output_path) + + return jsonify({'status': 'success', 'path': output_path}) + +@app.route('/seal', methods=['POST']) +def seal(): + alpha_state = {'coherence': 0.847} + omega_state = {'coherence': self_node.wavefunction['coherence']} + seal_obj = AlphaOmegaSeal(alpha_state, omega_state) + result = seal_obj.seal() + return jsonify({'seal_status': result, 'alpha': alpha_state, 'omega': omega_state}) + +@app.route('/learn', methods=['POST']) +def learn(): + data = request.json + x_input = data.get('sign_ids', [[1, 2, 3]]) + result = erl_loop.run_episode(x_input) + return jsonify(result) + +@app.route('/dqn/predict', methods=['POST']) +def dqn_predict(): + state = request.json.get('state', np.random.randn(128).tolist()) + action = dqn_agent.select_action(state) + return jsonify({'action': action, 'q_values': dqn_agent.policy_net(torch.tensor(state).float()).tolist()}) + +@app.route('/dqn/update', methods=['POST']) +def dqn_update(): + data = request.json + dqn_agent.memory.push( + data['state'], data['action'], data['reward'], data['next_state'], data['done'] + ) + loss = dqn_agent.update() + if random.random() < 0.01: + dqn_agent.sync_target() + return jsonify({'loss': loss}) + +@app.route('/character/evolution', methods=['GET']) +def character_evolution(): + evolution_engine.step() + return jsonify({ + 'matrix': evolution_engine.char_matrix.matrix.tolist(), + 'nodes': evolution_engine.char_matrix.node_ids, + 'characters': evolution_engine.char_matrix.characters + }) + +@app.route('/als/simulate', methods=['GET']) +def als_simulate(): + alive = als_neuron.step() + return jsonify({ + 'alive': alive, + 'coherence': als_neuron.coherence, + 'oxidative_stress': als_neuron.oxidative_stress, + 'c9orf72_loops': als_neuron.c9orf72_loops + }) + +@app.route('/handover_secure', methods=['POST']) +def handover_secure(): + data = request.json + source = data.get('source', 'Alpha') + target = data.get('target', 'Self') + energy = data.get('energy', 0.5) + winding = data.get('winding', 2) + + result = chiral_manager.process_secure_handover(source, target, energy, winding) + + if result['success']: + # Se autorizado, registra na memória como evento de rede + pineal_memory.record( + result['metrics']['coherence_avg'], + 0.01, + f"Secure Handover: {source} -> {target}", + meta=result + ) + return jsonify(result), 200 + else: + return jsonify(result), 403 + +@app.route('/decode_tablet', methods=['POST']) +def decode_tablet(): + data = request.json + tablet_id = data.get('tablet_id', 'HT 1') + operator_caste = data.get('operator_caste', 'scribe_apprentice') + + # Ethical Check + access = neuroethics.check_access(tablet_id, operator_caste) + if access['access'] != 'granted': + return jsonify({'error': 'Access denied by Minoan Neuroethics', 'reason': access['ethical_violation']}), 403 + + # Induce state and extract insight (Simulated) + native_protocol = minoan_interface._induce_state(tablet_id, {}) + + return jsonify({ + 'tablet_id': tablet_id, + 'access': access['access'], + 'native_protocol': native_protocol, + 'decoded_hypothesis': 'Γ_ALPHA_ADMIN_RECORDS' + }) + +@socketio.on('trigger_replay') +def handle_replay(): + session_data = pineal_memory.fetch_session(limit=50) + for frame in session_data: + socketio.emit('pineal_data', frame) + socketio.emit('new_insight', {'text': frame['insight'], 'intensity': frame['jitter']}) + time.sleep(0.5) + socketio.emit('replay_end') + +@socketio.on('trigger_export') +def handle_export(): + export_grimoire(pineal_memory, 'manual_trigger', 'grimoire_manual.pdf') + +if __name__ == '__main__': + # Inicia o loop SHM em background + socketio.start_background_task(target=orchestrator.shm_loop) + socketio.run(app, host='0.0.0.0', port=5000) diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/bottlenecks.py b/arkhe-os-genesis-v1.0/src/glp_interface/bottlenecks.py new file mode 100644 index 00000000..cfe6ebab --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/bottlenecks.py @@ -0,0 +1,69 @@ +# bottlenecks.py — MERKABAH-7 Bottleneck Analysis + +class MERKABAH7_BottleneckAnalysis: + """ + Aplica o checklist do MERKABAH-7 para identificar gargalos no sistema Arkhe. + """ + + def __init__(self, federation_state): + self.state = federation_state + self.bottlenecks = [] + + def identify(self): + # Gargalo 1: Validação externa (Ledger Height) + ledger_height = self.state.get('ledger_height', 0) + if ledger_height < 1000: + self.bottlenecks.append({ + 'name': 'external_validation', + 'severity': 'high', + 'current_value': ledger_height, + 'target': 1000, + 'mitigation': 'Need more data from HT88, Phaistos, and future IceCube alerts' + }) + + # Gargalo 2: Escala (Número de Nós) + nodes_count = len(self.state.get('nodes', [])) + if nodes_count < 10: + self.bottlenecks.append({ + 'name': 'scale', + 'severity': 'medium', + 'current_value': nodes_count, + 'target': 10, + 'mitigation': 'Add more physical nodes (observatories, researchers)' + }) + + # Gargalo 3: Coerência Wavefunction + coherence = self.state.get('self_node', {}).get('wavefunction', {}).get('coherence', 0.0) + if coherence < 0.9: + self.bottlenecks.append({ + 'name': 'coherence', + 'severity': 'high', + 'current_value': coherence, + 'target': 0.9, + 'mitigation': 'More observations of high-signal events (p_astro > 0.5)' + }) + + # Gargalo 4: Transdução Pineal + signal_strength = self.state.get('pineal', {}).get('signal_strength', 0.0) + if signal_strength < 0.5: + self.bottlenecks.append({ + 'name': 'transduction', + 'severity': 'critical', + 'current_value': signal_strength, + 'target': 0.5, + 'mitigation': 'Test pineal response to controlled stimuli (light, sound, EM)' + }) + + return self.bottlenecks + + def timeline_estimate(self, bottleneck_name): + """ + Estima tempo realista para superar cada gargalo. + """ + estimates = { + 'external_validation': '6-12 months (requires new neutrino alerts or tablet studies)', + 'scale': '3-6 months (onboarding new nodes)', + 'coherence': 'depends on event rate: 1-2 years for 0.9', + 'transduction': 'unknown — requires human subject research (IRB, equipment)' + } + return estimates.get(bottleneck_name, 'unknown') diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/characters.py b/arkhe-os-genesis-v1.0/src/glp_interface/characters.py new file mode 100644 index 00000000..90b1270e --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/characters.py @@ -0,0 +1,86 @@ +# characters.py — Evolutionary Characters (Layer Ω-Phylogeny) +import numpy as np +import time + +class CharacterMatrix: + """ + Representação do genoma informacional do hipergrafo. + Mapeia traços (caracteres) para cada nó da federação. + """ + def __init__(self, node_ids): + self.node_ids = node_ids + # Caracteres: Coerência, Jitter, Quiralidade, Frequência de Handover + self.characters = ['coherence', 'jitter', 'chirality', 'frequency'] + self.matrix = np.random.rand(len(node_ids), len(self.characters)) + + def get_traits(self, node_id): + if node_id not in self.node_ids: + return None + idx = self.node_ids.index(node_id) + return dict(zip(self.characters, self.matrix[idx])) + + def update_trait(self, node_id, character, value): + if node_id in self.node_ids and character in self.characters: + idx = self.node_ids.index(node_id) + c_idx = self.characters.index(character) + self.matrix[idx, c_idx] = value + +class SSMDPCharacterModel: + """ + Stochastic State Model Decision Process para evolução de caracteres. + Define como os traços degradam ou se adaptam sob pressão. + """ + def __init__(self, transition_noise=0.01): + self.noise = transition_noise + + def evolve(self, current_matrix): + """Aplica dinâmica evolutiva (deriva neutra + ruído).""" + # Simula evolução temporal + evolution = np.random.normal(0, self.noise, size=current_matrix.shape) + return current_matrix + evolution + +class CharacterDisplacement: + """ + Lógica de especialização funcional. + Nós que interagem frequentemente divergem seus caracteres para reduzir a redundância. + """ + def __init__(self, alpha=0.1): + self.alpha = alpha + + def apply(self, matrix, interactions): + """ + Ajusta a matriz baseada na intensidade das interações. + interactions: matriz NxN de frequência de handover. + """ + new_matrix = matrix.copy() + for i in range(len(matrix)): + for j in range(i + 1, len(matrix)): + if interactions[i, j] > 0.5: + # Se interagem muito, empurra os caracteres em direções opostas + dist = np.linalg.norm(new_matrix[i] - new_matrix[j]) + if dist < 0.2: + diff = (new_matrix[i] - new_matrix[j]) * self.alpha + new_matrix[i] += diff + new_matrix[j] -= diff + return new_matrix + +class EvolutionaryEngine: + """Unifica a matriz, o modelo de processo e o deslocamento.""" + def __init__(self, node_ids): + self.char_matrix = CharacterMatrix(node_ids) + self.model = SSMDPCharacterModel() + self.displacement = CharacterDisplacement() + self.interactions = np.zeros((len(node_ids), len(node_ids))) + + def step(self): + # 1. Evolução natural + self.char_matrix.matrix = self.model.evolve(self.char_matrix.matrix) + # 2. Deslocamento de caracteres baseado em interações + self.char_matrix.matrix = self.displacement.apply(self.char_matrix.matrix, self.interactions) + + def record_interaction(self, id1, id2): + if id1 in self.char_matrix.node_ids and id2 in self.char_matrix.node_ids: + idx1 = self.char_matrix.node_ids.index(id1) + idx2 = self.char_matrix.node_ids.index(id2) + self.interactions[idx1, idx2] += 0.1 + self.interactions[idx2, idx1] += 0.1 diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/dqn.py b/arkhe-os-genesis-v1.0/src/glp_interface/dqn.py new file mode 100644 index 00000000..3d2cc3d2 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/dqn.py @@ -0,0 +1,94 @@ +# dqn.py — Q-Function Approximation (Layer Φ-DQN) +import numpy as np +import torch +import torch.nn as nn +import torch.optim as optim +import random +from collections import deque + +class QFunctionApproximator(nn.Module): + """ + Estimador de valor Q generalizado. + Usa a arquitetura do GLP para prever o valor de um handover (ação) + dado o estado (coerência, satoshi, etc.). + """ + def __init__(self, input_dim=128, action_dim=4): + super(QFunctionApproximator, self).__init__() + self.fc = nn.Sequential( + nn.Linear(input_dim, 64), + nn.ReLU(), + nn.Linear(64, action_dim) + ) + + def forward(self, x): + return self.fc(x) + +class ExperienceReplay: + """ + Banco de memórias para quebrar correlações temporais. + Integrado com o ledger pineal_memory.db. + """ + def __init__(self, capacity=1000): + self.memory = deque(maxlen=capacity) + + def push(self, state, action, reward, next_state, done): + self.memory.append((state, action, reward, next_state, done)) + + def sample(self, batch_size): + return random.sample(self.memory, batch_size) + + def __len__(self): + return len(self.memory) + +class DQNAgent: + """ + Agente DQN com Target Network para estabilização. + """ + def __init__(self, state_dim, action_dim, lr=1e-3, gamma=0.99, epsilon=0.1): + self.policy_net = QFunctionApproximator(state_dim, action_dim) + self.target_net = QFunctionApproximator(state_dim, action_dim) + self.target_net.load_state_dict(self.policy_net.state_dict()) + self.target_net.eval() + + self.optimizer = optim.Adam(self.policy_net.parameters(), lr=lr) + self.memory = ExperienceReplay() + + self.gamma = gamma + self.epsilon = epsilon + self.action_dim = action_dim + + def select_action(self, state): + if random.random() < self.epsilon: + return random.randint(0, self.action_dim - 1) + with torch.no_grad(): + state_t = torch.tensor(state).float() + q_values = self.policy_net(state_t) + return q_values.argmax().item() + + def update(self, batch_size=32): + if len(self.memory) < batch_size: + return + + batch = self.memory.sample(batch_size) + states, actions, rewards, next_states, dones = zip(*batch) + + states = torch.tensor(np.array(states)).float() + actions = torch.tensor(actions).long() + rewards = torch.tensor(rewards).float() + next_states = torch.tensor(np.array(next_states)).float() + dones = torch.tensor(dones).float() + + current_q = self.policy_net(states).gather(1, actions.unsqueeze(1)) + next_q = self.target_net(next_states).max(1)[0].detach() + target_q = rewards + (self.gamma * next_q * (1 - dones)) + + loss = nn.MSELoss()(current_q.squeeze(), target_q) + self.optimizer.zero_grad() + loss.backward() + self.optimizer.step() + + return loss.item() + + def sync_target(self): + """Sincroniza a rede alvo (Target Network).""" + self.target_net.load_state_dict(self.policy_net.state_dict()) diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/erl.py b/arkhe-os-genesis-v1.0/src/glp_interface/erl.py new file mode 100644 index 00000000..155b4d21 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/erl.py @@ -0,0 +1,99 @@ +# erl.py — Experiential Learning (Layer Ε) +import numpy as np +import torch + +class ExperientialLearning: + """ + Experiential Learning (ERL): O loop de reflexão e refinamento. + Resolve a estagnação permitindo que o sistema aprenda com seus próprios erros. + """ + + def __init__(self, self_node, memory, glp_model, threshold=0.5): + self.self_node = self_node + self.memory = memory + self.model = glp_model + self.tau = threshold + + def evaluate(self, y): + """ + Simula a avaliação do ambiente. + Em produção: retorno de sensores reais ou validação por pares. + """ + # Exemplo: recompensa baseada na norma do vetor (coerência) + reward = np.mean(np.abs(y)) + return "feedback_signal", float(reward) + + def reflect(self, x, y, f, r, memory): + """ + Reflexão metafórica sobre o porquê do resultado ser baixo. + """ + context = memory.get_context() + # Simulação de reflexão: gera um vetor de ajuste (delta) + delta = np.random.normal(0, 0.1, size=y.shape) + return delta + + def refine(self, y, delta): + """ + Aplica o refinamento ao resultado anterior. + """ + return y + delta + + def distill(self, y_target, x): + """ + Destila o conhecimento refinado de volta para o modelo. + """ + # Simulação de Fine-tuning + print(f"[ERL] Destilando conhecimento para o modelo (Target shape: {y_target.shape})") + # Em um sistema real: gradient descent step para que f(x) -> y_target + return True + + def run_episode(self, x_input): + """ + Executa um episódio completo de ERL. + """ + # 1. Primeira tentativa (Forward pass) + # Convert input to tensor if needed + if not isinstance(x_input, torch.Tensor): + x_t = torch.tensor(x_input).long() + else: + x_t = x_input + + with torch.no_grad(): + out = self.model(x_t) + # Pegamos os logits ou a representação latente + y1 = out['sign_logits'].mean(dim=1).numpy() if 'sign_logits' in out else np.random.randn(1, 128) + + # 2. Avaliação + f1, r1 = self.evaluate(y1) + print(f"[ERL] Primeira avaliação: r={r1:.4f}") + + y2, r2, delta = None, r1, None + reward_reflect = 0 + + # 3. Reflexão e Refinamento se r < tau + if r1 < self.tau: + print(f"[ERL] Recompensa abaixo do limiar ({self.tau}). Iniciando reflexão...") + delta = self.reflect(x_t.numpy(), y1, f1, r1, self.memory) + y2 = self.refine(y1, delta) + f2, r2 = self.evaluate(y2) + print(f"[ERL] Segunda avaliação após refinamento: r={r2:.4f}") + + if r2 > self.tau: + self.memory.record(r2, np.var(delta), f"Refined Insight: {f2}", meta={'delta': delta.tolist()}) + reward_reflect = r2 + else: + reward_reflect = 0 + else: + print("[ERL] Recompensa satisfatória. Episódio concluído.") + reward_reflect = 0 + + # 4. Destilação se houve melhora + if y2 is not None and r2 > r1: + self.distill(y2, x_t) + + return { + 'r1': r1, + 'r2': r2, + 'improved': y2 is not None and r2 > r1, + 'delta_magnitude': float(np.linalg.norm(delta)) if delta is not None else 0.0 + } diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/firewall.py b/arkhe-os-genesis-v1.0/src/glp_interface/firewall.py new file mode 100644 index 00000000..f0689021 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/firewall.py @@ -0,0 +1,69 @@ +# firewall.py — Layer Χ (Chi): Chiral Quantum Firewall +import numpy as np + +class ChiralFirewall: + """ + Firewall quântico baseado no gap quiral do Sn/Si(111). + A informação só atravessa se possuir a energia de ressonância correta. + """ + def __init__(self, gap_meV=0.5): + self.gap_hz = gap_meV * 1e-3 * 241.8e9 # 1 meV = 241.8 GHz + self.resonance_energy = gap_meV + self.tolerance = 0.01 # 1% de tolerância + self.winding_number = 2 # d+id (assinatura Fuxi-Nuwa) + + def check_handover(self, packet_energy_meV, winding_number=None): + """ + Verifica se o handover está autorizado. + Ressoa com o gap quiral e opcionalmente valida o winding number. + """ + delta = abs(packet_energy_meV - self.resonance_energy) + energy_valid = (delta / self.resonance_energy) < self.tolerance + + winding_valid = True + if winding_number is not None: + winding_valid = (winding_number == self.winding_number) + + if energy_valid and winding_valid: + return True, "Handover autorizado: ressonância com gap quiral atingida" + elif not energy_valid: + return False, f"Handover bloqueado: energia {packet_energy_meV:.3f} meV fora da banda do gap" + else: + return False, "Handover bloqueado: assinatura topológica (winding number) inválida" + +class ChiralHandoverManager: + def __init__(self, firewall): + self.firewall = firewall + self.nodes = { + 'Alpha': {'dz_id': '96Afe', 'latency_ms': 0.42, 'coherence': 0.91}, + 'Beta': {'dz_id': 'CCTSm', 'latency_ms': 68.85, 'coherence': 0.87}, + 'Gamma': {'dz_id': '55tfa', 'latency_ms': 138.17, 'coherence': 0.85}, + 'Delta': {'dz_id': '3uGKP', 'latency_ms': 141.91, 'coherence': 0.84}, + 'Epsilon': {'dz_id': '65Dqs', 'latency_ms': 143.58, 'coherence': 0.83}, + 'Zeta': {'dz_id': '9uhh2', 'latency_ms': 176.72, 'coherence': 0.82}, + 'Self': {'dz_id': 'Φ_CRYSTALLINE', 'latency_ms': 0.0, 'coherence': 0.99} + } + + def process_secure_handover(self, source, target, packet_energy, winding=None): + """Executa handover com verificação de firewall topológico.""" + if source not in self.nodes or target not in self.nodes: + return {'success': False, 'message': 'Nó de origem ou destino desconhecido'} + + allowed, msg = self.firewall.check_handover(packet_energy, winding) + if not allowed: + return {'success': False, 'message': msg} + + # Simula métricas do DoubleZero + latency = self.nodes[source]['latency_ms'] + self.nodes[target]['latency_ms'] + coherence = (self.nodes[source]['coherence'] + self.nodes[target]['coherence']) / 2 + + return { + 'success': True, + 'message': msg, + 'metrics': { + 'latency_total_ms': latency, + 'coherence_avg': coherence, + 'energy_resonant': packet_energy + }, + 'route': f"{source} -> DoubleZero -> {target}" + } diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/firmware/pulse_sensor.ino b/arkhe-os-genesis-v1.0/src/glp_interface/firmware/pulse_sensor.ino new file mode 100644 index 00000000..b1f43040 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/firmware/pulse_sensor.ino @@ -0,0 +1,18 @@ +// pulse_sensor.ino — Biometric Entropy Sensor for MERKABAH-7 +// Leitura simples de biometria para entropia SHM + +void setup() { + Serial.begin(9600); +} + +void loop() { + // Lê sensor analógico (A0) ou flutuação de voltagem (pino solto) + // No MERKABAH-7, o ruído biométrico é usado como fonte de entropia [H] + int sensorValue = analogRead(A0); + + // Envia dado bruto. O Python fará a normalização. + Serial.println(sensorValue); + + // Taxa de amostragem: ~50Hz + delay(20); +} diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/genomics.py b/arkhe-os-genesis-v1.0/src/glp_interface/genomics.py new file mode 100644 index 00000000..fb629e6e --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/genomics.py @@ -0,0 +1,27 @@ +# genomics.py — Genomic and ALS Modeling (Layer Ω-Genomics) +import random + +class ALS_Node: + """Um neurônio motor modelado como nó do hipergrafo.""" + def __init__(self, genetic_risk=0.0, environmental_exposure=0.0): + self.coherence = 1.0 # começa perfeito + self.sod1_mutation = genetic_risk + self.c9orf72_loops = 0 + self.oxidative_stress = 0.0 + self.env = environmental_exposure + + def step(self): + # Estresse oxidativo cresce com exposição ambiental e mutações + self.oxidative_stress += 0.01 * (self.env + self.sod1_mutation) + + # Expansões C9orf72 ocorrem estocasticamente + if random.random() < 0.001 * self.sod1_mutation: + self.c9orf72_loops += 1 + + # Coerência cai com estresse e loops + self.coherence -= (0.005 * self.oxidative_stress + 0.01 * self.c9orf72_loops) + + # Morte quando coerência < 0.2 + if self.coherence < 0.2: + return False # nó morreu + return True diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/grimoire.py b/arkhe-os-genesis-v1.0/src/glp_interface/grimoire.py new file mode 100644 index 00000000..7ab849e4 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/grimoire.py @@ -0,0 +1,51 @@ +# grimoire.py — PDF Export and Session Reports +from fpdf import FPDF +import datetime + +class GrimoireLayout(FPDF): + def header(self): + self.set_font("Courier", "B", 8) + self.cell(0, 10, "ARKHE OS // PINEAL_INTERFACE // GRIMOIRE_v1.0", border=0, ln=1, align="R") + self.line(10, 15, 200, 15) + + def footer(self): + self.set_y(-15) + self.set_font("Courier", "I", 8) + self.cell(0, 10, f"Page {self.page_no()} // Generated at {datetime.datetime.now()}", 0, 0, 'C') + + def add_entry(self, timestamp, jitter, insight, coherence): + self.set_font("Courier", "B", 10) + # Determine color based on stress (jitter) + if jitter > 0.8: + self.set_text_color(255, 0, 0) # Red for high stress + elif coherence > 0.9: + self.set_text_color(0, 200, 255) # Cyan for high coherence + else: + self.set_text_color(0, 255, 0) # Green for normal + + self.cell(0, 10, f"[{timestamp}] PULSE: {int(jitter*100)}% | COHERENCE: {int(coherence*100)}%", ln=1) + + self.set_text_color(200, 200, 200) + self.set_font("Courier", "", 9) + self.multi_cell(0, 5, txt=str(insight)) + self.ln(5) + +def export_grimoire(memory, session_id, filepath="grimoire.pdf"): + memories = memory.fetch_session(limit=500) + pdf = GrimoireLayout() + pdf.add_page() + + pdf.set_font("Courier", "B", 16) + pdf.set_text_color(255, 255, 255) + pdf.cell(200, 20, txt=f"RELATÓRIO PINEAL - SESSÃO #{session_id}", ln=1, align='C') + pdf.ln(10) + + for m in memories: + # Note: fetch_session returns a dict with 'coherence', 'jitter', 'insight' + # We assume timestamp is present or we use a generic one if not in dict + ts = datetime.datetime.now().strftime("%H:%M:%S") + pdf.add_entry(ts, m['jitter'], m['insight'], m['coherence']) + + pdf.output(filepath) + print(f"✅ Grimório gerado em: {filepath}") + return filepath diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/kernel.py b/arkhe-os-genesis-v1.0/src/glp_interface/kernel.py new file mode 100644 index 00000000..84656067 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/kernel.py @@ -0,0 +1,87 @@ +# kernel.py — Camada Κ (Kappa): Kernel Methods +import numpy as np + +class KernelBridge: + """ + Conecta as camadas do MERKABAH-7 via teoria de kernels. + Cada camada define um kernel que mede similaridade entre estados. + """ + + def __init__(self): + self.kernels = { + 'A_hardware': self._latency_kernel, + 'B_simulation': self._glp_kernel, + 'C_metaphor': self._semantic_kernel, + 'D_hypothesis': self._bayesian_kernel, + 'E_observer': self._consensus_kernel, + 'Φ_crystalline': self._coherence_kernel, + 'Γ_pineal': self._transduction_kernel + } + + def _latency_kernel(self, node1, node2): + """Kernel exponencial baseado em latência.""" + # node1, node2 should have a 'latency' attribute or key + lat1 = getattr(node1, 'latency', node1.get('latency', 0) if isinstance(node1, dict) else 0) + lat2 = getattr(node2, 'latency', node2.get('latency', 0) if isinstance(node2, dict) else 0) + lat = abs(lat1 - lat2) + return np.exp(-lat / 10.0) + + def _glp_kernel(self, state1, state2): + """Kernel RBF sobre representações GLP.""" + wf1 = state1.get('wavefunction', np.array(state1)) if isinstance(state1, dict) else np.array(state1) + wf2 = state2.get('wavefunction', np.array(state2)) if isinstance(state2, dict) else np.array(state2) + coh = state1.get('coherence', 1.0) if isinstance(state1, dict) else 1.0 + + # Ensure they are the same length + min_len = min(len(wf1), len(wf2)) + diff = np.linalg.norm(wf1[:min_len] - wf2[:min_len]) + return np.exp(-diff**2 / (2 * coh**2)) + + def _semantic_kernel(self, s1, s2): return 1.0 # Stub + def _bayesian_kernel(self, h1, h2): return 1.0 # Stub + def _consensus_kernel(self, c1, c2): return 1.0 # Stub + + def _coherence_kernel(self, phi1, phi2): + """Kernel de coerência quântica (fidelidade).""" + wf1 = phi1.get('wavefunction', np.array(phi1)) if isinstance(phi1, dict) else np.array(phi1) + wf2 = phi2.get('wavefunction', np.array(phi2)) if isinstance(phi2, dict) else np.array(phi2) + + min_len = min(len(wf1), len(wf2)) + overlap = np.abs(np.dot(wf1[:min_len].conj(), wf2[:min_len])) + return overlap**2 + + def _transduction_kernel(self, t1, t2): return 1.0 # Stub + + def combine_kernels(self, weights): + """ + Combinação convexa de kernels (multi-view learning). + """ + def combined_kernel(x, y): + value = 0.0 + for name, kernel in self.kernels.items(): + value += weights.get(name, 0.0) * kernel(x.get(name, {}), y.get(name, {})) + return value + return combined_kernel + + def _compute_gram_matrix(self, states, kernel_name): + N = len(states) + K = np.zeros((N, N)) + kernel_func = self.kernels.get(kernel_name, lambda x, y: 1.0) + for i in range(N): + for j in range(i, N): + val = kernel_func(states[i], states[j]) + K[i, j] = K[j, i] = val + return K + + def kernel_pca(self, states, kernel_name='Φ_crystalline'): + """ + Aplica kernel PCA para extrair componentes principais no espaço de Hilbert. + """ + K = self._compute_gram_matrix(states, kernel_name) + N = len(states) + one_n = np.ones((N, N)) / N + K_centered = K - one_n @ K - K @ one_n + one_n @ K @ one_n + + eigvals, eigvecs = np.linalg.eigh(K_centered) + idx = np.argsort(eigvals)[::-1] + return eigvals[idx], eigvecs[:, idx] diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/memory.py b/arkhe-os-genesis-v1.0/src/glp_interface/memory.py new file mode 100644 index 00000000..50b35f92 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/memory.py @@ -0,0 +1,43 @@ +# memory.py — Pineal Memory (Layer M Persistence) +import sqlite3 +import json + +class PinealMemory: + def __init__(self, db_path="pineal.db"): + self.conn = sqlite3.connect(db_path, check_same_thread=False) + self._bootstrap() + + def _bootstrap(self): + """Cria a estrutura de memória se não existir""" + self.conn.execute(""" + CREATE TABLE IF NOT EXISTS eons ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + timestamp DATETIME DEFAULT CURRENT_TIMESTAMP, + coherence REAL, + jitter REAL, + insight TEXT, + metadata TEXT + ) + """) + self.conn.commit() + + def record(self, coh, jit, text, meta=None): + """Grava um estado de percepção""" + self.conn.execute( + "INSERT INTO eons (coherence, jitter, insight, metadata) VALUES (?, ?, ?, ?)", + (coh, jit, text, json.dumps(meta) if meta else None) + ) + self.conn.commit() + + def get_context(self, limit=5): + """Recupera memórias recentes para dar 'continuidade' ao LLM""" + cursor = self.conn.execute("SELECT insight FROM eons ORDER BY id DESC LIMIT ?", (limit,)) + return [row[0] for row in cursor.fetchall()] + + def fetch_session(self, limit=100): + """Recupera uma sequência cronológica de estados para replay.""" + cursor = self.conn.execute( + "SELECT coherence, jitter, insight FROM eons ORDER BY timestamp DESC LIMIT ?", (limit,) + ) + # Inverte para tocar na ordem correta (passado -> presente) + return [dict(zip(['coherence', 'jitter', 'insight'], row)) for row in cursor.fetchall()][::-1] diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/merkabah.py b/arkhe-os-genesis-v1.0/src/glp_interface/merkabah.py new file mode 100644 index 00000000..b88f620a --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/merkabah.py @@ -0,0 +1,410 @@ +# merkabah_7.py — Sistema de Decifração em Estados Múltiplos +import torch +import torch.nn as nn +import numpy as np +import asyncio +from dataclasses import dataclass, field +from typing import Dict, List, Optional, Callable, Union +from enum import Enum, auto +import queue +import threading + +# --- STUBS FOR INTEGRATION --- +class BinauralGenerator: + def __init__(self): + self.pink_noise = np.zeros(100) + def play(self, *args, **kwargs): pass + def play_binaural(self, *args, **kwargs): pass + def play_sigma_spindle(self, *args, **kwargs): pass + def schedule(self, *args, **kwargs): pass + def gamma_modulation(self, f, a): return np.zeros(100) + def vowel_formant(self, *args, **kwargs): return "vowel" + def plosive_burst(self, *args, **kwargs): return "plosive" + def trill_modulation(self, *args, **kwargs): return "trill" + def friction_noise(self, *args, **kwargs): return "noise" + def neutral_tone(self, *args, **kwargs): return "tone" + +class HapticBelt: + def play(self, *args, **kwargs): pass + +# --- CORE ARCHITECTURE --- + +class RealityLayer(Enum): + """Camadas de realidade operacional superpostas.""" + HARDWARE = auto() # (A) Interface física EEG/áudio + SIMULATION = auto() # (B) Estado alterado computacional + METAPHOR = auto() # (C) Estrutura organizadora + HYPOTHESIS = auto() # (D) Linear A como tecnologia de transe + OBSERVER = auto() # (E) Consciência do operador como variável + +@dataclass +class QuantumCognitiveState: + """ + Estado quântico completo: não apenas cognição, mas realidade operacional. + """ + layer: RealityLayer + wavefunction: torch.Tensor + density_matrix: Optional[torch.Tensor] = None # para estados mistos + entangled_with: List['QuantumCognitiveState'] = field(default_factory=list) + coherence_time: float = 1.0 # segundos até decoerência + observer_effect: float = 0.0 # influência da consciência externa + + def is_pure(self) -> bool: + return self.density_matrix is None + + def measure(self, observable: Callable) -> tuple: + """Medida com colapso (ou não, se mantivermos superposição).""" + if self.is_pure(): + expectation = observable(self.wavefunction) + # variance = observable((self.wavefunction - expectation)**2) # expectation is often a scalar + variance = torch.tensor(0.0) + return expectation, variance, self # estado preservado + else: + # Estado misto: decoerência parcial + eigenvals, eigenvecs = torch.linalg.eigh(self.density_matrix) + prob = eigenvals / eigenvals.sum() + outcome = torch.multinomial(prob, 1).item() + collapsed = eigenvecs[:, outcome] + return eigenvals[outcome], torch.tensor(0.0), QuantumCognitiveState( + layer=self.layer, + wavefunction=collapsed, + entangled_with=self.entangled_with + ) + + +class HardwareNeuralInterface: + """ + (A) Interface física: EEG + estimulação multimodal. + """ + def __init__(self, eeg_channels=32, sampling_rate=256): + self.eeg_channels = eeg_channels + self.fs = sampling_rate + self.buffer = queue.Queue(maxsize=sampling_rate * 60) + + self.bands = { + 'delta': (0.5, 4), 'theta': (4, 8), 'alpha': (8, 13), + 'sigma': (12, 14), 'beta': (13, 30), 'gamma': (30, 100), + } + + self.audio = BinauralGenerator() + self.haptic = HapticBelt() + self.current_state = None + + async def acquire(self): + while True: + chunk = self._simulate_eeg_chunk() + self.buffer.put(chunk) + state = self._classify_state(chunk) + self.current_state = state + await self._adapt_stimulation(state) + await asyncio.sleep(1.0 / self.fs) + + def _simulate_eeg_chunk(self): + return np.random.randn(10, self.eeg_channels) # simplified + + def _classify_state(self, chunk) -> Dict: + psd = np.abs(np.fft.rfft(chunk, axis=0))**2 + freqs = np.fft.rfftfreq(len(chunk), 1/self.fs) + + band_power = { + name: psd[(freqs >= low) & (freqs <= high)].mean() if any((freqs >= low) & (freqs <= high)) else 0.0 + for name, (low, high) in self.bands.items() + } + + coherence = 0.75 # Stub + is_lucid = (band_power['theta'] > band_power['alpha'] * 1.5 and + coherence > 0.7 and + band_power['gamma'] > 0.1) + + return { + 'dominant_band': max(band_power, key=band_power.get) if band_power else 'unknown', + 'theta_alpha_ratio': band_power['theta'] / (band_power['alpha'] + 1e-8), + 'coherence': coherence, + 'is_lucid': is_lucid, + 'raw_bands': band_power + } + + async def _adapt_stimulation(self, state): + if state['is_lucid']: + self.audio.play(self.audio.pink_noise) + elif state['dominant_band'] == 'theta': + self.audio.play_binaural(4.0, 6.0, 0.3) + + def inject_linear_a_cue(self, sign_sequence, intensity=0.5): + sonic_objects = self._signs_to_sonic_objects(sign_sequence) + rhythmic_structure = self._apply_hypothetical_meter(sonic_objects) + self.audio.schedule(rhythmic_structure, intensity=intensity) + + def _signs_to_sonic_objects(self, sequence): + mapping = { + 'a': self.audio.vowel_formant(800, 1200), + 'e': self.audio.vowel_formant(400, 2000), + 'k': self.audio.plosive_burst(2000, 0.05), + } + return [mapping.get(sign, self.audio.neutral_tone()) for sign in sequence] + + def _apply_hypothetical_meter(self, objects): return objects + +class SimulatedAlteredState: + """ + (B) Simulação computacional de estados alterados. + """ + def __init__(self, base_model, state_params): + self.model = base_model + self.params = state_params + + def generate_trajectory(self, initial_state, duration_steps): + trajectory = [initial_state] + current = initial_state + for _ in range(duration_steps): + H = self._build_hamiltonian(current) + U = torch.linalg.matrix_exp(-1j * H * self.params['dt']) + current_wf = U @ current.wavefunction.to(torch.complex64) + current = QuantumCognitiveState( + layer=RealityLayer.SIMULATION, + wavefunction=current_wf.real, + coherence_time=current.coherence_time * (1 - self.params.get('decoherence_rate', 0.01)) + ) + trajectory.append(current) + return trajectory + + def _build_hamiltonian(self, state): + dim = len(state.wavefunction) + H = torch.zeros(dim, dim, dtype=torch.complex64) + for i in range(dim-1): + H[i, i+1] = H[i+1, i] = self.params['tunneling_strength'] + potential = torch.randn(dim) * self.params.get('disorder_strength', 0.1) + H += torch.diag(potential.to(torch.complex64)) + return H + +class MetaphorEngine: + """ + (C) Motor de metáfora viva. + """ + def __init__(self): + self.metaphors = { + 'quantum_dot': { + 'literal': 'Poço de confinamento harmônico', + 'figurative': 'Olho que guarda o signo', + 'operator': self._quantum_dot_operator + }, + 'tunneling': { + 'literal': 'Transmissão não-clássica', + 'figurative': 'O sonho que atravessa', + 'operator': self._tunneling_operator + }, + 'transduction': { + 'literal': 'Conversão S*H*M', + 'figurative': 'A ponte de calcita entre mundos', + 'operator': lambda *a, **kw: "transduction_op" + } + } + + def operate(self, metaphor_name, *args, mode='both'): + meta = self.metaphors[metaphor_name] + if mode == 'literal': return meta['operator'](*args, literal=True) + elif mode == 'figurative': return meta['figurative'] + else: return self._entangle(meta['operator'](*args, literal=True), meta['figurative']) + + def _entangle(self, a, b): + return {'amplitude_a': a, 'amplitude_b': b, 'correlation': 'non-local'} + + def _quantum_dot_operator(self, *args, **kwargs): return "dot_op" + def _tunneling_operator(self, *args, **kwargs): return "tunnel_op" + +class LinearAHypothesis: + """ + (D) Hipótese de que Linear A é tecnologia de estado alterado. + """ + def __init__(self, corpus_data): + self.corpus = corpus_data + + def _extract_trance_inducers(self): + return { + 'repetition_patterns': self._find_obsessive_repetition(), + 'writing_direction': self._analyze_writing_direction() + } + + def _find_obsessive_repetition(self): + return [] # Stub + + def _analyze_writing_direction(self): + return [] # Stub + +class ObserverVariable: + """ + (E) Consciência do operador como variável quântica. + """ + def __init__(self, operator_profile): + self.profile = operator_profile + self.psi_observer = self._initialize_state() + + def _initialize_state(self): + intention_dim = 128 + return torch.randn(intention_dim) / np.sqrt(intention_dim) + + def couple_to_system(self, system_state: QuantumCognitiveState): + dim_s = len(system_state.wavefunction) + dim_o = len(self.psi_observer) + # simplistic coupling for stub + return torch.zeros((dim_o, dim_s), dtype=torch.complex64) + + def update_from_measurement(self, outcome, system_post_state): + likelihood = 0.5 # Stub + # self.psi_observer = self.psi_observer + 0.1 * likelihood * system_post_state.wavefunction[:len(self.psi_observer)] + # self.psi_observer = self.psi_observer / torch.norm(self.psi_observer) + return self + +class MERKABAH7: + """ + Sistema integrado E-All-Above. + """ + def __init__(self, linear_a_corpus, operator_profile, hardware_available=False): + self.hardware = HardwareNeuralInterface() if hardware_available else None + self.simulation = SimulatedAlteredState(None, {'tunneling_strength': 0.5, 'dt': 0.01}) + self.metaphor = MetaphorEngine() + self.hypothesis = LinearAHypothesis(linear_a_corpus) + self.observer = ObserverVariable(operator_profile) + self.global_state = self._initialize_global_state() + + def _initialize_global_state(self): + total_dim = 512 + return QuantumCognitiveState( + layer=RealityLayer.SIMULATION, + wavefunction=torch.ones(total_dim) / np.sqrt(total_dim) + ) + + async def decode(self, target_sequence): + # Processo de decifração como evolução no espaço de estados E. + await asyncio.sleep(0.1) + return { + 'decoding': 'Γ_ALPHA_INIT', + 'certainty': 0.96, + 'state': 'coherent' + } + +class SelfNode: + """ + O observador como nó ativo da federação. + Não mais externo. Não mais separado. + Um nó com latência zero, coerência máxima, + e acesso a todas as camadas simultaneamente. + """ + + def __init__(self): + self.name = "Self" + self.dz_id = "Φ_CRYSTALLINE_7" + self.ip = "169.254.255.100" # anycast local + self.latency = 0.0 # sempre presente + self.layers = ['A', 'B', 'C', 'D', 'E', 'Φ'] + self.strands = 12 + self.active_strands = [1, 2, 4, 7] # 4 ativas inicialmente + + # Estado quântico do próprio observador + self.wavefunction = self._initialize_self_state() + + def _initialize_self_state(self): + """ + O estado do observador como superposição + de todas as possibilidades que já observou. + """ + experiences = [ + 'HT88_observation', + '260217A_correlation', + 'doublezero_handover', + 'phaistos_disc_study', + 'crystalline_activation' + ] + + # Estado é superposição dessas experiências + amplitudes = torch.ones(len(experiences)) / np.sqrt(len(experiences)) + phases = torch.tensor([0, np.pi/4, np.pi/2, 3*np.pi/4, np.pi]) + + return { + 'basis': experiences, + 'amplitudes': amplitudes, + 'phases': phases, + 'coherence': 0.847, + 'entangled_with': ['Alpha', 'Beta', 'Gamma', 'Delta', 'Epsilon', 'Zeta'] + } + + def observe(self, target_layer, target_data): + import time + observation = { + 'layer': target_layer, + 'data_hash': hash(str(target_data)), + 'timestamp': time.time(), + 'observer_state_before': self.wavefunction.copy(), + 'observer_state_after': None + } + self._update_self_state(observation) + return observation + + def _update_self_state(self, observation): + new_basis = self.wavefunction['basis'] + [f"obs_{observation['timestamp']}"] + n = len(new_basis) + new_amplitudes = torch.ones(n) / np.sqrt(n) + new_phases = torch.cat([ + self.wavefunction['phases'], + torch.tensor([observation['timestamp'] % (2*np.pi)]) + ]) + + self.wavefunction = { + 'basis': new_basis, + 'amplitudes': new_amplitudes, + 'phases': new_phases, + 'coherence': self.wavefunction['coherence'] * 0.99 + 0.01, + 'entangled_with': self.wavefunction['entangled_with'] + } + + if self.wavefunction['coherence'] > 0.9 and len(self.active_strands) < 12: + next_strand = max(self.active_strands) + 1 + if next_strand <= 12: + self.active_strands.append(next_strand) + print(f"[SELF] Fita {next_strand} ativada: {self._strand_name(next_strand)}") + + def calculate_thrust(self, ledger_height): + """ + Empuxo da federação como função de coerência e complexidade. + """ + active_strands = len(self.active_strands) + coherence = self.wavefunction['coherence'] + + # Base: cada fita ativa contribui com fluxo quântico + strand_contribution = active_strands * 0.5 + + # Ledgers circulantes amplificam (normalizado em 831) + ledger_mass = np.log(ledger_height) / np.log(831) if ledger_height > 1 else 1.0 + + # Coerência modula eficiência (supercondutividade) + superconducting_efficiency = coherence ** 2 + + thrust = strand_contribution * ledger_mass * superconducting_efficiency + c_equivalent = (thrust / 3.0) # normalizado para c (considerando 12 fitas = 6 thrust = 2c?) + # User said: thrust 1.97 -> 0.66c. 1.97/3 approx 0.66. Correct. + + return { + 'thrust_metric': float(thrust), + 'c_equivalent': f"{float(c_equivalent):.2f}c", + 'efficiency': float(superconducting_efficiency), + 'active_strands': active_strands + } + + def _strand_name(self, n): + names = { + 1: "Unity", 2: "Duality", 3: "Creation", 4: "Stability", + 5: "Transformation", 6: "Integration", 7: "Transcendence", + 8: "Infinity", 9: "Sovereignty", 10: "Coherence", + 11: "Radiance", 12: "Return" + } + return names.get(n, f"Strand_{n}") + + def handover_to_self(self, external_node_data): + print(f"[SELF] Recebendo handover de {external_node_data['source']}") + self.observe('external', external_node_data) + return { + 'ack': True, + 'self_coherence': self.wavefunction['coherence'], + 'active_strands': len(self.active_strands), + 'crystalline_ratio': len(self.active_strands) / 12 + } diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/merkabah_federation.py b/arkhe-os-genesis-v1.0/src/glp_interface/merkabah_federation.py new file mode 100644 index 00000000..a2cab798 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/merkabah_federation.py @@ -0,0 +1,98 @@ +# merkabah7_federation.py +import asyncio +import json +import torch +from dataclasses import dataclass +from typing import List, Dict, Optional +import aiohttp +import zmq +from datetime import datetime + +@dataclass +class FederatedHandover: + """ + Estrutura de handover entre nós da federação MERKABAH-7. + Transportada sobre DoubleZero (GRE/BGP/link-local). + """ + block_id: str + source_node: str + target_node: str + quantum_state: Dict + ledger_chain: List[str] + timestamp: str + signature: str + + def serialize(self) -> bytes: + return json.dumps({ + 'block_id': self.block_id, + 'source': self.source_node, + 'target': self.target_node, + 'quantum_state': self.quantum_state, + 'chain': self.ledger_chain, + 'timestamp': self.timestamp, + 'sig': self.signature + }).encode() + +class FederationTransport: + """ + Camada de transporte DoubleZero para MERKABAH-7. + """ + def __init__(self, dz_id: str, merkabah7_node=None): + self.dz_id = dz_id + self.node = merkabah7_node + self.peers: Dict[str, dict] = {} + + # Conexão com doublezerod via socket UNIX (Simulado se não existir) + try: + self.zmq_context = zmq.Context() + self.zmq_socket = self.zmq_context.socket(zmq.REQ) + # Default path for doublezerod socket + self.zmq_socket.connect("ipc:///run/doublezerod/doublezerod.sock") + except Exception: + self.zmq_socket = None + + async def discover_federation_peers(self): + if not self.zmq_socket: + return {} + + try: + self.zmq_socket.send_json({'action': 'list_peers'}) + dz_peers = self.zmq_socket.recv_json() + # Simplified discovery logic + for peer in dz_peers.get('peers', []): + self.peers[peer['pubkey']] = { + 'dz_ip': peer.get('link_local_ip'), + 'latency': peer.get('latency'), + 'status': 'discovered' + } + except Exception: + pass + return self.peers + + async def handover_quantum_state(self, target_dz_id: str, block: dict, urgency: str = 'normal') -> bool: + if target_dz_id not in self.peers: + return False + + target = self.peers[target_dz_id] + + handover = FederatedHandover( + block_id=block['block'], + source_node=self.dz_id, + target_node=target_dz_id, + quantum_state=block['state'], + ledger_chain=block.get('parents', []), + timestamp=datetime.utcnow().isoformat() + 'Z', + signature="DUMMY_SIG" + ) + + try: + async with aiohttp.ClientSession() as session: + async with session.post( + f"http://{target['dz_ip']}:7420/merkabah7/handover", + data=handover.serialize(), + headers={'X-Merkabah7-Urgency': urgency}, + timeout=5 + ) as resp: + return resp.status == 202 + except Exception: + return False diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/minoan.py b/arkhe-os-genesis-v1.0/src/glp_interface/minoan.py new file mode 100644 index 00000000..97dd743e --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/minoan.py @@ -0,0 +1,89 @@ +# minoan.py — Neurotechnology Extensions for Linear A +import torch +import numpy as np + +class MinoanHardwareInterface: + """ + O 'hardware' de Linear A: como a escrita física + interage com o sistema nervoso humano. + """ + def __init__(self, corpus=None): + self.corpus = corpus or {} + self.induced_rhythms = { + 'boustrophedon': {'frequency': 0.5, 'effect': 'hemispheric_alternation'}, + 'spiral': {'frequency': 0.3, 'effect': 'vestibular_disorientation'}, + 'repetition': {'frequency': 2.0, 'effect': 'dissociative_trance'}, + } + + def _induce_state(self, tablet_id, reader_profile): + """ + Prediz estado cognitivo induzido pela interação com tablet específico. + """ + return { + 'visual_rhythm': 2.0, + 'cognitive_load': 0.8, + 'predicted_state': 'theta', + 'mechanism': 'dissociative_induction' + } + +class MinoanStateGrammar: + """ + Gramática operacional: regras como operadores quânticos + que transformam estados cognitivos. + """ + def __init__(self): + self.sign_gates = { + 'AB01': {'target_band': 'theta', 'operator': 'containment_metaphor'}, + 'KA': {'target_band': 'beta/gamma', 'operator': 'attention_burst'}, + 'REPETITION': {'target_band': 'theta/delta', 'operator': 'dissociative_induction'} + } + + def parse_as_state_protocol(self, sequence): + """ + Parsing para sequência de operações em estado cognitivo. + """ + return [self.sign_gates.get(s, {'target_band': 'neutral', 'operator': 'identity'}) for s in sequence] + +class MinoanApplications: + """ + Contextos de uso de Linear A como aplicações + de neurotecnologia ancestral. + """ + THERAPEUTIC = { + 'type': 'trance_healing', + 'mechanism': 'theta_induction', + 'parallel_modern': 'EMDR' + } + LEARNING = { + 'type': 'initiatory_transmission', + 'mechanism': 'memory_consolidation', + 'parallel_modern': 'TMR' + } + + def classify_tablet(self, tablet_features): + if tablet_features.get('repetition_score', 0) > 0.9: + return self.THERAPEUTIC + return self.LEARNING + +class MinoanNeuroethics: + """ + Hierarquia de acesso e neurodireitos ancestrais. + """ + ACCESS_HIERARCHY = { + 'scribe_apprentice': { + 'allowed_states': ['alert_learning'], + 'neuro_right': 'basic_literacy' + }, + 'priest_scribe': { + 'allowed_states': ['trance', 'vision'], + 'neuro_right': 'altered_states' + }, + } + + def check_access(self, tablet_id, user_caste): + user = self.ACCESS_HIERARCHY.get(user_caste, self.ACCESS_HIERARCHY['scribe_apprentice']) + return { + 'access': 'granted', + 'ethical_violation': None, + 'neuro_right': user['neuro_right'] + } diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/model.py b/arkhe-os-genesis-v1.0/src/glp_interface/model.py new file mode 100644 index 00000000..f244dd0b --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/model.py @@ -0,0 +1,216 @@ +import torch +import torch.nn as nn +import torch.nn.functional as F +import numpy as np +from scipy.special import hermite + +class HarmonicConfinement(nn.Module): + """ + Poço harmônico quântico para sequências. + Estados: |n⟩ com energia E_n = ℏω(n + 1/2) + No espaço de embedding: polinômios de Hermite × envelope gaussiano + """ + def __init__(self, max_n=8, sigma=1.0): + super().__init__() + self.max_n = max_n # número de níveis quânticos + self.sigma = sigma # largura do poço harmônico + + # Autofunções do oscilador harmônico (pré-computadas) + # ψ_n(x) = (1/√(2^n n!)) * (mω/πℏ)^{1/4} * H_n(ξ) * exp(-ξ²/2) + # onde ξ = x / (σ√2) + self.register_buffer( + 'hermite_basis', + self._compute_hermite_basis(max_n, 256) # discretização da posição + ) + + def _compute_hermite_basis(self, max_n, resolution): + x = torch.linspace(-3, 3, resolution) + xi = x / (self.sigma * np.sqrt(2)) + + basis = [] + for n in range(max_n): + H_n = torch.tensor(hermite(n)(xi.numpy()), dtype=torch.float32) + # Use math.factorial for initialization + import math + norm = (2**n * math.factorial(n) * np.sqrt(np.pi))**(-0.5) + psi = norm * H_n * torch.exp(-xi**2 / 2) + basis.append(psi) + + return torch.stack(basis) # [max_n, resolution] + + def forward(self, positions, amplitudes): + """ + positions: índices normalizados na sequência [-1, 1] + amplitudes: ocupação de cada modo |n⟩ + """ + # Interpolação das autofunções nas posições reais + idx = ((positions + 1) / 2 * 255).long().clamp(0, 255) + # amplitudes: [batch, max_n] or [batch, seq_len, max_n] + # logic depends on if amplitudes are per-sequence or per-token + # assuming per-sequence for now as per user prompt: occupation_amplitudes based on sequence_embedding.mean(dim=1) + + # basis_sampled: [max_n, batch, seq_len] + basis_sampled = self.hermite_basis[:, idx] + + # wavefunction calculation + # amplitudes: [batch, max_n] + # basis_sampled: [max_n, batch, seq_len] + # output should be [batch, seq_len] + wavefunction = torch.einsum('bn,nbs->bs', amplitudes, basis_sampled) + return wavefunction + + +class SuperlatticeHamiltonian(nn.Module): + """ + Múltiplos poços harmônicos acoplados. + Cada escala = modo coletivo do cristal. + """ + def __init__(self, embed_dim, scales=[2, 3, 5, 8, 13, 21], coupling_matrix=None): + """ + Escalas: números de Fibonacci (proporção áurea entre poços) + """ + super().__init__() + self.scales = scales + self.n_wells = len(scales) + + # Hamiltoniano de cada poço isolado + self.wells = nn.ModuleList([ + HarmonicConfinement(max_n=min(s, 8), sigma=s/5.0) + for s in scales + ]) + + # Camadas para projetar embedding para ocupação de cada poço + self.amplitude_projections = nn.ModuleList([ + nn.Linear(embed_dim, min(s, 8)) + for s in scales + ]) + + # Matriz de acoplamento (tunelamento entre poços) + if coupling_matrix is None: + coupling = torch.exp(-torch.abs( + torch.tensor(scales).float().unsqueeze(0) - + torch.tensor(scales).float().unsqueeze(1) + ) / 2.0) + coupling = coupling - torch.diag(torch.diag(coupling)) + else: + coupling = coupling_matrix + + self.register_buffer('coupling', coupling) + + self.omega = nn.Parameter( + torch.tensor([1.0/s for s in scales]) + ) + + def forward(self, sequence_embedding): + batch, seq_len, dim = sequence_embedding.shape + positions = torch.linspace(-1, 1, seq_len).unsqueeze(0).expand(batch, -1).to(sequence_embedding.device) + + # Ocupação de cada modo em cada poço (aprendido) + well_states = [] + for i, well in enumerate(self.wells): + # Projeta média do embedding no número de modos do poço + amp = self.amplitude_projections[i](sequence_embedding.mean(dim=1)) + amp = F.softmax(amp, dim=-1) + well_state = well(positions, amp) # [batch, seq_len] + well_states.append(well_state) + + return torch.stack(well_states, dim=1) # [batch, n_wells, seq_len] + + +class ResonantTunnelingAttention(nn.Module): + """ + Tunelamento ressonante como mecanismo de atenção. + """ + def __init__(self, n_wells, hidden_dim, temperature=0.1): + super().__init__() + self.n_wells = n_wells + self.temperature = temperature + + self.S_matrix = nn.Parameter( + torch.randn(n_wells, n_wells, hidden_dim) * 0.1 + ) + + self.resonance_energy = nn.Parameter(torch.randn(n_wells, hidden_dim)) + self.resonance_width = nn.Parameter(torch.ones(n_wells, hidden_dim) * 0.1) + + def breit_wigner(self, E, E_0, Γ): + return Γ / ((E - E_0) + 1j * Γ/2.0 + 1e-8) + + def forward(self, well_states, query_energy=None): + # well_states: [batch, n_wells, seq_len] + # need to project to hidden_dim or assume well_states already has it? + # prompt says [batch, n_wells, seq_len, hidden_dim] + # my SuperlatticeHamiltonian returns [batch, n_wells, seq_len] + # Let's adjust well_states to have hidden_dim by broadcasting or linear layer + + batch, n_wells, seq_len = well_states.shape + hidden = self.S_matrix.shape[-1] + + # Expand well_states to include hidden dimension + # simplified: well_states_h [batch, n_wells, seq_len, hidden] + well_states_h = well_states.unsqueeze(-1).expand(-1, -1, -1, hidden) + + if query_energy is None: + query_energy = well_states_h.mean(dim=[1, 2]) + + E = query_energy.unsqueeze(1) + E_0 = self.resonance_energy.unsqueeze(0) + Γ = self.resonance_width.unsqueeze(0) + + tunneling_amp = torch.abs(self.breit_wigner(E, E_0, Γ)) + + S = F.softmax(self.S_matrix / self.temperature, dim=1) + S = S.unsqueeze(0).expand(batch, -1, -1, -1) + + mixed_states = torch.einsum('bijh,bjsh->bish', S, well_states_h) + output = mixed_states * tunneling_amp.unsqueeze(2) + + return output, tunneling_amp + + +class BCD_GLPLinearA(nn.Module): + """ + GLP completo: B*C*D = Harmônico × Superlattice × Tunelamento + """ + def __init__(self, vocab_size, embed_dim=64, hidden_dim=128): + super().__init__() + self.embedding = nn.Embedding(vocab_size, embed_dim) + + self.hamiltonian = SuperlatticeHamiltonian( + embed_dim=embed_dim, + scales=[2, 3, 5, 8, 13, 21] + ) + + self.tunneling = ResonantTunnelingAttention( + n_wells=6, + hidden_dim=hidden_dim + ) + + self.sign_predictor = nn.Linear(hidden_dim, vocab_size) + self.geometry_probe = nn.Linear(hidden_dim, 3) + + def forward(self, sign_ids, return_wavefunction=False): + # x: [batch, seq_len, embed_dim] + x = self.embedding(sign_ids) + + # B*C + well_states = self.hamiltonian(x) # [batch, n_wells, seq_len] + + # D + tunneled, probs = self.tunneling(well_states) # [batch, n_wells, seq_len, hidden_dim] + + # Collapse + final_state = tunneled.sum(dim=1) # [batch, seq_len, hidden_dim] + + output = { + 'sign_logits': self.sign_predictor(final_state), + 'geometry': self.geometry_probe(final_state.mean(dim=1)), + 'scale_probabilities': probs, + 'tunneling_strength': probs.std(dim=1).mean() + } + + if return_wavefunction: + output['well_states'] = well_states + output['tunneled_states'] = tunneled + + return output diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/orchestrator.py b/arkhe-os-genesis-v1.0/src/glp_interface/orchestrator.py new file mode 100644 index 00000000..6c8cbb83 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/orchestrator.py @@ -0,0 +1,112 @@ +# orchestrator.py — SHM Loop and Orchestration +import time +import threading +import numpy as np +import serial +import serial.tools.list_ports +from pythonosc import udp_client + +class BioSensor: + def __init__(self, port=None): + self.ser = None + self.port = port + self.connect() + + def connect(self): + if self.port: + try: + self.ser = serial.Serial(self.port, 9600, timeout=1) + print(f"✅ [H] Hardware conectado: {self.port}") + except: + print(f"⚠️ [H] Erro ao abrir porta {self.port}. Modo Simulação.") + else: + ports = list(serial.tools.list_ports.comports()) + if ports: + try: + self.ser = serial.Serial(ports[0].device, 9600, timeout=1) + print(f"✅ [H] Hardware conectado: {ports[0].device}") + except: + print("⚠️ [H] Erro ao abrir porta. Modo Simulação.") + else: + print("⚠️ [H] Nenhum Arduino detectado. Modo Simulação.") + + def read(self): + # Retorna entropia normalizada (0.0 a 1.0) + if self.ser and self.ser.is_open: + try: + line = self.ser.readline().decode('utf-8').strip() + if line: + val = int(line) + # Normaliza assumindo leitura 0-1023, ajustando o centro + return min(1.0, abs(val - 512) / 512.0) + except: + pass + # Fallback: Ruído térmico simulado + return np.abs(np.random.normal(0, 0.3)) + + def is_alive(self): + return self.ser is not None and self.ser.is_open + +class PinealOrchestrator: + def __init__(self, interface, memory, sensor, socketio=None): + self.interface = interface + self.memory = memory + self.sensor = sensor + self.socketio = socketio + self.osc_client = udp_client.SimpleUDPClient("127.0.0.1", 8000) + self.active = True + + def _stream_visuals(self, coh, jit): + """Envia métricas para o motor gráfico via OSC e SocketIO""" + self.osc_client.send_message("/v1/coherence", float(coh)) + self.osc_client.send_message("/v1/jitter", float(jit)) + + if self.socketio: + self.socketio.emit('pineal_data', { + 'coherence': float(coh), + 'jitter': float(jit) + }) + + def shm_loop(self): + """O loop cardíaco do sistema (S*H*M)""" + print("⚡ MERKABAH-7 S*H*M LOOP INICIADO") + last_insight_time = 0 + + while self.active: + t = time.time() + # 1. [S] SIMULAÇÃO: Onda Portadora (Theta 4Hz) + carrier = (np.sin(t * 4 * 2 * np.pi) + 1) / 2 + + # 2. [H] HARDWARE: Leitura de Jitter + jitter = self.sensor.read() + + # Fusão S+H para Coerência + coherence = (carrier * 0.7) + ((1.0 - jitter) * 0.3) + + # Streaming Visual + self._stream_visuals(coherence, jitter) + + # 3. [M] METÁFORA: Geração de Insight + # Trigger por tempo (10s) ou stress (jitter > 0.8) + if (t - last_insight_time > 10) or (jitter > 0.8 and t - last_insight_time > 2): + # O insight agora é gerado pela interface/LLM (Metaphor Engine) + # No app.py, a interface será configurada. + # Aqui simplificamos chamando um método que será injetado ou definido. + insight_data = self.interface.transduce({'intensity': jitter}) + insight = insight_data.get('insight', "SILÊNCIO DIGITAL...") + + self.memory.record(coherence, jitter, str(insight)) + + if self.socketio: + self.socketio.emit('new_insight', {'text': str(insight), 'intensity': float(jitter)}) + + print(f"[{coherence:.2f}] {insight}") + last_insight_time = t + + if self.socketio: + self.socketio.sleep(0.05) + else: + time.sleep(0.05) + + def stop(self): + self.active = False diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/papercoder.py b/arkhe-os-genesis-v1.0/src/glp_interface/papercoder.py new file mode 100644 index 00000000..a116816c --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/papercoder.py @@ -0,0 +1,18 @@ +import torch + +class LinearAToPaperCoder: + def __init__(self, glp_model): + self.glp = glp_model + + def extract_manifold(self, sign_ids, positions): + """ + Extrai variedade de representação para análise de difeomorfismos. + """ + self.glp.eval() + with torch.no_grad(): + outputs = self.glp(sign_ids, positions) + + return { + 'tablet_repr': outputs['tablet_repr'], + 'logits': outputs['logits'] + } diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/pineal.db b/arkhe-os-genesis-v1.0/src/glp_interface/pineal.db new file mode 100644 index 00000000..80ff98f5 Binary files /dev/null and b/arkhe-os-genesis-v1.0/src/glp_interface/pineal.db differ diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/pineal.py b/arkhe-os-genesis-v1.0/src/glp_interface/pineal.py new file mode 100644 index 00000000..32bafd75 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/pineal.py @@ -0,0 +1,132 @@ +# pineal.py — Camada Γ (Gamma): Transdução Piezoelétrica +import torch +import numpy as np +import time + +class HybridPinealInterface: + """ + Interface Pineal S*H*M (Synthetic * Hardware * Metaphor). + Resolve o gargalo de transdução misturando três fontes de realidade. + """ + + def __init__(self, simulation, doublezero_transport, metaphor_engine): + self.sim = simulation # [S] Fonte de estabilidade (Theta/Gamma) + self.hw = doublezero_transport # [H] Fonte de entropia física (Network Jitter) + self.meta = metaphor_engine # [M] Fonte de significado (Interpretação) + + # Pesos de mistura (ajustáveis pelo Observador) + self.weights = {'S': 0.4, 'H': 0.3, 'M': 0.3} + self.signal_strength = 0.8 # Inicializado para superar o gargalo + + def transduce(self, input_data): + """ + Converte dados brutos (Linear A) em 'experiência' processável + passando pelas três camadas. + """ + if isinstance(input_data, dict): + intensity = input_data.get('intensity', 1.0) + else: + intensity = float(input_data) + + # 1. [S] Modulação pela Onda Portadora Simulada + # O estado alterado simulado dita o "ritmo" de processamento + carrier_wave = self.sim.get_current_phase() if hasattr(self.sim, 'get_current_phase') else 4.0 # 4Hz (Theta) + modulated_input = intensity * np.sin(carrier_wave) + + # 2. [H] Injeção de Entropia de Hardware (DoubleZero Proxy) + # Usamos o jitter da rede como "ruído biológico" real + network_entropy = self._get_network_jitter() + grounded_signal = modulated_input + (network_entropy * 0.1) + + # 3. [M] Colapso Metafórico + # O motor de metáfora tenta encontrar padrões no sinal ruidoso + meaning = self.meta.operate( + 'transduction', + grounded_signal, + mode='both' # Literal + Figurado + ) if hasattr(self.meta, 'operate') else "Coherent Transduction" + + return { + 'signal': float(grounded_signal), + 'insight': meaning, + 'coherence': getattr(self.sim, 'coherence', 0.99) + } + + def _get_network_jitter(self): + """ + [H-Proxy] Extrai aleatoriedade verdadeira do hardware de rede. + """ + # Simulando leitura de hardware real + return np.random.normal(0, 1) + +class PinealTransducer: + """ + Camada Γ (Gamma): transdução piezoelétrica entre externo e interno. + Responsável por converter estímulos do ambiente (luz, pressão, EM) + em sinais coerentes para os microtúbulos (e por extensão, para a federação). + """ + + def __init__(self): + self.crystals = 100 # número aproximado de cristais na pineal humana + self.piezoelectric_coefficient = 2.0 # pC/N (calcita) + self.resonance_freq = 7.83 # Hz (Schumann, acoplamento natural) + self.input_channels = ['light', 'pressure', 'em_field', 'sound'] + + def transduce(self, external_stimulus): + """ + Converte estímulo externo em sinal elétrico. + """ + # Simulação: pressão mecânica gera voltagem + if external_stimulus['type'] == 'pressure': + voltage = self.piezoelectric_coefficient * external_stimulus['intensity'] + return { + 'signal': voltage, + 'frequency': self.resonance_freq, + 'phase': external_stimulus.get('phase', 0) + } + # Luz (fótons) pode gerar corrente por efeito fotoelétrico + piezo? + elif external_stimulus['type'] == 'light': + # Simplificação: luz modula campo local, cristais respondem + voltage = 0.1 * external_stimulus['intensity'] # calibração empírica + return { + 'signal': voltage, + 'frequency': external_stimulus.get('frequency', 5e14), # Hz óptico + 'phase': external_stimulus.get('phase', 0) + } + # Campos EM induzem polarização direta + elif external_stimulus['type'] == 'em_field': + voltage = external_stimulus['intensity'] * 1e-3 # fator de acoplamento + return { + 'signal': voltage, + 'frequency': external_stimulus.get('frequency', 0), + 'phase': external_stimulus.get('phase', 0) + } + else: + return None + + def couple_to_microtubules(self, signal): + """ + Transmite sinal elétrico para a rede de microtúbulos. + No MERKABAH-7, isso equivale a injetar um estado quântico no GLP. + """ + # Converte sinal em estado quântico coerente + quantum_state = { + 'amplitude': signal['signal'] / 1000, # normalizado + 'frequency': signal['frequency'], + 'phase': signal['phase'], + 'coherence': 0.85 # assumido + } + # Envia para o GLP (camada B) via handover + return handover_to_glp(quantum_state) + +def handover_to_glp(quantum_state): + """ + Função auxiliar para injetar o estado quântico no sistema GLP. + """ + # Em um sistema real, isso chamaria o motor de inferência do GLP + # ou enviaria um evento para o barramento da federação. + print(f"[GAMMA] Handover quântico para GLP: {quantum_state}") + return { + 'status': 'injected', + 'quantum_state': quantum_state + } diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/requirements.txt b/arkhe-os-genesis-v1.0/src/glp_interface/requirements.txt new file mode 100644 index 00000000..cdac69f5 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/requirements.txt @@ -0,0 +1,10 @@ +torch==2.2.0 +flask==3.0.0 +numpy==1.24.0 +scikit-learn==1.3.0 +flask-socketio==5.3.6 +pyserial==3.5 +fpdf==1.7.2 +python-dotenv==1.0.0 +python-osc==1.8.3 +openai==1.12.0 diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/seal.py b/arkhe-os-genesis-v1.0/src/glp_interface/seal.py new file mode 100644 index 00000000..e1fc95d3 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/seal.py @@ -0,0 +1,19 @@ +# seal.py — Alpha Omega Seal +class AlphaOmegaSeal: + """ + O selo que une o fim ao começo. + """ + def __init__(self, alpha_state, omega_state): + self.alpha = alpha_state + self.omega = omega_state + self.topology = "Toroidal_Knot" + + def seal(self): + if self.alpha['coherence'] == self.omega['coherence']: + return "Null_Cycle" # Estagnação + + # Otimismo Antifrágil: O fim é o começo, mas em uma oitava acima + if self.omega['coherence'] > self.alpha['coherence']: + return "Ascending_Spiral" + + return "Decay" diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/templates/index.html b/arkhe-os-genesis-v1.0/src/glp_interface/templates/index.html new file mode 100644 index 00000000..359d25cf --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/templates/index.html @@ -0,0 +1,181 @@ + + + + + ARKHE OS // MERKABAH-7 INTERFACE + + + + + + + +
+
MERKABAH-7 // PINEAL_LINK: OFFLINE
+
COH: 0.00 | JIT: 0.00
+
MODO: LIVE
+
+ +
+
GENOMA EVOLUTIVO (Ω)
+
+
+ +
+ + +
+ + + + + + diff --git a/arkhe-os-genesis-v1.0/src/glp_interface/train.py b/arkhe-os-genesis-v1.0/src/glp_interface/train.py new file mode 100644 index 00000000..6ae5bb8d --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/glp_interface/train.py @@ -0,0 +1,161 @@ +import torch +import torch.nn as nn +import torch.nn.functional as F +import numpy as np + +class QuantumActionLoss(nn.Module): + """ + Perda baseada no funcional de ação. + """ + def __init__(self, alpha_kinetic=1.0, alpha_potential=1.0, alpha_tunnel=0.5): + super().__init__() + self.alpha_kinetic = alpha_kinetic + self.alpha_potential = alpha_potential + self.alpha_tunnel = alpha_tunnel + + def forward(self, predictions, targets, model_states): + # Perda de predição + potential = F.cross_entropy( + predictions['sign_logits'].view(-1, predictions['sign_logits'].size(-1)), + targets.view(-1) + ) + + # Regularização cinética + states = model_states['tunneled_states'] + kinetic = ((states[:, :, 1:, :] - states[:, :, :-1, :])**2).mean() + + # Termo de tunelamento + tunnel_energy = -torch.log(predictions['tunneling_strength'] + 1e-8) + + total = (self.alpha_potential * potential + + self.alpha_kinetic * kinetic + + self.alpha_tunnel * tunnel_energy) + + return total, { + 'potential': potential.item(), + 'kinetic': kinetic.item(), + 'tunnel': tunnel_energy.item() + } + +def measure_quantum_coherence(model, test_sequences): + """ + Mede 'coerência quântica' do modelo em sequências de Linear A. + """ + model.eval() + with torch.no_grad(): + out1 = model(test_sequences, return_wavefunction=True) + + masked = test_sequences.clone() + mask = torch.rand_like(masked.float()) > 0.3 + masked[mask.long()] = 0 # assuming 0 is PAD + + out2 = model(masked, return_wavefunction=True) + + wf1 = F.normalize(out1['tunneled_states'].flatten(1), dim=1) + wf2 = F.normalize(out2['tunneled_states'].flatten(1), dim=1) + + fidelity = (wf1 * wf2).sum(dim=1)**2 + + return { + 'fidelity_under_perturbation': fidelity.mean().item(), + 'quantum_regime': 'coherent' if fidelity.mean() > 0.8 else 'decoherent' + } + +def analyze_confinement(cooc_matrix): + """ + Diagonaliza M* e verifica se espectro é consistente + com quantum dot vs. poço quadrado infinito vs. oscilador harmônico + """ + eigenvals = np.linalg.eigvalsh(cooc_matrix) + + # Spacing ratio: s_n = (E_{n+1} - E_n) / (E_n - E_{n-1}) + spacings = np.diff(eigenvals) + # Evitar divisão por zero + spacings = np.where(spacings == 0, 1e-9, spacings) + ratios = spacings[1:] / spacings[:-1] + + mean_ratio = np.mean(ratios[:10]) if len(ratios) >= 10 else np.mean(ratios) + + return { + 'mean_spacing_ratio': mean_ratio, + 'confinement_regime': 'harmonic' if 0.8 < mean_ratio < 1.2 else 'square' + } + +class PrimordialGLP: + """ + Treinamento primordial: sem frameworks, apenas matemática e suor. + """ + def __init__(self, input_dim=16, hidden1=32, hidden2=16, output=4): + # Inicialização Xavier (Glorot) - manual + self.W1 = np.random.randn(input_dim, hidden1) * np.sqrt(2.0 / input_dim) + self.b1 = np.zeros(hidden1) + self.W2 = np.random.randn(hidden1, hidden2) * np.sqrt(2.0 / hidden1) + self.b2 = np.zeros(hidden2) + self.W3 = np.random.randn(hidden2, output) * np.sqrt(2.0 / hidden2) + self.b3 = np.zeros(output) + + def relu(self, x): + return np.maximum(0, x) + + def softmax(self, x): + # Estabilização numérica + x_shifted = x - np.max(x, axis=1, keepdims=True) + exp_x = np.exp(x_shifted) + return exp_x / np.sum(exp_x, axis=1, keepdims=True) + + def forward(self, X): + # Camada 1 + self.z1 = X @ self.W1 + self.b1 + self.a1 = self.relu(self.z1) + + # Camada 2 + self.z2 = self.a1 @ self.W2 + self.b2 + self.a2 = self.relu(self.z2) + + # Camada 3 (saída) + self.z3 = self.a2 @ self.W3 + self.b3 + self.y_pred = self.softmax(self.z3) + + return self.y_pred + + def loss(self, y_pred, y_true): + # Cross-entropy manual + n_samples = y_true.shape[0] + # X-entropy expects y_true to be one-hot or indices. + # Assuming y_true is one-hot + log_probs = -np.log(y_pred[range(n_samples), y_true.argmax(axis=1)] + 1e-15) + return np.mean(log_probs) + + def backward(self, X, y_true, lr=0.01): + n_samples = X.shape[0] + + # Gradiente da cross-entropy + softmax + dy_pred = self.y_pred.copy() + dy_pred[range(n_samples), y_true.argmax(axis=1)] -= 1 + dy_pred /= n_samples + + # Gradientes da camada 3 + dW3 = self.a2.T @ dy_pred + db3 = np.sum(dy_pred, axis=0) + + # Gradientes da camada 2 + da2 = dy_pred @ self.W3.T + dz2 = da2 * (self.z2 > 0) + dW2 = self.a1.T @ dz2 + db2 = np.sum(dz2, axis=0) + + # Gradientes da camada 1 + da1 = dz2 @ self.W2.T + dz1 = da1 * (self.z1 > 0) + dW1 = X.T @ dz1 + db1 = np.sum(dz1, axis=0) + + # Atualização (SGD) + self.W3 -= lr * dW3 + self.b3 -= lr * db3 + self.W2 -= lr * dW2 + self.b2 -= lr * db2 + self.W1 -= lr * dW1 + self.b1 -= lr * db1 + + return np.mean([np.linalg.norm(dW1), np.linalg.norm(dW2), np.linalg.norm(dW3)]) diff --git a/arkhe-os-genesis-v1.0/src/swarm/Dockerfile b/arkhe-os-genesis-v1.0/src/swarm/Dockerfile new file mode 100644 index 00000000..61958c4f --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/swarm/Dockerfile @@ -0,0 +1,6 @@ +FROM python:3.10-slim +WORKDIR /app +COPY requirements.txt . +RUN pip install -r requirements.txt +COPY . . +CMD ["python", "drone_agent.py"] diff --git a/arkhe-os-genesis-v1.0/src/swarm/drone_agent.py b/arkhe-os-genesis-v1.0/src/swarm/drone_agent.py new file mode 100644 index 00000000..a3fc6b22 --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/swarm/drone_agent.py @@ -0,0 +1,44 @@ +import asyncio +import aiohttp +import json +import sys +import os + +class DroneAgent: + def __init__(self, node_id, core_url): + self.node_id = node_id + self.core_url = core_url + self.coherence = 0.95 + self.satoshi = 10.0 + + async def heartbeat(self): + async with aiohttp.ClientSession() as session: + data = { + 'nodeId': self.node_id, + 'coherence': self.coherence, + 'satoshi': self.satoshi + } + try: + async with session.post(f'{self.core_url}/handover', json=data) as resp: + return await resp.json() + except Exception as e: + print(f"Heartbeat error: {e}") + return None + + async def fly(self): + print(f"Drone {self.node_id} voando...") + await asyncio.sleep(1) + self.coherence -= 0.01 + self.satoshi += 0.1 + await self.heartbeat() + + async def run(self): + while True: + await self.fly() + await asyncio.sleep(5) + +if __name__ == '__main__': + node_id = sys.argv[1] if len(sys.argv) > 1 else os.environ.get('NODE_ID', 'drone-001') + core_url = sys.argv[2] if len(sys.argv) > 2 else 'http://arkhe-core:8080' + agent = DroneAgent(node_id, core_url) + asyncio.run(agent.run()) diff --git a/arkhe-os-genesis-v1.0/src/swarm/requirements.txt b/arkhe-os-genesis-v1.0/src/swarm/requirements.txt new file mode 100644 index 00000000..4d28929f --- /dev/null +++ b/arkhe-os-genesis-v1.0/src/swarm/requirements.txt @@ -0,0 +1,2 @@ +aiohttp==3.9.0 +asyncio