$value !== ''); return new self( line1: implode(', ', $line1Parts), line2: (string) ($data['complement'] ?? $data['instructions'] ?? ''), zipCode: self::digits($data['zip_code'] ?? null), city: (string) ($data['city'] ?? ''), state: (string) ($data['state'] ?? ''), country: (string) ($data['country'] ?? 'BR'), ); } public function toArray(): array { return $this->filterFilledRecursive([ 'line_1' => $this->line1, 'line_2' => $this->line2, 'zip_code' => $this->zipCode, 'city' => $this->city, 'state' => $this->state, 'country' => $this->country, ]); } }