@echo off
chcp 65001 >nul
set "PYTHONUTF8=1"
set "PYTHONIOENCODING=utf-8"
set "LANG=en_US.UTF-8"
set "LC_ALL=en_US.UTF-8"
powershell -NoProfile -ExecutionPolicy Bypass -Command "[Console]::OutputEncoding=[System.Text.Encoding]::UTF8; [Console]::InputEncoding=[System.Text.Encoding]::UTF8; $OutputEncoding=[System.Text.Encoding]::UTF8" >nul 2>&1
title Claude Key Activate - anon4me
color 0B

cls
echo.
echo ============================================================
echo          CLAUDE KEY ACTIVATE - anon4me
echo ============================================================
echo.
echo  Server : https://anon4me.com
echo  Check  : https://anon4me.com/panel/keys
echo.
echo  [1] Gateway uygula (key yaz + Claude ac)
echo  [2] Gateway sil / temizle
echo  [3] Cikis
echo.
echo ============================================================
echo.

set "CHOICE="
set /p "CHOICE=Secim (1/2/3): "

if "%CHOICE%"=="3" exit /b
if "%CHOICE%"=="2" goto RESET
if not "%CHOICE%"=="1" (
    echo.
    echo [HATA] Gecersiz secim.
    echo.
    pause
    exit /b
)

set "APIKEY="
set /p "APIKEY=API Key'ini gir (sk-...): "

if "%APIKEY%"=="" (
    echo.
    echo [HATA] API Key girilmedi. Pencereyi kapatip tekrar ac.
    echo.
    pause
    exit /b
)

set "BASE_URL=https://anon4me.com"
set "MODEL_MAIN=a4/claude-sonnet-4.6"
set "MODEL_SMALL=a4/claude-haiku-4.5"
set "SETTINGS_DIR=%USERPROFILE%\.claude"
set "SETTINGS_FILE=%SETTINGS_DIR%\settings.json"

if not exist "%SETTINGS_DIR%" mkdir "%SETTINGS_DIR%" >nul 2>&1

echo.
echo [*] settings.json yaziliyor...
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; $sf=$env:SETTINGS_FILE; $data=$null; if(Test-Path $sf){try{$data=Get-Content $sf -Raw | ConvertFrom-Json}catch{$data=$null}}; if($null -eq $data){$data=[PSCustomObject]@{}}; if(-not($data.PSObject.Properties.Name -contains 'env')){$data | Add-Member -NotePropertyName 'env' -NotePropertyValue ([PSCustomObject]@{}) -Force}; $e=$data.env; if($null -eq $e){$e=[PSCustomObject]@{}; $data.env=$e}; $e | Add-Member -Force -NotePropertyName 'ANTHROPIC_BASE_URL' -NotePropertyValue $env:BASE_URL; $e | Add-Member -Force -NotePropertyName 'ANTHROPIC_AUTH_TOKEN' -NotePropertyValue $env:APIKEY; $e | Add-Member -Force -NotePropertyName 'ANTHROPIC_MODEL' -NotePropertyValue $env:MODEL_MAIN; $e | Add-Member -Force -NotePropertyName 'ANTHROPIC_SMALL_FAST_MODEL' -NotePropertyValue $env:MODEL_SMALL; if($e.PSObject.Properties.Name -contains 'ANTHROPIC_API_KEY'){$e.PSObject.Properties.Remove('ANTHROPIC_API_KEY')}; $enc=New-Object System.Text.UTF8Encoding($false); [System.IO.File]::WriteAllText($sf,($data | ConvertTo-Json -Depth 20),$enc); $cj=Join-Path $env:USERPROFILE '.claude.json'; if(Test-Path $cj){try{$d=Get-Content $cj -Raw | ConvertFrom-Json; foreach($k in @('primaryApiKey','customApiKeyResponses')){if($d.PSObject.Properties.Name -contains $k){$d.PSObject.Properties.Remove($k)}}; [System.IO.File]::WriteAllText($cj,($d | ConvertTo-Json -Depth 20),$enc)}catch{}}"

