from .api import Voice, Voices, VoiceSettings

# Save default voices to avoid querying the API
VOICES_CACHE = Voices(
    voices=[
        Voice(
            voice_id="21m00Tcm4TlvDq8ikWAM",
            name="Rachel",
            category="premade",
            settings=VoiceSettings(stability=0.2, similarity_boost=0.75),
        ),
        Voice(
            voice_id="2EiwWnXFnvU5JabPnv8n",
            name="Clyde",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="AZnzlk1XvdvUeBnXmlld",
            name="Domi",
            category="premade",
            settings=VoiceSettings(stability=0.65, similarity_boost=0.6),
        ),
        Voice(
            voice_id="CYw3kZ02Hs0563khs1Fj",
            name="Dave",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="D38z5RcWu1voky8WS1ja",
            name="Fin",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="EXAVITQu4vr4xnSDxMaL",
            name="Bella",
            category="premade",
            settings=VoiceSettings(stability=0.71, similarity_boost=0.5),
        ),
        Voice(
            voice_id="ErXwobaYiN019PkySvjV",
            name="Antoni",
            category="premade",
            settings=VoiceSettings(stability=0.75, similarity_boost=0.97),
        ),
        Voice(
            voice_id="GBv7mTt0atIp3Br8iCZE",
            name="Thomas",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="IKne3meq5aSn9XLyUdCD",
            name="Charlie",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="LcfcDJNUP1GQjkzn1xUU",
            name="Emily",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="MF3mGyEYCl7XYWbV9V6O",
            name="Elli",
            category="premade",
            settings=VoiceSettings(stability=0.67, similarity_boost=0.91),
        ),
        Voice(
            voice_id="N2lVS1w4EtoT3dr4eOWO",
            name="Callum",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="ODq5zmih8GrVes37Dizd",
            name="Patrick",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="SOYHLrjzK2X1ezoPC6cr",
            name="Harry",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="TX3LPaxmHKxFdv7VOQHJ",
            name="Liam",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="ThT5KcBeYPX3keUQqHPh",
            name="Dorothy",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="TxGEqnHWrfWFTfGW9XjX",
            name="Josh",
            category="premade",
            settings=VoiceSettings(stability=0.895, similarity_boost=0.835),
        ),
        Voice(
            voice_id="VR6AewLTigWG4xSOukaG",
            name="Arnold",
            category="premade",
            settings=VoiceSettings(stability=0.525, similarity_boost=0.825),
        ),
        Voice(
            voice_id="XB0fDUnXU5powFXDhCwa",
            name="Charlotte",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="XrExE9yKIg1WjnnlVkGX",
            name="Matilda",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="Yko7PKHZNXotIFUBG7I9",
            name="Matthew",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="ZQe5CZNOzWyzPSCn5a3c",
            name="James",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="Zlb1dXrM653N07WRdFW3",
            name="Joseph",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="bVMeCyTHy58xNoL34h3p",
            name="Jeremy",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="flq6f7yk4E4fJM5XTYuZ",
            name="Michael",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="g5CIjZEefAph4nQFvHAz",
            name="Ethan",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="jBpfuIE2acCO8z3wKNLl",
            name="Gigi",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="jsCqWAovK2LkecY7zXl4",
            name="Freya",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="oWAxZDx7w5VEj9dCyTzz",
            name="Grace",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="onwK4e9ZLuTAKqWW03F9",
            name="Daniel",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="pMsXgVXv3BLzUgSXRplE",
            name="Serena",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="pNInz6obpgDQGcFmaJgB",
            name="Adam",
            category="premade",
            settings=VoiceSettings(stability=0.0, similarity_boost=0.99),
        ),
        Voice(
            voice_id="piTKgcLEGmPE4e6mEKli",
            name="Nicole",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="t0jbNlBVZ17f02VDIeMI",
            name="Jessie",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="wViXBPUzp2ZZixB1xQuM",
            name="Ryan",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="yoZ06aMxZJJ28mfd3POQ",
            name="Sam",
            category="premade",
            settings=VoiceSettings(stability=0.12, similarity_boost=0.6),
        ),
        Voice(
            voice_id="z9fAnlkpzviPz146aGWa",
            name="Glinda",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
        Voice(
            voice_id="zcAOhNBS3c14rBihAFp1",
            name="Giovanni",
            category="premade",
            settings=VoiceSettings(stability=0.1, similarity_boost=0.75),
        ),
        Voice(
            voice_id="zrHiDhphv9ZnVXBqCLjz",
            name="Mimi",
            category="premade",
            settings=VoiceSettings(stability=0.5, similarity_boost=0.75),
        ),
    ]
)
