hasSufficientIpV4Data($validationDays); } public function findHistoricAndRecent(LoginAddressAggregatedMapper $loginAddressMapper, int $validationThreshold, int $maxAge): array { return $loginAddressMapper->findHistoricAndRecentIpv4($validationThreshold, $maxAge); } public function generateRandomIpVector(): array { $ip = $this->generateRandomIp(); $splitIp = explode('.', $ip); return $this->numStringsToBitArray($splitIp, 10, 8); } protected function ipToVec(string $ip): array { return $this->numStringsToBitArray(explode('.', $ip), 10, 8); } public function generateRandomIp(): string { return implode('.', array_map(function (int $index) { return random_int(0, 255); }, range(0, 3))); } public function getSize(): int { return 16 + 32; } public function getDefaultMlpConfig(): Config { return Config::default(); } }