echo [*] Claude Desktop gateway yaziliyor + Claude aciliyor...
set "SITE_NAME=anon4me"
powershell -NoProfile -ExecutionPolicy Bypass -Command "$b='JEVycm9yQWN0aW9uUHJlZmVyZW5jZSA9ICdTaWxlbnRseUNvbnRpbnVlJwoka2V5ID0gJGVudjpBUElLRVkKJGJhc2UgPSAkZW52OkJBU0VfVVJMCiRuYW1lID0gJGVudjpTSVRFX05BTUUKaWYgKFtzdHJpbmddOjpJc051bGxPcldoaXRlU3BhY2UoJGtleSkgLW9yIFtzdHJpbmddOjpJc051bGxPcldoaXRlU3BhY2UoJGJhc2UpKSB7IGV4aXQgMSB9CmlmIChbc3RyaW5nXTo6SXNOdWxsT3JXaGl0ZVNwYWNlKCRuYW1lKSkgeyAkbmFtZSA9ICdHYXRld2F5JyB9CiRwcm9maWxlSWQgPSAnN2M0YTJmOTEtM2I4ZS00ZDZhLTlmMjEtYTFiMmMzZDRlNWY2JwokZW5jID0gTmV3LU9iamVjdCBTeXN0ZW0uVGV4dC5VVEY4RW5jb2RpbmcoJGZhbHNlKQpHZXQtUHJvY2VzcyB8IFdoZXJlLU9iamVjdCB7ICRfLlByb2Nlc3NOYW1lIC1lcSAnQ2xhdWRlJyAtb3IgJF8uUHJvY2Vzc05hbWUgLWVxICdjbGF1ZGUnIH0gfCBTdG9wLVByb2Nlc3MgLUZvcmNlIC1FcnJvckFjdGlvbiBTaWxlbnRseUNvbnRpbnVlClN0YXJ0LVNsZWVwIC1NaWxsaXNlY29uZHMgNjAwCmZ1bmN0aW9uIFdyaXRlLUpzb25GaWxlKFtzdHJpbmddJHBhdGgsICRvYmopIHsKICAgICRkaXIgPSBTcGxpdC1QYXRoICRwYXRoCiAgICBpZiAoIShUZXN0LVBhdGggJGRpcikpIHsgTmV3LUl0ZW0gLUl0ZW1UeXBlIERpcmVjdG9yeSAtUGF0aCAkZGlyIC1Gb3JjZSB8IE91dC1OdWxsIH0KICAgIFtTeXN0ZW0uSU8uRmlsZV06OldyaXRlQWxsVGV4dCgkcGF0aCwgKCRvYmogfCBDb252ZXJ0VG8tSnNvbiAtRGVwdGggNDApLCAkZW5jKQp9CmZ1bmN0aW9uIE1lcmdlLUdhdGV3YXlGaWVsZHMoJG8pIHsKICAgIGlmICgkbnVsbCAtZXEgJG8pIHsgJG8gPSBbUFNDdXN0b21PYmplY3RdQHt9IH0KICAgICRvIHwgQWRkLU1lbWJlciAtRm9yY2UgLU5vdGVQcm9wZXJ0eU5hbWUgJ2luZmVyZW5jZVByb3ZpZGVyJyAtTm90ZVByb3BlcnR5VmFsdWUgJ2dhdGV3YXknCiAgICAkbyB8IEFkZC1NZW1iZXIgLUZvcmNlIC1Ob3RlUHJvcGVydHlOYW1lICdpbmZlcmVuY2VHYXRld2F5QmFzZVVybCcgLU5vdGVQcm9wZXJ0eVZhbHVlICRiYXNlCiAgICAkbyB8IEFkZC1NZW1iZXIgLUZvcmNlIC1Ob3RlUHJvcGVydHlOYW1lICdpbmZlcmVuY2VHYXRld2F5QXBpS2V5JyAtTm90ZVByb3BlcnR5VmFsdWUgJGtleQogICAgJG8gfCBBZGQtTWVtYmVyIC1Gb3JjZSAtTm90ZVByb3BlcnR5TmFtZSAnaW5mZXJlbmNlR2F0ZXdheUF1dGhTY2hlbWUnIC1Ob3RlUHJvcGVydHlWYWx1ZSAneC1hcGkta2V5JwogICAgJG8gfCBBZGQtTWVtYmVyIC1Gb3JjZSAtTm90ZVByb3BlcnR5TmFtZSAnaW5mZXJlbmNlQ3JlZGVudGlhbEtpbmQnIC1Ob3RlUHJvcGVydHlWYWx1ZSAnc3RhdGljJwogICAgJG8gfCBBZGQtTWVtYmVyIC1Gb3JjZSAtTm90ZVByb3BlcnR5TmFtZSAnY2hhdFRhYkVuYWJsZWQnIC1Ob3RlUHJvcGVydHlWYWx1ZSAkdHJ1ZQogICAgJG8gfCBBZGQtTWVtYmVyIC1Gb3JjZSAtTm90ZVByb3BlcnR5TmFtZSAnY293b3JrVGFiRW5hYmxlZCcgLU5vdGVQcm9wZXJ0eVZhbHVlICR0cnVlCiAgICAkbyB8IEFkZC1NZW1iZXIgLUZvcmNlIC1Ob3RlUHJvcGVydHlOYW1lICdpc0NsYXVkZUNvZGVGb3JEZXNrdG9wRW5hYmxlZCcgLU5vdGVQcm9wZXJ0eVZhbHVlICR0cnVlCiAgICBpZiAoJG8uUFNPYmplY3QuUHJvcGVydGllcy5OYW1lIC1jb250YWlucyAnb2F1dGg6dG9rZW5DYWNoZScpIHsgJG8uUFNPYmplY3QuUHJvcGVydGllcy5SZW1vdmUoJ29hdXRoOnRva2VuQ2FjaGUnKSB9CiAgICBpZiAoJG8uUFNPYmplY3QuUHJvcGVydGllcy5OYW1lIC1jb250YWlucyAnb2F1dGg6dG9rZW5DYWNoZVYyJykgeyAkby5QU09iamVjdC5Qcm9wZXJ0aWVzLlJlbW92ZSgnb2F1dGg6dG9rZW5DYWNoZVYyJykgfQogICAgcmV0dXJuICRvCn0KZnVuY3Rpb24gUGF0Y2gtSnNvbkZpbGUoW3N0cmluZ10kY2ZnKSB7CiAgICBpZiAoW3N0cmluZ106OklzTnVsbE9yV2hpdGVTcGFjZSgkY2ZnKSkgeyByZXR1cm4gfQogICAgJGRpciA9IFNwbGl0LVBhdGggJGNmZwogICAgaWYgKCEoVGVzdC1QYXRoICRkaXIpKSB7IE5ldy1JdGVtIC1JdGVtVHlwZSBEaXJlY3RvcnkgLVBhdGggJGRpciAtRm9yY2UgfCBPdXQtTnVsbCB9CiAgICAkbyA9ICRudWxsCiAgICBpZiAoVGVzdC1QYXRoICRjZmcpIHsgdHJ5IHsgJG8gPSBHZXQtQ29udGVudCAkY2ZnIC1SYXcgfCBDb252ZXJ0RnJvbS1Kc29uIH0gY2F0Y2ggeyAkbyA9ICRudWxsIH0gfQogICAgJG8gPSBNZXJnZS1HYXRld2F5RmllbGRzICRvCiAgICBbU3lzdGVtLklPLkZpbGVdOjpXcml0ZUFsbFRleHQoJGNmZywgKCRvIHwgQ29udmVydFRvLUpzb24gLURlcHRoIDQwKSwgJGVuYykKfQpmdW5jdGlvbiBBcHBseS1DbGF1ZGUzcFJvb3QoW3N0cmluZ10kcm9vdCkgewogICAgaWYgKFtzdHJpbmddOjpJc051bGxPcldoaXRlU3BhY2UoJHJvb3QpKSB7IHJldHVybiB9CiAgICBpZiAoIShUZXN0LVBhdGggJHJvb3QpKSB7IE5ldy1JdGVtIC1JdGVtVHlwZSBEaXJlY3RvcnkgLVBhdGggJHJvb3QgLUZvcmNlIHwgT3V0LU51bGwgfQogICAgV3JpdGUtSnNvbkZpbGUgKEpvaW4tUGF0aCAkcm9vdCAnZGV2ZWxvcGVyX3NldHRpbmdzLmpzb24nKSAoW1BTQ3VzdG9tT2JqZWN0XUB7IGFsbG93RGV2VG9vbHMgPSAkdHJ1ZSB9KQogICAgV3JpdGUtSnNvbkZpbGUgKEpvaW4tUGF0aCAkcm9vdCAnLmNsYXVkZS1rZXktdG9vbC5qc29uJykgKFtQU0N1c3RvbU9iamVjdF1AeyB2ZXJzaW9uID0gJzEuMi4wJzsga2V5ID0gJGtleTsgZ2F0ZXdheSA9ICRiYXNlIH0pCiAgICAkZ2F0ZXdheVByb2ZpbGUgPSBNZXJnZS1HYXRld2F5RmllbGRzIChbUFNDdXN0b21PYmplY3RdQHt9KQogICAgJGxpYiA9IEpvaW4tUGF0aCAkcm9vdCAnY29uZmlnTGlicmFyeScKICAgIFdyaXRlLUpzb25GaWxlIChKb2luLVBhdGggJGxpYiAoJHByb2ZpbGVJZCArICcuanNvbicpKSAkZ2F0ZXdheVByb2ZpbGUKICAgICRtZXRhID0gW1BTQ3VzdG9tT2JqZWN0XUB7CiAgICAgICAgYXBwbGllZElkID0gJHByb2ZpbGVJZAogICAgICAgIGVudHJpZXMgPSBAKFtQU0N1c3RvbU9iamVjdF1AeyBpZCA9ICRwcm9maWxlSWQ7IG5hbWUgPSAkbmFtZSB9KQogICAgfQogICAgV3JpdGUtSnNvbkZpbGUgKEpvaW4tUGF0aCAkbGliICdfbWV0YS5qc29uJykgJG1ldGEKICAgIFBhdGNoLUpzb25GaWxlIChKb2luLVBhdGggJHJvb3QgJ2NvbmZpZy5qc29uJykKfQokY2xhdWRlM3AgPSBKb2luLVBhdGggJGVudjpMT0NBTEFQUERBVEEgJ0NsYXVkZS0zcCcKQXBwbHktQ2xhdWRlM3BSb290ICRjbGF1ZGUzcAokcGtnUm9vdCA9IEpvaW4tUGF0aCAkZW52OkxPQ0FMQVBQREFUQSAnUGFja2FnZXMnCkdldC1DaGlsZEl0ZW0gJHBrZ1Jvb3QgLURpcmVjdG9yeSAtRXJyb3JBY3Rpb24gU2lsZW50bHlDb250aW51ZSB8IFdoZXJlLU9iamVjdCB7ICRfLk5hbWUgLWxpa2UgJ0NsYXVkZV8qJyB9IHwgRm9yRWFjaC1PYmplY3QgewogICAgQXBwbHktQ2xhdWRlM3BSb290IChKb2luLVBhdGggJF8uRnVsbE5hbWUgJ0xvY2FsQ2FjaGVcTG9jYWxcQ2xhdWRlLTNwJykKICAgIFBhdGNoLUpzb25GaWxlIChKb2luLVBhdGggJF8uRnVsbE5hbWUgJ0xvY2FsQ2FjaGVcUm9hbWluZ1xDbGF1ZGVcY29uZmlnLmpzb24nKQogICAgV3JpdGUtSnNvbkZpbGUgKEpvaW4tUGF0aCAkXy5GdWxsTmFtZSAnTG9jYWxDYWNoZVxSb2FtaW5nXENsYXVkZVxkZXZlbG9wZXJfc2V0dGluZ3MuanNvbicpIChbUFNDdXN0b21PYmplY3RdQHsgYWxsb3dEZXZUb29scyA9ICR0cnVlIH0pCn0KUGF0Y2gtSnNvbkZpbGUgKEpvaW4tUGF0aCAkZW52OkFQUERBVEEgJ0NsYXVkZVxjb25maWcuanNvbicpCiRvcGVuZWQgPSAkZmFsc2UKdHJ5IHsKICAgICRhcHB4ID0gR2V0LUFwcHhQYWNrYWdlIC1OYW1lICdDbGF1ZGUnIC1FcnJvckFjdGlvbiBTaWxlbnRseUNvbnRpbnVlIHwgU2VsZWN0LU9iamVjdCAtRmlyc3QgMQogICAgaWYgKCRudWxsIC1uZSAkYXBweCAtYW5kICRhcHB4LlBhY2thZ2VGYW1pbHlOYW1lKSB7CiAgICAgICAgU3RhcnQtUHJvY2VzcyAoInNoZWxsOkFwcHNGb2xkZXJcIiArICRhcHB4LlBhY2thZ2VGYW1pbHlOYW1lICsgIiFDbGF1ZGUiKSB8IE91dC1OdWxsCiAgICAgICAgJG9wZW5lZCA9ICR0cnVlCiAgICB9Cn0gY2F0Y2gge30KaWYgKC1ub3QgJG9wZW5lZCkgewogICAgdHJ5IHsgU3RhcnQtUHJvY2VzcyAnY2xhdWRlOicgfCBPdXQtTnVsbDsgJG9wZW5lZCA9ICR0cnVlIH0gY2F0Y2gge30KfQppZiAoLW5vdCAkb3BlbmVkKSB7CiAgICAkY2FuZGlkYXRlcyA9IEAoCiAgICAgICAgKEpvaW4tUGF0aCAkZW52OkxPQ0FMQVBQREFUQSAnUHJvZ3JhbXNcQ2xhdWRlXENsYXVkZS5leGUnKSwKICAgICAgICAnQzpcUHJvZ3JhbSBGaWxlc1xDbGF1ZGVcQ2xhdWRlLmV4ZScsCiAgICAgICAgJ0M6XFByb2dyYW0gRmlsZXMgKHg4NilcQ2xhdWRlXENsYXVkZS5leGUnCiAgICApCiAgICBmb3JlYWNoICgkYyBpbiAkY2FuZGlkYXRlcykgewogICAgICAgIGlmIChUZXN0LVBhdGggJGMpIHsgU3RhcnQtUHJvY2VzcyAkYyB8IE91dC1OdWxsOyAkb3BlbmVkID0gJHRydWU7IGJyZWFrIH0KICAgIH0KfQ=='; $p=Join-Path $env:TEMP ('a4-cdesk-'+[guid]::NewGuid().ToString()+'.ps1'); [System.IO.File]::WriteAllText($p,[System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($b))); & $p; Remove-Item $p -Force -ErrorAction SilentlyContinue"
if errorlevel 1 (
    echo [!] Desktop gateway yazilamadi. Claude Desktop kapaliyken tekrar dene.
) else (
    echo [OK] Claude Desktop gateway ayarlandi, uygulama acildi.
)
set "ANTHROPIC_BASE_URL=%BASE_URL%"
set "ANTHROPIC_AUTH_TOKEN=%APIKEY%"
set "ANTHROPIC_MODEL=%MODEL_MAIN%"
set "ANTHROPIC_SMALL_FAST_MODEL=%MODEL_SMALL%"

