public function forPackage($packageOrHandleVersion, LocaleEntity $locale, $excludeUntranslatedStrings = false)
    {
        if ($packageOrHandleVersion instanceof PackageVersionEntity) {
            $packageVersion = $packageOrHandleVersion;
        } elseif (is_array($packageOrHandleVersion) && isset($packageOrHandleVersion['handle']) && isset($packageOrHandleVersion['version'])) {
            $packageVersion = $this->app->make(PackageVersionRepository::class)->findOneBy([
                'handle' => $packageOrHandleVersion['handle'],
                'version' => $packageOrHandleVersion['version'],
            ]);
        } elseif (is_array($packageOrHandleVersion) && isset($packageOrHandleVersion[0]) && isset($packageOrHandleVersion[1])) {
            $packageVersion = $this->app->make(PackageVersionRepository::class)->findOneBy([
                'handle' => $packageOrHandleVersion[0],
                'version' => $packageOrHandleVersion[1],
            ]);
        } else {
            $packageVersion = null;
        }
        if ($packageVersion === null) {
            throw new UserMessageException(t('Invalid translated package version specified'));
        }
        $rs = $this->getPackageSelectQuery($packageVersion, $locale, $excludeUntranslatedStrings);

        $result = $this->buildTranslations($locale, $rs);

        $result->setHeader('Project-Id-Version', $packageVersion->getPackage()->getHandle() . ' ' . $packageVersion->getVersion());

        return $result;
    }