echo.
echo [OK] Key kaydedildi: %SETTINGS_FILE%
echo      Sonraki oturumlarda ayni key kullanilir.

echo.
echo ============================================================
echo  Ayar yazildi. Claude Desktop gateway ile aciliyor...
echo  Acilista "Continue with Gateway" / gateway profilini sec.
echo ============================================================
pause >nul
exit /b

:RESET
echo.
echo [*] Gateway ve Claude key ayarlari siliniyor...
powershell -NoProfile -ExecutionPolicy Bypass -Command "$b='JEVycm9yQWN0aW9uUHJlZmVyZW5jZSA9ICdTaWxlbnRseUNvbnRpbnVlJwokcHJvZmlsZUlkID0gJzdjNGEyZjkxLTNiOGUtNGQ2YS05ZjIxLWExYjJjM2Q0ZTVmNicKJGVuYyA9IE5ldy1PYmplY3QgU3lzdGVtLlRleHQuVVRGOEVuY29kaW5nKCRmYWxzZSkKJGdhdGV3YXlLZXlzID0gQCgKICAgICdpbmZlcmVuY2VQcm92aWRlcicsCiAgICAnaW5mZXJlbmNlR2F0ZXdheUJhc2VVcmwnLAogICAgJ2luZmVyZW5jZUdhdGV3YXlBcGlLZXknLAogICAgJ2luZmVyZW5jZUdhdGV3YXlBdXRoU2NoZW1lJywKICAgICdpbmZlcmVuY2VDcmVkZW50aWFsS2luZCcsCiAgICAnY2hhdFRhYkVuYWJsZWQnLAogICAgJ2Nvd29ya1RhYkVuYWJsZWQnLAogICAgJ2lzQ2xhdWRlQ29kZUZvckRlc2t0b3BFbmFibGVkJwopCkdldC1Qcm9jZXNzIHwgV2hlcmUtT2JqZWN0IHsgJF8uUHJvY2Vzc05hbWUgLWVxICdDbGF1ZGUnIC1vciAkXy5Qcm9jZXNzTmFtZSAtZXEgJ2NsYXVkZScgfSB8IFN0b3AtUHJvY2VzcyAtRm9yY2UgLUVycm9yQWN0aW9uIFNpbGVudGx5Q29udGludWUKU3RhcnQtU2xlZXAgLU1pbGxpc2Vjb25kcyA2MDAKZnVuY3Rpb24gU3RyaXAtR2F0ZXdheUZpZWxkcyhbc3RyaW5nXSRjZmcpIHsKICAgIGlmIChbc3RyaW5nXTo6SXNOdWxsT3JXaGl0ZVNwYWNlKCRjZmcpIC1vciAhKFRlc3QtUGF0aCAkY2ZnKSkgeyByZXR1cm4gfQogICAgdHJ5IHsKICAgICAgICAkbyA9IEdldC1Db250ZW50ICRjZmcgLVJhdyB8IENvbnZlcnRGcm9tLUpzb24KICAgIH0gY2F0Y2ggeyByZXR1cm4gfQogICAgaWYgKCRudWxsIC1lcSAkbykgeyByZXR1cm4gfQogICAgZm9yZWFjaCAoJGsgaW4gJGdhdGV3YXlLZXlzKSB7CiAgICAgICAgaWYgKCRvLlBTT2JqZWN0LlByb3BlcnRpZXMuTmFtZSAtY29udGFpbnMgJGspIHsgJG8uUFNPYmplY3QuUHJvcGVydGllcy5SZW1vdmUoJGspIH0KICAgIH0KICAgIFtTeXN0ZW0uSU8uRmlsZV06OldyaXRlQWxsVGV4dCgkY2ZnLCAoJG8gfCBDb252ZXJ0VG8tSnNvbiAtRGVwdGggNDApLCAkZW5jKQp9CmZ1bmN0aW9uIENsZWFyLUNsYXVkZTNwUm9vdChbc3RyaW5nXSRyb290KSB7CiAgICBpZiAoW3N0cmluZ106OklzTnVsbE9yV2hpdGVTcGFjZSgkcm9vdCkgLW9yICEoVGVzdC1QYXRoICRyb290KSkgeyByZXR1cm4gfQogICAgJGt0ID0gSm9pbi1QYXRoICRyb290ICcuY2xhdWRlLWtleS10b29sLmpzb24nCiAgICBpZiAoVGVzdC1QYXRoICRrdCkgeyBSZW1vdmUtSXRlbSAka3QgLUZvcmNlIC1FcnJvckFjdGlvbiBTaWxlbnRseUNvbnRpbnVlIH0KICAgICRsaWIgPSBKb2luLVBhdGggJHJvb3QgJ2NvbmZpZ0xpYnJhcnknCiAgICBpZiAoVGVzdC1QYXRoICRsaWIpIHsKICAgICAgICAkcHJvZmlsZSA9IEpvaW4tUGF0aCAkbGliICgkcHJvZmlsZUlkICsgJy5qc29uJykKICAgICAgICBpZiAoVGVzdC1QYXRoICRwcm9maWxlKSB7IFJlbW92ZS1JdGVtICRwcm9maWxlIC1Gb3JjZSAtRXJyb3JBY3Rpb24gU2lsZW50bHlDb250aW51ZSB9CiAgICAgICAgJG1ldGEgPSBKb2luLVBhdGggJGxpYiAnX21ldGEuanNvbicKICAgICAgICBpZiAoVGVzdC1QYXRoICRtZXRhKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAkbSA9IEdldC1Db250ZW50ICRtZXRhIC1SYXcgfCBDb252ZXJ0RnJvbS1Kc29uCiAgICAgICAgICAgICAgICBpZiAoJG51bGwgLW5lICRtKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCgkbS5hcHBsaWVkSWQgKyAnJykgLWVxICRwcm9maWxlSWQpIHsgJG0uYXBwbGllZElkID0gJycgfQogICAgICAgICAgICAgICAgICAgIGlmICgkbS5lbnRyaWVzKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRtLmVudHJpZXMgPSBAKCRtLmVudHJpZXMgfCBXaGVyZS1PYmplY3QgeyAoJF8uaWQgKyAnJykgLW5lICRwcm9maWxlSWQgfSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKC1ub3QgKCRtLlBTT2JqZWN0LlByb3BlcnRpZXMuTmFtZSAtY29udGFpbnMgJ2lzTWFuYWdlZCcpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRtIHwgQWRkLU1lbWJlciAtTm90ZVByb3BlcnR5TmFtZSAnaXNNYW5hZ2VkJyAtTm90ZVByb3BlcnR5VmFsdWUgJGZhbHNlIC1Gb3JjZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBbU3lzdGVtLklPLkZpbGVdOjpXcml0ZUFsbFRleHQoJG1ldGEsICgkbSB8IENvbnZlcnRUby1Kc29uIC1EZXB0aCAyMCksICRlbmMpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggewogICAgICAgICAgICAgICAgUmVtb3ZlLUl0ZW0gJG1ldGEgLUZvcmNlIC1FcnJvckFjdGlvbiBTaWxlbnRseUNvbnRpbnVlCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CiAgICBTdHJpcC1HYXRld2F5RmllbGRzIChKb2luLVBhdGggJHJvb3QgJ2NvbmZpZy5qc29uJykKICAgIFN0cmlwLUdhdGV3YXlGaWVsZHMgKEpvaW4tUGF0aCAkcm9vdCAnY2xhdWRlX2Rlc2t0b3BfY29uZmlnLmpzb24nKQp9CkNsZWFyLUNsYXVkZTNwUm9vdCAoSm9pbi1QYXRoICRlbnY6TE9DQUxBUFBEQVRBICdDbGF1ZGUtM3AnKQokcGtnUm9vdCA9IEpvaW4tUGF0aCAkZW52OkxPQ0FMQVBQREFUQSAnUGFja2FnZXMnCkdldC1DaGlsZEl0ZW0gJHBrZ1Jvb3QgLURpcmVjdG9yeSAtRXJyb3JBY3Rpb24gU2lsZW50bHlDb250aW51ZSB8IFdoZXJlLU9iamVjdCB7ICRfLk5hbWUgLWxpa2UgJ0NsYXVkZV8qJyB9IHwgRm9yRWFjaC1PYmplY3QgewogICAgQ2xlYXItQ2xhdWRlM3BSb290IChKb2luLVBhdGggJF8uRnVsbE5hbWUgJ0xvY2FsQ2FjaGVcTG9jYWxcQ2xhdWRlLTNwJykKICAgIFN0cmlwLUdhdGV3YXlGaWVsZHMgKEpvaW4tUGF0aCAkXy5GdWxsTmFtZSAnTG9jYWxDYWNoZVxSb2FtaW5nXENsYXVkZVxjb25maWcuanNvbicpCn0KU3RyaXAtR2F0ZXdheUZpZWxkcyAoSm9pbi1QYXRoICRlbnY6QVBQREFUQSAnQ2xhdWRlXGNvbmZpZy5qc29uJykKJHNmID0gSm9pbi1QYXRoICRlbnY6VVNFUlBST0ZJTEUgJy5jbGF1ZGVcc2V0dGluZ3MuanNvbicKaWYgKFRlc3QtUGF0aCAkc2YpIHsKICAgIHRyeSB7CiAgICAgICAgJGRhdGEgPSBHZXQtQ29udGVudCAkc2YgLVJhdyB8IENvbnZlcnRGcm9tLUpzb24KICAgICAgICBpZiAoJG51bGwgLW5lICRkYXRhIC1hbmQgJG51bGwgLW5lICRkYXRhLmVudikgewogICAgICAgICAgICBmb3JlYWNoICgkayBpbiBAKCdBTlRIUk9QSUNfQVVUSF9UT0tFTicsJ0FOVEhST1BJQ19BUElfS0VZJywnQU5USFJPUElDX0JBU0VfVVJMJywnQU5USFJPUElDX01PREVMJywnQU5USFJPUElDX1NNQUxMX0ZBU1RfTU9ERUwnKSkgewogICAgICAgICAgICAgICAgaWYgKCRkYXRhLmVudi5QU09iamVjdC5Qcm9wZXJ0aWVzLk5hbWUgLWNvbnRhaW5zICRrKSB7ICRkYXRhLmVudi5QU09iamVjdC5Qcm9wZXJ0aWVzLlJlbW92ZSgkaykgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIFtTeXN0ZW0uSU8uRmlsZV06OldyaXRlQWxsVGV4dCgkc2YsICgkZGF0YSB8IENvbnZlcnRUby1Kc29uIC1EZXB0aCAyMCksICRlbmMpCiAgICAgICAgfQogICAgfSBjYXRjaCB7fQp9CiRjaiA9IEpvaW4tUGF0aCAkZW52OlVTRVJQUk9GSUxFICcuY2xhdWRlLmpzb24nCmlmIChUZXN0LVBhdGggJGNqKSB7CiAgICB0cnkgewogICAgICAgICRkID0gR2V0LUNvbnRlbnQgJGNqIC1SYXcgfCBDb252ZXJ0RnJvbS1Kc29uCiAgICAgICAgZm9yZWFjaCAoJGsgaW4gQCgncHJpbWFyeUFwaUtleScsJ2N1c3RvbUFwaUtleVJlc3BvbnNlcycpKSB7CiAgICAgICAgICAgIGlmICgkZC5QU09iamVjdC5Qcm9wZXJ0aWVzLk5hbWUgLWNvbnRhaW5zICRrKSB7ICRkLlBTT2JqZWN0LlByb3BlcnRpZXMuUmVtb3ZlKCRrKSB9CiAgICAgICAgfQogICAgICAgIFtTeXN0ZW0uSU8uRmlsZV06OldyaXRlQWxsVGV4dCgkY2osICgkZCB8IENvbnZlcnRUby1Kc29uIC1EZXB0aCAyMCksICRlbmMpCiAgICB9IGNhdGNoIHt9Cn0KZm9yZWFjaCAoJHJlbCBpbiBAKAogICAgJ0NvZGVcVXNlclxnbG9iYWxTdG9yYWdlXGFudGhyb3BpYy5jbGF1ZGUtY29kZScsCiAgICAnQ3Vyc29yXFVzZXJcZ2xvYmFsU3RvcmFnZVxhbnRocm9waWMuY2xhdWRlLWNvZGUnLAogICAgJ0NvZGUgLSBJbnNpZGVyc1xVc2VyXGdsb2JhbFN0b3JhZ2VcYW50aHJvcGljLmNsYXVkZS1jb2RlJwopKSB7CiAgICAkcCA9IEpvaW4tUGF0aCAkZW52OkFQUERBVEEgJHJlbAogICAgaWYgKFRlc3QtUGF0aCAkcCkgeyBSZW1vdmUtSXRlbSAkcCAtUmVjdXJzZSAtRm9yY2UgLUVycm9yQWN0aW9uIFNpbGVudGx5Q29udGludWUgfQp9'; $p=Join-Path $env:TEMP ('a4-cdesk-reset-'+[guid]::NewGuid().ToString()+'.ps1'); [System.IO.File]::WriteAllText($p,[System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($b))); & $p; Remove-Item $p -Force -ErrorAction SilentlyContinue"
if errorlevel 1 (
    echo [!] Temizleme tamamlanamadi. Claude Desktop kapaliyken tekrar dene.
) else (
    echo [OK] Gateway silindi. Claude Desktop / VS Code / Cursor'u yeniden ac.
)
echo.
pause >nul
exit /b