text:
<?php
/**
 * Settings text strings
 * Contains all text strings used in the general settings sections of BookStack
 * including users and roles.
 */
return [

    // Common Messages
    'settings' => 'Seaded',
    'settings_save' => 'Salvesta seaded',
    'settings_save_success' => 'Seaded salvestatud',
    'system_version' => 'Süsteemi versioon',
    'categories' => 'Kategooriad',

    // App Settings
    'app_customization' => 'Kohandamine',
    'app_features_security' => 'Funktsioonid ja turvalisus',
    'app_name' => 'Rakenduse nimi',
    'app_name_desc' => 'Seda nime näidatakse päises ja kõigis süsteemsetes e-kirjades.',
    'app_name_header' => 'Näita nime päises',
    'app_public_access' => 'Avalik ligipääs',
    'app_public_access_desc' => 'Selle sisselülitamine võimaldab külalistel ilma sisselogimata ligipääsu su BookStack\'i sisule.',
    'app_public_access_desc_guest' => 'Sisselogimata kasutajate ligipääsu saab seadistada "Külaline" kasutaja kaudu.',
    'app_public_access_toggle' => 'Luba avalik ligipääs',
    'app_public_viewing' => 'Luba avalik ligipääs?',
    'app_secure_images' => 'Turvalisem piltide üleslaadimine',
    'app_secure_images_toggle' => 'Lülita sisse turvalisem piltide üleslaadimine',
    'app_secure_images_desc' => 'Jõudluse kaalutlustel on kõik pildifailid avalikult kättesaadavad. See valik lisab pildifailide URL-ide ette juhugenereeritud, raskesti arvatava stringi. Ligipääsu piiramiseks veendu, et kataloogide indekseerimine ei oleks lubatud.',
    'app_default_editor' => 'Vaikimisi lehe redaktor',
    'app_default_editor_desc' => 'Vali, millist redaktorit vaikimisi uute lehtede jaoks kasutada. Seda valikut saab õiguste olemasolul iga lehe jaoks eraldi muuta.',
    'app_custom_html' => 'Kohandatud HTML päise sisu',
    'app_custom_html_desc' => 'Siia lisatud sisu lisatakse iga lehe  sektsiooni lõppu. See võimaldab stiile üle laadida või lisada analüütika koodi.',
    'app_custom_html_disabled_notice' => 'Kohandatud HTML päise sisu on sellel lehel välja lülitatud, et probleemseid muudatusi saaks tagasi võtta.',
    'app_logo' => 'Rakenduse logo',
    'app_logo_desc' => 'See pildifail peaks olema 43 pikslit kõrge.
Suuremad pildifailid tehakse väiksemaks.',
    'app_primary_color' => 'Rakenduse põhivärv',
    'app_primary_color_desc' => 'Määrab rakenduse primaarse värvi, sh. päise, nuppude ja linkide jaoks.',
    'app_homepage' => 'Rakenduse avaleht',
    'app_homepage_desc' => 'Vali leht, mida näidata avalehel vaikimisi vaate asemel. Valitud lehele ei rakendata ligipääsuõiguseid.',
    'app_homepage_select' => 'Vali leht',
    'app_footer_links' => 'Lingid jaluses',
    'app_footer_links_desc' => 'Lisa rakenduse jalusesse linke. Neid näidatakse enamike lehtede jaluses, kaasa arvatud need, mis ei vaja sisselogimist. Võid kasutada märgendit "trans::<key>", et kasutada süsteemseid tõlkeid. Näiteks "trans::common.privacy_policy" tekitab tõlgitud teksti "Privaatsus" ning "trans::common.terms_of_service" tekitab tõlgitud teksti "Kasutustingimused".',
    'app_footer_links_label' => 'Lingi tekst',
    'app_footer_links_url' => 'Lingi URL',
    'app_footer_links_add' => 'Lisa link',
    'app_disable_comments' => 'Keela kommentaarid',
    'app_disable_comments_toggle' => 'Keela kommentaarid',
    'app_disable_comments_desc' => 'Keelab kommentaarid kogu rakenduses.
Olemasolevaid kommentaare ei näidata.',

    // Color settings
    'content_colors' => 'Sisuelementide värvid',
    'content_colors_desc' => 'Määrab värvid erinevatele sisuelementidele. Loetavuse huvides on soovituslik valida värvid, mille heledus on sarnane vaikimisi värvidele.',
    'bookshelf_color' => 'Riiuli värv',
    'book_color' => 'Raamatu värv',
    'chapter_color' => 'Peatüki värv',
    'page_color' => 'Lehe värv',
    'page_draft_color' => 'Mustandi värv',

    // Registration Settings
    'reg_settings' => 'Registreerumine',
    'reg_enable' => 'Luba registreerumine',
    'reg_enable_toggle' => 'Luba registreerumine',
    'reg_enable_desc' => 'Kui registreerumine on lubatud, saavad kasutajad ise endale rakenduse konto tekitada, ning neile antakse vaikimisi roll.',
    'reg_default_role' => 'Vaikimisi roll uutele kasutajatele',
    'reg_enable_external_warning' => 'Ülalolevat valikut ignoreeritakse, kui väline LDAP või SAML autentimine on aktiivne. Kui autentimine välise süsteemi vastu on edukas, genereeritakse puuduvad kasutajadkontod automaatselt.',
    'reg_email_confirmation' => 'E-posti aadressi kinnitus',
    'reg_email_confirmation_toggle' => 'Nõua e-posti aadressi kinnitamist',
    'reg_confirm_email_desc' => 'Kui domeeni piirang on kasutusel, siis on e-posti aadressi kinnitamine nõutud ja seda seadet ignoreeritakse.',
    'reg_confirm_restrict_domain' => 'Domeeni piirang',
    'reg_confirm_restrict_domain_desc' => 'Sisesta komaga eraldatud nimekiri e-posti domeenidest, millega soovid registreerumist piirata. Kasutajale saadetakse aadressi kinnitamiseks e-kiri, enne kui neil lubatakse rakendust kasutada.
Pane tähele, et kasutajad saavad pärast edukat registreerumist oma e-posti aadressi muuta.',
    'reg_confirm_restrict_domain_placeholder' => 'Piirangut ei ole',

    // Maintenance settings
    'maint' => 'Hooldus',
    'maint_image_cleanup' => 'Pildifailide koristus',
    'maint_image_cleanup_desc' => 'Kontrollib lehtede ja redaktsioonide sisu, et leida pilte ja jooniseid, mis enam kasutusel ei ole. Enne selle käivitamist tee andmebaasist ja pildifailidest täielik varukoopia.',
    'maint_delete_images_only_in_revisions' => 'Kustuta ka pildifailid, mis on kasutusel ainult vanades redaktsioonides',
    'maint_image_cleanup_run' => 'Käivita koristus',
    'maint_image_cleanup_warning' => 'Leiti :count potentsiaalselt kasutamata pildifaili. Kas oled kindel, et soovid need kustutada?',
    'maint_image_cleanup_success' => 'Leiti ja kustutati :count potentsiaalselt kasutamata pildifaili!',
    'maint_image_cleanup_nothing_found' => 'Kasutamata pildifaile ei leitud, pole midagi kustutada!',
    'maint_send_test_email' => 'Saada testimiseks e-kiri',
    'maint_send_test_email_desc' => 'See saadab testimiseks e-kirja su profiilis märgitud aadressile.',
    'maint_send_test_email_run' => 'Saada test e-kiri',
    'maint_send_test_email_success' => 'E-kiri saadetud aadressile :address',
    'maint_send_test_email_mail_subject' => 'Test e-kiri',
    'maint_send_test_email_mail_greeting' => 'E-kirjade saatmine tundub toimivat!',
    'maint_send_test_email_mail_text' => 'Hea töö! Kui sa selle e-kirja kätte said, on su e-posti seaded õigesti määratud.',
    'maint_recycle_bin_desc' => 'Kustutatud riiulid, raamatud, peatükid ja lehed saadetakse prügikasti, et neid saaks taastada või lõplikult kustutada. Vanemad objektid võidakse teatud aja järel automaatselt prügikastist kustutada.',
    'maint_recycle_bin_open' => 'Ava prügikast',
    'maint_regen_references' => 'Genereeri viited uuesti',
    'maint_regen_references_desc' => 'See tegevus taastekitab andmebaasis objektidevahelised viited. Enamasti tehakse seda automaatselt, aga antud tegevus võimaldab indekseerida vanemat sisu või sisu, mis lisati mitteametlike meetodite abil.',
    'maint_regen_references_success' => 'Viiteindeks genereeritud!',
    'maint_timeout_command_note' => 'Märkus: See tegevus võib aega võtta, mis võib teatud veebikeskkondades põhjustada aegumise vigu. Alternatiivina võib seda tegevust käivitada käsurealt.',

    // Recycle Bin
    'recycle_bin' => 'Prügikast',
    'recycle_bin_desc' => 'Siin saad taastada kustutatud objekte, või neid süsteemist lõplikult eemaldada. Nimekiri on filtreerimata, mitte nagu mujal tegevusloendites, kus rakenduvad õigused.',
    'recycle_bin_deleted_item' => 'Kustutatud objekt',
    'recycle_bin_deleted_parent' => 'Ülemobjekt',
    'recycle_bin_deleted_by' => 'Kustutaja',
    'recycle_bin_deleted_at' => 'Kustutamise aeg',
    'recycle_bin_permanently_delete' => 'Kustuta lõplikult',
    'recycle_bin_restore' => 'Taasta',
    'recycle_bin_contents_empty' => 'Prügikast on hetkel tühi',
    'recycle_bin_empty' => 'Tühjenda prügikast',
    'recycle_bin_empty_confirm' => 'See kustutab lõplikult kõik objektid prügikastis, kaasa arvatud nende sisu. Kas oled kindel, et soovid prügikasti tühjendada?',
    'recycle_bin_destroy_confirm' => 'See kustutab lõplikult valitud objekti koos loetletud alamobjektidega, ja seda sisu ei ole enam võimalik taastada. Kas oled kindel, et soovid selle objekti kustutada?',
    'recycle_bin_destroy_list' => 'Kustutatavad objektid',
    'recycle_bin_restore_list' => 'Taastatavad objektid',
    'recycle_bin_restore_confirm' => 'See taastab valitud objekti koos kõigi alamobjektidega nende algsesse asukohta. Kui see asukoht on ka vahepeal kustutatud ja on nüüd prügikastis, tuleb ka see taastada.',
    'recycle_bin_restore_deleted_parent' => 'Selle objekti ülemobjekt on ka kustutatud. Taastada ei saa enne, kui ülemobjekt on taastatud.',
    'recycle_bin_restore_parent' => 'Taasta ülemobjekt',
    'recycle_bin_destroy_notification' => 'Prügikastist kustutati :count objekti.',
    'recycle_bin_restore_notification' => 'Prügikastist taastati :count objekti.',

    // Audit Log
    'audit' => 'Auditilogi',
    'audit_desc' => 'Auditilogi kuvab nimekirja tegevustest, mida süsteem jälgib. See nimekiri on filtreerimata, erinevalt muudest loenditest süsteemis, kus rakenduvad õigused.',
    'audit_event_filter' => 'Sündmuse filter',
    'audit_event_filter_no_filter' => 'Ilma filtrita',
    'audit_deleted_item' => 'Kustutatud objekt',
    'audit_deleted_item_name' => 'Nimi: :name',
    'audit_table_user' => 'Kasutaja',
    'audit_table_event' => 'Sündmus',
    'audit_table_related' => 'Seotud objekt või detail',
    'audit_table_ip' => 'IP-aadress',
    'audit_table_date' => 'Tegevuse aeg',
    'audit_date_from' => 'Kuupäev alates',
    'audit_date_to' => 'Kuupäev kuni',

    // Role Settings
    'roles' => 'Rollid',
    'role_user_roles' => 'Kasutaja rollid',
    'role_create' => 'Lisa uus roll',
    'role_create_success' => 'Roll on lisatud',
    'role_delete' => 'Kustuta roll',
    'role_delete_confirm' => 'See kustutab rolli nimega \':roleName\'.',
    'role_delete_users_assigned' => 'Selle rolliga on seotud :userCount kasutajat. Kui soovid neile selle asemel uue rolli määrata, siis vali see allpool.',
    'role_delete_no_migration' => "Ära määra uut rolli",
    'role_delete_sure' => 'Kas oled kindel, et soovid selle rolli kustutada?',
    'role_delete_success' => 'Roll on kustutatud',
    'role_edit' => 'Muuda rolli',
    'role_details' => 'Rolli detailid',
    'role_name' => 'Rolli nimi',
    'role_desc' => 'Rolli lühike kirjeldus',
    'role_mfa_enforced' => 'Vajab mitmeastmelist autentimist',
    'role_external_auth_id' => 'Välise autentimise ID-d',
    'role_system' => 'Süsteemsed õigused',
    'role_manage_users' => 'Kasutajate haldamine',
    'role_manage_roles' => 'Rollide ja õiguste haldamine',
    'role_manage_entity_permissions' => 'Kõigi raamatute, peatükkide ja lehtede õiguste haldamine',
    'role_manage_own_entity_permissions' => 'Oma raamatute, peatükkide ja lehtede õiguste haldamine',
    'role_manage_page_templates' => 'Mallide haldamine',
    'role_access_api' => 'Süsteemi API ligipääs',
    'role_manage_settings' => 'Rakenduse seadete haldamine',
    'role_export_content' => 'Sisu eksport',
    'role_editor_change' => 'Lehe redaktori muutmine',
    'role_asset' => 'Sisu õigused',
    'roles_system_warning' => 'Pane tähele, et ülalolevad kolm õigust võimaldavad kasutajal enda või teiste kasutajate õiguseid muuta. Määra nende õigustega roll ainult usaldusväärsetele kasutajatele.',
    'role_asset_desc' => 'Need load kontrollivad vaikimisi ligipääsu süsteemis olevale sisule. Raamatute, peatükkide ja lehtede õigused rakenduvad esmajärjekorras.',
    'role_asset_admins' => 'Administraatoritel on automaatselt ligipääs kogu sisule, aga need valikud võivad peida või näidata kasutajaliidese elemente.',
    'role_asset_image_view_note' => 'See käib nähtavuse kohta pildifailide halduris. Tegelik ligipääs üleslaaditud pildifailidele sõltub süsteemsest piltide salvestamise valikust.',
    'role_all' => 'Kõik',
    'role_own' => 'Enda omad',
    'role_controlled_by_asset' => 'Õigused määratud seotud objekti kaudu',
    'role_save' => 'Salvesta roll',
    'role_update_success' => 'Roll on muudetud',
    'role_users' => 'Selle rolliga kasutajad',
    'role_users_none' => 'Seda rolli ei ole hetkel ühelgi kasutajal',

    // Users
    'users' => 'Kasutajad',
    'user_profile' => 'Kasutajaprofiil',
    'users_add_new' => 'Lisa uus kasutaja',
    'users_search' => 'Otsi kasutajaid',
    'users_latest_activity' => 'Viimane tegevus',
    'users_details' => 'Kasutaja andmed',
    'users_details_desc' => 'Määra kasutajale nimi ja e-posti aadress. E-posti aadressi kasutatakse rakendusse sisse logimiseks.',
    'users_details_desc_no_email' => 'Määra kasutajale nimi, mille järgi teised ta ära tunnevad.',
    'users_role' => 'Kasutaja rollid',
    'users_role_desc' => 'Vali, millised rollid sellel kasutajal on. Kui talle on valitud mitu rolli, siis nende õigused kombineeritakse ja kasutaja saab kõigi rollide õigused.',
    'users_password' => 'Kasutaja parool',
    'users_password_desc' => 'Määra parool, millega rakendusse sisse logida. See peab olema vähemalt 8 tähemärki.',
    'users_send_invite_text' => 'Sa võid kasutajale saata e-postiga kutse, mis võimaldab neil ise parooli seada. Vastasel juhul määra parool ise.',
    'users_send_invite_option' => 'Saada e-postiga kutse',
    'users_external_auth_id' => 'Välise autentimise ID',
    'users_external_auth_id_desc' => 'Selle ID abil identifitseeritakse kasutajat välise autentimissüsteemiga suhtlemisel.',
    'users_password_warning' => 'Täida allolevad väljad ainult siis, kui soovid oma parooli muuta.',
    'users_system_public' => 'See kasutaja tähistab kõiki külalisi, kes su rakendust vaatavad. Selle kontoga ei saa sisse logida, see määratakse automaatselt.',
    'users_delete' => 'Kustuta kasutaja',
    'users_delete_named' => 'Kustuta kasutaja :userName',
    'users_delete_warning' => 'See kustutab kasutaja nimega \':userName\' süsteemist täielikult.',
    'users_delete_confirm' => 'Kas oled kindel, et soovid selle kasutaja kustutada?',
    'users_migrate_ownership' => 'Teisalda omandus',
    'users_migrate_ownership_desc' => 'Vali siin kasutaja, kui soovid talle üle viia kõik selle kasutaja objektid.',
    'users_none_selected' => 'Kasutaja valimata',
    'users_edit' => 'Muuda kasutajat',
    'users_edit_profile' => 'Muuda profiili',
    'users_avatar' => 'Kasutaja profiilipilt',
    'users_avatar_desc' => 'Vali sellele kasutajale profiilipilt. See peaks olema umbes 256x256 pikslit.',
    'users_preferred_language' => 'Eelistatud keel',
    'users_preferred_language_desc' => 'See valik muudab rakenduse kasutajaliidese keelt. Kasutajate loodud sisu see ei mõjuta.',
    'users_social_accounts' => 'Sotsiaalmeedia kontod',
    'users_social_accounts_info' => 'Siin saad seostada teised kontod, millega kiiremini ja lihtsamini sisse logida. Siit konto eemaldamine ei tühista varem lubatud ligipääsu. Ligipääsu saad tühistada ühendatud konto profiili seadetest.',
    'users_social_connect' => 'Lisa konto',
    'users_social_disconnect' => 'Eemalda konto',
    'users_social_connected' => ':socialAccount konto lisati su profiilile.',
    'users_social_disconnected' => ':socialAccount konto eemaldati su profiililt.',
    'users_api_tokens' => 'API tunnused',
    'users_api_tokens_none' => 'Sellel kasutajal pole API tunnuseid',
    'users_api_tokens_create' => 'Lisa tunnus',
    'users_api_tokens_expires' => 'Aegub',
    'users_api_tokens_docs' => 'API dokumentatsioon',
    'users_mfa' => 'Mitmeastmeline autentimine',
    'users_mfa_desc' => 'Seadista mitmeastmeline autentimine, et oma kasutajakonto turvalisust tõsta.',
    'users_mfa_x_methods' => ':count meetod seadistatud|:count meetodit seadistatud',
    'users_mfa_configure' => 'Seadista meetodid',

    // API Tokens
    'user_api_token_create' => 'Lisa API tunnus',
    'user_api_token_name' => 'Nimi',
    'user_api_token_name_desc' => 'Anna oma tunnusele inimloetav nimi, et selle eesmärk paremini meeles püsiks.',
    'user_api_token_expiry' => 'Kehtiv kuni',
    'user_api_token_expiry_desc' => 'Määra kuupäev, millal see tunnus aegub. Pärast seda kuupäeva ei saa selle tunnusega enam päringuid teha. Välja tühjaks jätmine määrab aegumiskuupäeva 100 aastat tulevikku.',
    'user_api_token_create_secret_message' => 'Kohe pärast selle tunnuse loomist genereeritakse ja kuvatakse tunnuse ID ja salajane võti. Võtit kuvatakse ainult ühe korra, seega kopeeri selle väärtus enne jätkamist turvalisse kohta.',
    'user_api_token_create_success' => 'API tunnus on lisatud',
    'user_api_token_update_success' => 'API tunnus on muudetud',
    'user_api_token' => 'API tunnus',
    'user_api_token_id' => 'Tunnuse ID',
    'user_api_token_id_desc' => 'See on API tunnuse süsteemne mittemuudetav identifikaator, mis tuleb API päringutele kaasa panna.',
    'user_api_token_secret' => 'Tunnuse võti',
    'user_api_token_secret_desc' => 'See on API tunnuse salajane võti, mis tuleb API päringutele kaasa panna. Seda kuvatakse ainult ühe korra, seega kopeeri see turvalisse kohta.',
    'user_api_token_created' => 'Tunnus lisatud :timeAgo',
    'user_api_token_updated' => 'Tunnus muudetud :timeAgo',
    'user_api_token_delete' => 'Kustuta tunnus',
    'user_api_token_delete_warning' => 'See kustutab API tunnuse nimega \':tokenName\' süsteemist.',
    'user_api_token_delete_confirm' => 'Kas oled kindel, et soovid selle API tunnuse kustutada?',
    'user_api_token_delete_success' => 'API tunnus on kustutatud',

    // Webhooks
    'webhooks' => 'Veebihaagid',
    'webhooks_create' => 'Lisa uus veebihaak',
    'webhooks_none_created' => 'Ühtegi veebihaaki pole lisatud.',
    'webhooks_edit' => 'Muuda veebihaaki',
    'webhooks_save' => 'Salvesta veebihaak',
    'webhooks_details' => 'Veebihaagi seaded',
    'webhooks_details_desc' => 'Sisesta kasutajasõbralik nimi ja POST lõpp-punkt, kuhu veebihaagi andmeid saadetakse.',
    'webhooks_events' => 'Veebihaagi sündmused',
    'webhooks_events_desc' => 'Vali kõik sündmused, mille peale seda veebihaaki peaks käivitama.',
    'webhooks_events_warning' => 'Pea meeles, et veebihaak käivitatakse kõigi valitud sündmuste peale, isegi kui on seatud kohandatud õigused. Hoolitse selle eest, et veebihaak ei teeks avalikuks konfidentsiaalset sisu.',
    'webhooks_events_all' => 'Kõik süsteemsed sündmused',
    'webhooks_name' => 'Veebihaagi nimi',
    'webhooks_timeout' => 'Veebihaagi päringu aegumine (sekundit)',
    'webhooks_endpoint' => 'Veebihaagi lõpp-punkt',
    'webhooks_active' => 'Veebihaak aktiivne',
    'webhook_events_table_header' => 'Sündmused',
    'webhooks_delete' => 'Kustuta veebihaak',
    'webhooks_delete_warning' => 'See kustutab veebihaagi nimega \':webhookName\' süsteemist.',
    'webhooks_delete_confirm' => 'Kas oled kindel, et soovid selle veebihaagi kustutada?',
    'webhooks_format_example' => 'Veebihaagi formaadi näidis',
    'webhooks_format_example_desc' => 'Veebihaagi andmed saadetakse POST-päringuga seadistatud lõpp-punktile allpool toodud JSON-formaadis. Omadused "related_item" ja "url" on valikulised ja sõltuvad sündmusest, mis veebihaagi käivitas.',
    'webhooks_status' => 'Veebihaagi staatus',
    'webhooks_last_called' => 'Viimati käivitatud:',
    'webhooks_last_errored' => 'Viimati ebaõnnestunud:',
    'webhooks_last_error_message' => 'Viimane veateade:',

    //! If editing translations files directly please ignore this in all
    //! languages apart from en. Content will be auto-copied from en.
    //!////////////////////////////////
    'language_select' => [
        'en' => 'English (inglise keel)',
        'ar' => 'العربية (araabia keel)',
        'bg' => 'Bǎlgarski (bulgaaria keel)',
        'bs' => 'Bosanski (bosnia keel)',
        'ca' => 'Català (katalaani keel)',
        'cs' => 'Česky (tšehhi keel)',
        'da' => 'Dansk (taani keel)',
        'de' => 'Deutsch (saksa keel)',
        'de_informal' => 'Deutsch (Du) (mitteformaalne saksa keel)',
        'el' => 'ελληνικά',
        'es' => 'Español (hispaania keel)',
        'es_AR' => 'Español Argentina (Argentiina hispaania keel)',
        'et' => 'Eesti keel',
        'eu' => 'Euskara',
        'fa' => 'فارسی',
        'fr' => 'Français (prantsuse keel)',
        'he' => 'עברית (heebrea keel)',
        'hr' => 'Hrvatski (horvaadi keel)',
        'hu' => 'Magyar (ungari keel)',
        'id' => 'Bahasa Indonesia (indoneesia keel)',
        'it' => 'Italiano (itaalia keel)',
        'ja' => '日本語 (jaapani keel)',
        'ko' => '한국어 (korea keel)',
        'lt' => 'Lietuvių Kalba (leedu keel)',
        'lv' => 'Latviešu Valoda (läti keel)',
        'nl' => 'Nederlands (hollandi keel)',
        'nb' => 'Norsk (Bokmål) (norra keel)',
        'pl' => 'Polski (poola keel)',
        'pt' => 'Português (portugali keel)',
        'pt_BR' => 'Português do Brasil (Brasiilia portugali keel)',
        'ro' => 'Română',
        'ru' => 'Русский (vene keel)',
        'sk' => 'Slovensky',
        'sl' => 'Sloveenia',
        'sv' => 'Rootsi',
        'tr' => 'Türgi',
        'uk' => 'Ukraina',
        'vi' => 'Vietnami',
        'zh_CN' => 'Hiina (lihtsustatud)',
        'zh_TW' => 'Hiina (traditsiooniline)',
    ],
    //!////////////////////////////////
];


text:
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse">
      Toggle navigation

      </button>
      <a class="navbar-brand" href="<?php echo base_url(); ?>"><?php echo $this->lang->line('site_title'); ?>

      <?php if ($this->ion_auth->logged_in()): ?>

        <li <?php echo $this->uri->segment(1)==''?'class="active"':""; ?>><a href="<?php echo base_url(); ?>"> <?php echo lang('home_heading'); ?>

        <li <?php echo $this->uri->segment(1)== 'customers'?'class="active"':""; ?>><a href="<?php echo base_url('customers'); ?>"> <?php echo lang('customer_heading'); ?>

        <li <?php echo $this->uri->segment(1)== 'orders'?'class="active"':""; ?>><a href="<?php echo base_url('orders'); ?>"> <?php echo lang('order_heading'); ?>

        <li <?php echo $this->uri->segment(1)== 'products'?'class="active"':""; ?>><a href="<?php echo base_url('products'); ?>"> <?php echo lang('product_heading'); ?>

<a href="<?php echo base_url('logout'); ?>"> <?php echo lang('logout_heading'); ?>

      <?php else: ?>
        <?php if ($this->uri->segment(1) != 'login'): ?>

<a href="<?php echo base_url(); ?>"> <?php echo lang('login_heading'); ?>

        <?php endif ?>
      <?php endif ?>

redpajama_set_name: RedPajamaGithub


text:
package org.apache.hadoop.hive.accumulo.mr;

import java.util.HashMap;
import java.util.Map;

/**
 * Index table definition.
 */
public class AccumuloIndexDefinition {
  private final String baseTable;
  private final String indexTable;
  private final Map<String, String> colMap;

  public AccumuloIndexDefinition(String baseTable, String indexTable) {
    this.colMap = new HashMap<String, String>();
    this.baseTable = baseTable;
    this.indexTable = indexTable;
  }

  public String getBaseTable() {
    return baseTable;
  }

  public String getIndexTable() {
    return indexTable;
  }

  public void addIndexCol(String cf, String cq, String colType) {
    colMap.put(encode(cf, cq), colType);
  }

  public Map<String, String> getColumnMap() {
    return colMap;
  }

  public void setColumnTuples(String columns) {
    if (columns != null) {
      String cols = columns.trim();
      if (!cols.isEmpty() && !"*".equals(cols)) {
        for (String col : cols.split(",")) {
          String[] cfcqtp = col.trim().split(":");
          addIndexCol(cfcqtp[0], cfcqtp[1], cfcqtp[2]);
        }
      }
    }
  }

  public boolean contains(String cf, String cq) {
    return colMap.containsKey(encode(cf, cq));
  }

  public String getColType(String cf, String cq) {
    return colMap.get(encode(cf, cq));
  }

  private String encode(String cf, String cq) {
    return cq + ":" + cq;
  }
}


text:
<?php

use Behat\Behat\Context\BehatContext,
    Behat\Behat\Exception\PendingException;
use Behat\Gherkin\Node\TableNode;

use Symfony\Component\DependencyInjection\ContainerInterface;

class CalculatorContext extends BehatContext
{
    /**
     * @var \Symfony\Component\DependencyInjection\ContainerInterface
     */
    private $container;

    /**
     * @var \Qafoo\ChangeTrack\Calculator\Stats
     */
    private $calculatedStats;

    /**
     * @param \Symfony\Component\DependencyInjection\ContainerInterface $container
     */
    public function __construct(ContainerInterface $container)
    {
        $this->container = $container;
    }

    /**
     * @return \Qafoo\ChangeTrack\Analyzer\Result
     */
    public function getAnalyzedChanges()
    {
        return $this->getMainContext()->getAnalyzedChanges();
    }

    /**
     * @When /^I calculate the stats$/
     */
    public function iCalculateTheStats()
    {
        $calculator = $this->container->get('Qafoo.ChangeTrack.Calculator');
        $this->calculatedStats = $calculator->calculateStats($this->getAnalyzedChanges());
    }

    /**
     * @Then /^I have the following stats$/
     */
    public function iHaveTheFollowingStats(TableNode $table)
    {
        foreach ($table->getHash() as $row) {
            $package = $row['Package'];
            $class = $row['Class'];
            $method = $row['Method'];
            $changeType = $row['Change Type'];
            $value = (int) $row['Value'];

            if (!isset($this->calculatedStats->packageStats[$package]->classStats[$class]->methodStats[$method]->labelStats[$changeType])) {
                throw new \RuntimeException(
                    sprintf(
                        'No stats found for change type "%s", class "%s" and method "%s"',
                        $changeType,
                        $class,
                        $method
                    )
                );
            }
            if ($this->calculatedStats->packageStats[$package]->classStats[$class]->methodStats[$method]->labelStats[$changeType] != $value) {
                throw new \RuntimeException(
                    sprintf(
                        'Stats value for change type "%s", class "%s" and method "%s" is %s, expected %s',
                        $changeType,
                        $class,
                        $method,
                        $this->calculatedStats->packageStats[$package]->classStats[$class]->methodStats[$method]->labelStats[$changeType],
                        $value
                    )
                );
            }
        }
    }
}


text:
#include <zxing/Binarizer.h>

namespace zxing {

	Binarizer::Binarizer(Ref<LuminanceSource> source) : source_(source) {
	}

	Binarizer::~Binarizer() {
	}

	Ref<LuminanceSource> Binarizer::getLuminanceSource() const {
		return source_;
	}

}


text:
<!doctype html>
<html lang="en">

<head>
        <base href="/">

        <meta charset="utf-8">
        <meta http-equiv="x-ua-compatible" content="ie=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">

        <title>FireDAX</title>

        <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/nvd3/1.8.4/nv.d3.min.css" />

</head>

<body>

        <app></app>

        <script>

    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
    m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
    })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

    if (window.location.host === 'firedax.com'){
      ga('create', 'UA-82100099-1', 'auto');
      ga('send', 'pageview');
    }

  </script>
</body>

</html>


text:
/**
 * Sample React Native App
 * https://github.com/facebook/react-native
 * @flow
 */

import React, { Component } from 'react';
import {
  StyleSheet,
  Text,
  View
} from 'react-native';
import Timeline from 'react-native-timeline-listview'

export default class Example extends Component {
  constructor(){
    super()
    this.data = [
      {time: '09:00', title: 'Archery Training', description: 'The Beginner Archery and Beginner Crossbow course does not require you to bring any equipment, since everything you need will be provided for the course. ', circleColor: '#009688',lineColor:'#009688'},
      {time: '10:45', title: 'Play Badminton', description: 'Badminton is a racquet sport played using racquets to hit a shuttlecock across a net.'},
      {time: '12:00', title: 'Lunch', icon: require('../img/lunch.png')},
      {time: '14:00', title: 'Watch Soccer', description: 'Team sport played between two teams of eleven players with a spherical ball. ',lineColor:'#009688'},
      {time: '16:30', title: 'Go to Fitness center', description: 'Look out for the Best Gym & Fitness Centers around me :)', circleColor: '#009688'}
    ]
  }

  render() {
    //'rgb(45,156,219)'
    return (
      <View style={styles.container}>
        <Timeline
          style={styles.list}
          data={this.data}
          circleSize={20}
          circleColor='rgb(45,156,219)'
          lineColor='rgb(45,156,219)'
          timeContainerStyle={{minWidth:52, marginTop: -5}}
          timeStyle={{textAlign: 'center', backgroundColor:'#ff9797', color:'white', padding:5, borderRadius:13}}
          descriptionStyle={{color:'gray'}}
          options={{
            style:{paddingTop:5}
          }}
          innerCircle={'dot'}
        />
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    padding: 20,
		paddingTop:65,
    backgroundColor:'white'
  },
  list: {
    flex: 1,
    marginTop:20,
  },
});


text:
var path = require("path");

var StyleSheetSet = require("./node_app/models/stylesheet-set").StyleSheetSet;
	HTMLPageSet = require("./node_app/models/html-page-set").HTMLPageSet;

var cssPath = null,
	htmlPath = null;

if(process.argv.indexOf("-css") != -1) cssPath = process.argv[process.argv.indexOf("-css") + 1];
else console.log("Provide a path to your CSS folder using -css");

if(process.argv.indexOf("-html") != -1) htmlPath = process.argv[process.argv.indexOf("-html") + 1];
else console.log("Provide a path to your HTML folder using -html");

if ((cssPath) && (htmlPath)) {
	var config = require(path.join(__dirname, "package.json")).config;

	console.log("Retrieving stylesheets...");

	var stylesheetSet = new StyleSheetSet({
		location: cssPath
	});

	console.log("Complete");

	console.log("Retrieving HTML...");

	var htmlPageSet = new HTMLPageSet({
		location: htmlPath,
		fileTypes: config.htmlFileTypes
	});

	console.log("Complete");

	console.log("The doctor is in!");
	console.log("");

	// Load the module for checking for unused styles

	var unusedStylesChecker = require("./node_app/controllers/unused-styles-checker");

	console.log(unusedStylesChecker.GetDescription());
	console.log("");
	unusedStylesChecker.Process(stylesheetSet, htmlPageSet);
}


text:
using System;
using System.IO;
using System.Collections.Generic;
using System.Linq;

//////////////////////////////////////////////////
/////    AUTOGENERATED MESSAGE DEFINITION    /////
//////////////////////////////////////////////////
/////         DO NOT MODIFY BY HAND!         /////
//////////////////////////////////////////////////

namespace ROS_CS
{
    namespace teleop_msgs
    {
        public class TopicUpdate : ROS_CS.Core.BaseMessage
        {
            public readonly string typeID = "TopicUpdate";
            public readonly string md5sum = "e6d39e0588d11f005f47d62ecc7ac8ae";
            public std_msgs.Header header;
            public List<string> TopicNames;
            public List<string> TopicTypes;

            public TopicUpdate ()
            {
                header = new std_msgs.Header();
                TopicNames = new List<string>();
                TopicTypes = new List<string>();
            }

            public override string ToString ()
            {
                return ROS_CS.Core.PrettyPrinter.PrettyPrint(ToStringRaw());
            }

            public override string ToStringRaw ()
            {
                string string_rep = typeID + ":\n";
                string_rep += header.ToStringRaw() + "\n";
                string_rep += "TopicNames:\n[";
                foreach (string element in TopicNames)
                {
                    string_rep += " " + element;
                }
                string_rep += "]\n\n";
                string_rep += "TopicTypes:\n[";
                foreach (string element in TopicTypes)
                {
                    string_rep += " " + element;
                }
                string_rep += "]\n\n";
                return string_rep;
            }

            public override void Serialize(MemoryStream stream)
            {
                header.Serialize(stream);
                System.Byte[] TopicNames_len_bytes = BitConverter.GetBytes((System.UInt32)TopicNames.Count);
                stream.Write(TopicNames_len_bytes, 0, TopicNames_len_bytes.Length);
                foreach(string element in TopicNames)
                {
                    System.Byte[] element_bytes = System.Text.Encoding.UTF8.GetBytes(element);
                    System.Byte[] element_len_bytes = BitConverter.GetBytes((System.UInt32)element_bytes.Length);
                    stream.Write(element_len_bytes, 0, element_len_bytes.Length);
                    stream.Write(element_bytes, 0, element_bytes.Length);
                }
                System.Byte[] TopicTypes_len_bytes = BitConverter.GetBytes((System.UInt32)TopicTypes.Count);
                stream.Write(TopicTypes_len_bytes, 0, TopicTypes_len_bytes.Length);
                foreach(string element in TopicTypes)
                {
                    System.Byte[] element_bytes = System.Text.Encoding.UTF8.GetBytes(element);
                    System.Byte[] element_len_bytes = BitConverter.GetBytes((System.UInt32)element_bytes.Length);
                    stream.Write(element_len_bytes, 0, element_len_bytes.Length);
                    stream.Write(element_bytes, 0, element_bytes.Length);
                }
            }

            public override int Deserialize(System.Byte[] serialized)
            {
                return Deserialize(serialized, 0);
            }

            public override int Deserialize(System.Byte[] serialized, int startIndex)
            {
                int curIndex = startIndex;
                curIndex += header.Deserialize(serialized, curIndex);
                System.UInt32 TopicNames_len = BitConverter.ToUInt32(serialized, curIndex);
                curIndex += BitConverter.GetBytes(TopicNames_len).Length;
                for (int i = 0; i < (int)TopicNames_len; i++)
                {
                    System.UInt32 element_len = BitConverter.ToUInt32(serialized, curIndex);
                    curIndex += BitConverter.GetBytes(element_len).Length;
                    string element = System.Text.Encoding.UTF8.GetString(serialized, curIndex, (int)element_len);
                    curIndex += (int)element_len;
                    TopicNames.Add(element);
                }
                System.UInt32 TopicTypes_len = BitConverter.ToUInt32(serialized, curIndex);
                curIndex += BitConverter.GetBytes(TopicTypes_len).Length;
                for (int i = 0; i < (int)TopicTypes_len; i++)
                {
                    System.UInt32 element_len = BitConverter.ToUInt32(serialized, curIndex);
                    curIndex += BitConverter.GetBytes(element_len).Length;
                    string element = System.Text.Encoding.UTF8.GetString(serialized, curIndex, (int)element_len);
                    curIndex += (int)element_len;
                    TopicTypes.Add(element);
                }
                return (curIndex - startIndex);
            }

        }
    }
}


text:
@interface Target_Adcolony : NSObject

- (void)Action_setDelegate:(NSDictionary *)params;

- (void)Action_startWithInfo:(NSDictionary *)params;

- (void)Action_playWithOptions:(NSDictionary *)params;

@end


text:
namespace axl {
namespace sys {
namespace win {

class DeviceInfoSet;

//..............................................................................

AXL_SELECT_ANY SP_DEVINFO_DATA g_nullDevInfoData = { sizeof(SP_DEVINFO_DATA) };

// . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

class DeviceInfo {
	friend class DeviceInfoSet;

protected:
	HDEVINFO m_devInfoSet;
	SP_DEVINFO_DATA m_devInfoData;

public:
	DeviceInfo() {
		m_devInfoSet = INVALID_HANDLE_VALUE;
		m_devInfoData = g_nullDevInfoData;
	}

	DeviceInfo(
		HDEVINFO devInfoSet,
		const SP_DEVINFO_DATA* devInfoData
	) {
		m_devInfoSet = devInfoSet;
		m_devInfoData = *devInfoData;
	}

	HDEVINFO
	getDevInfoSet() {
		return m_devInfoSet;
	}

	SP_DEVINFO_DATA*
	getDevInfoData() {
		return &m_devInfoData;
	}

	bool
	getDeviceInstanceId(
		wchar_t* buffer,
		size_t length,
		dword_t* requiredLength
	) {
		bool_t result = ::SetupDiGetDeviceInstanceId(m_devInfoSet, &m_devInfoData, buffer, (dword_t)length, requiredLength);
		return err::complete(result != 0);
	}

	bool
	getDeviceInstanceId(sl::String_w* string);

	template <typename T>
	bool
	getDeviceInstanceId(sl::StringBase<T>* string);

	sl::String_w
	getDeviceInstanceId();

	bool
	getDeviceDriverPath(sl::String_w* string);

	template <typename T>
	bool
	getDeviceDriverPath(sl::StringBase<T>* string);

	sl::String_w
	getDeviceDriverPath();

	bool
	getDeviceRegistryProperty(
		uint_t propId,
		void* buffer,
		size_t size,
		dword_t* requiredSize
	) {
		bool_t result = ::SetupDiGetDeviceRegistryPropertyW(m_devInfoSet, &m_devInfoData, propId, NULL, (byte_t*)buffer, (dword_t)size, requiredSize);
		return err::complete(result != 0);
	}

	bool
	getDeviceRegistryProperty(
		uint_t propId,
		sl::Array<char>* buffer
	);

	template <typename T>
	bool
	getDeviceRegistryProperty(
		uint_t propId,
		sl::StringBase<T>* string
	);

	sl::String_w
	getDeviceRegistryProperty(uint_t propId);

	bool
	setDeviceRegistryProperty(
		uint_t propId,
		const void* buffer,
		size_t size
	) {
		bool_t result = ::SetupDiSetDeviceRegistryPropertyW(m_devInfoSet, &m_devInfoData, propId, (const byte_t*) buffer, (dword_t)size);
		return err::complete(result != 0);
	}

	bool
	openDeviceRegistryKey(
		RegKey* regKey,
		REGSAM keyAccess = KEY_ALL_ACCESS
	);

	HKEY
	openDeviceRegistryKey(REGSAM keyAccess = KEY_ALL_ACCESS);

	bool
	getDeviceInstallParams(SP_DEVINSTALL_PARAMS_W* params) {
		bool_t result = ::SetupDiGetDeviceInstallParamsW(m_devInfoSet, &m_devInfoData, params);
		return err::complete(result != 0);
	}

	bool
	setDeviceInstallParams(const SP_DEVINSTALL_PARAMS_W* params) {
		bool_t result = ::SetupDiSetDeviceInstallParamsW(m_devInfoSet, &m_devInfoData, (SP_DEVINSTALL_PARAMS_W*)params);
		return err::complete(result != 0);
	}

	bool
	getClassInstallParams(
		void* buffer,
		size_t size,
		dword_t* requiredSize
	) {
		bool_t result = ::SetupDiGetClassInstallParamsW(m_devInfoSet, &m_devInfoData, (SP_CLASSINSTALL_HEADER*)buffer, (dword_t)size, requiredSize);
		return err::complete(result != 0);
	}

	bool
	getClassInstallParams(sl::Array<char>* buffer);

	bool
	setClassInstallParams(
		const void* params,
		size_t size
	) {
		bool_t result = ::SetupDiSetClassInstallParamsW(m_devInfoSet, &m_devInfoData, (SP_CLASSINSTALL_HEADER*)params, size);
		return err::complete(result != 0);
	}

	bool
	callClassInstaller(DI_FUNCTION function) {
		bool_t result = ::SetupDiCallClassInstaller(function, m_devInfoSet, &m_devInfoData);
		return err::complete(result != 0);
	}

	bool
	restartDevice(bool* isRebootRequired);
};

// . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

template <typename T>
bool
DeviceInfo::getDeviceInstanceId(sl::StringBase<T>* string) {
	sl::String_w instanceId;
	getDeviceInstanceId(&instanceId);
	*string = instanceId;
	return true;
}

inline
sl::String_w
DeviceInfo::getDeviceInstanceId() {
	sl::String_w string;
	getDeviceInstanceId(&string);
	return string;
}

template <typename T>
bool
DeviceInfo::getDeviceDriverPath(sl::StringBase<T>* string) {
	sl::String_w driverPath;
	getDeviceDriverPath(&driverPath);
	*string = driverPath;
	return true;
}

inline
sl::String_w
DeviceInfo::getDeviceDriverPath() {
	sl::String_w string;
	getDeviceDriverPath(&string);
	return string;
}

template <typename T>
bool
DeviceInfo::getDeviceRegistryProperty(
	uint_t propId,
	sl::StringBase<T>* string
) {
	sl::Array<char> buffer;
	bool result = getDeviceRegistryProperty(propId, &buffer);
	if (!result)
		return false;

	size_t size = buffer.getCount();
	if (size <= sizeof(wchar_t))
		string->clear();
	else
		string->copy((const wchar_t*)buffer.cp(),  size / sizeof(wchar_t) - 1);

	return true;
}

inline
sl::String_w
DeviceInfo::getDeviceRegistryProperty(uint_t propId) {
	sl::String_w string;
	getDeviceRegistryProperty(propId, &string);
	return string;
}

inline
HKEY
DeviceInfo::openDeviceRegistryKey(REGSAM keyAccess) {
	HKEY h = ::SetupDiOpenDevRegKey(m_devInfoSet, &m_devInfoData, DICS_FLAG_GLOBAL, 0, DIREG_DEV, keyAccess);
	if (h == INVALID_HANDLE_VALUE)
		err::setLastSystemError();

	return h;
}

inline
bool
DeviceInfo::openDeviceRegistryKey(
	RegKey* regKey,
	REGSAM keyAccess
) {
	HKEY h = openDeviceRegistryKey(keyAccess);
	regKey->attach(h);
	return regKey->isOpen();
}

//..............................................................................

class DestroyDeviceInfoSet {
public:
	void
	operator () (HDEVINFO h) {
		::SetupDiDestroyDeviceInfoList(h);
	}
};

// . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

class DeviceInfoSet: public sl::Handle<HDEVINFO, DestroyDeviceInfoSet, sl::MinusOne<HDEVINFO> > {
public:
	bool
	create(uint_t flags = DIGCF_PRESENT);

	bool
	create(
		const GUID& classGuid,
		uint_t flags = DIGCF_PRESENT
	);

	bool
	create(
		const sl::StringRef_w& enumerator,
		uint_t flags = DIGCF_PRESENT
	);

	bool
	getDeviceInfo(
		size_t i,
		DeviceInfo* deviceInfo
	);

	static
	bool
	getDeviceClassGuids(
		const sl::StringRef_w& name,
		GUID* buffer,
		size_t count,
		dword_t* requiredCount
	) {
		bool_t result = ::SetupDiClassGuidsFromNameW(name.sz(), buffer, (dword_t)count, requiredCount);
		return err::complete(result != 0);
	}

	static
	bool
	getDeviceClassGuids(
		const sl::StringRef_w& name,
		sl::Array<GUID>* buffer
	);
};

// . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

inline
bool
DeviceInfoSet::create(uint_t flags) {
	close();

	m_h = ::SetupDiGetClassDevsW(NULL, NULL, NULL, flags | DIGCF_ALLCLASSES);
	return err::complete(m_h != INVALID_HANDLE_VALUE);
}

inline
bool
DeviceInfoSet::create(
	const GUID& classGuid,
	uint_t flags
) {
	close();

	m_h = ::SetupDiGetClassDevsW(&classGuid, NULL, NULL, flags);
	return err::complete(m_h != INVALID_HANDLE_VALUE);
}

inline
bool
DeviceInfoSet::create(
	const sl::StringRef_w& enumerator,
	uint_t flags
) {
	close();

	m_h = ::SetupDiGetClassDevsW(NULL, enumerator.szn(), NULL, flags);
	return err::complete(m_h != INVALID_HANDLE_VALUE);
}

inline
bool
DeviceInfoSet::getDeviceInfo(
	size_t i,
	DeviceInfo* deviceInfo
) {
	bool_t result = ::SetupDiEnumDeviceInfo(m_h, (DWORD)i, &deviceInfo->m_devInfoData);
	if (!result)
		return err::failWithLastSystemError();

	deviceInfo->m_devInfoSet = m_h;
	return true;
}

inline
bool
DeviceInfoSet::getDeviceClassGuids(
	const sl::StringRef_w& name,
	sl::Array<GUID>* buffer
) {
	dword_t requiredCount = 0;
	getDeviceClassGuids(name, NULL, 0, &requiredCount);

	buffer->setCount(requiredCount);
	return getDeviceClassGuids(name, buffer->p(), requiredCount, &requiredCount);
}

//..............................................................................

} // namespace win
} // namespace sys
} // namespace axl


text:
package com.amazonaws.services.chimesdkmeetings.model;

import javax.annotation.Generated;

/**
 *

 * Too many tags were added to the specified resource.
 *

 */
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class TooManyTagsException extends com.amazonaws.services.chimesdkmeetings.model.AmazonChimeSDKMeetingsException {
    private static final long serialVersionUID = 1L;

    private String code;
    /**
     *

     * The ID of the request that contains too many tags.
     *

     */
    private String requestId;
    /**
     *

     * The name of the resource that received too many tags.
     *

     */
    private String resourceName;

    /**
     * Constructs a new TooManyTagsException with the specified error message.
     *
     * @param message
     *        Describes the error encountered.
     */
    public TooManyTagsException(String message) {
        super(message);
    }

    /**
     * @param code
     */

    @com.fasterxml.jackson.annotation.JsonProperty("Code")
    public void setCode(String code) {
        this.code = code;
    }

    /**
     * @return
     */

    @com.fasterxml.jackson.annotation.JsonProperty("Code")
    public String getCode() {
        return this.code;
    }

    /**
     * @param code
     * @return Returns a reference to this object so that method calls can be chained together.
     */

    public TooManyTagsException withCode(String code) {
        setCode(code);
        return this;
    }

    /**
     *

     * The ID of the request that contains too many tags.
     *

     *
     * @param requestId
     *        The ID of the request that contains too many tags.
     */

    @com.fasterxml.jackson.annotation.JsonProperty("RequestId")
    public void setRequestId(String requestId) {
        this.requestId = requestId;
    }

    /**
     *

     * The ID of the request that contains too many tags.
     *

     *
     * @return The ID of the request that contains too many tags.
     */

    @com.fasterxml.jackson.annotation.JsonProperty("RequestId")
    public String getRequestId() {
        return this.requestId;
    }

    /**
     *

     * The ID of the request that contains too many tags.
     *

     *
     * @param requestId
     *        The ID of the request that contains too many tags.
     * @return Returns a reference to this object so that method calls can be chained together.
     */

    public TooManyTagsException withRequestId(String requestId) {
        setRequestId(requestId);
        return this;
    }

    /**
     *

     * The name of the resource that received too many tags.
     *

     *
     * @param resourceName
     *        The name of the resource that received too many tags.
     */

    @com.fasterxml.jackson.annotation.JsonProperty("ResourceName")
    public void setResourceName(String resourceName) {
        this.resourceName = resourceName;
    }

    /**
     *

     * The name of the resource that received too many tags.
     *

     *
     * @return The name of the resource that received too many tags.
     */

    @com.fasterxml.jackson.annotation.JsonProperty("ResourceName")
    public String getResourceName() {
        return this.resourceName;
    }

    /**
     *

     * The name of the resource that received too many tags.
     *

     *
     * @param resourceName
     *        The name of the resource that received too many tags.
     * @return Returns a reference to this object so that method calls can be chained together.
     */

    public TooManyTagsException withResourceName(String resourceName) {
        setResourceName(resourceName);
        return this;
    }

}


text:
import { Component } from '@angular/core';

declare var cordova: any;

/**
 * emergenca page for home page
 * @param  {'page-emergency'}  {selector   [description]
 * @param  {'emergency.html'}} templateUrl [description]
 */
@Component({
  selector: 'page-emergency',
  templateUrl: 'emergency.html'
})
export class EmergencyPage {

  /**
   *
   */
  constructor() { }

  /**
   * toggle the visibility of the langauges german an english
   * @param  {string} langShow the language to set visible
   * @param  {string} langHide the language to hide
   */
  changeLanguage(langShow: string, langHide: string) {
    document.getElementById(langShow).style.display = 'block';
    document.getElementById(langHide).style.display = 'none';
  }

  /**
   * Method to copy the emergency information in the language which is given by the parameter
   * @param  {string} lang language of the text.
   */
  copyText(lang: string) {
    if (lang == 'german') {
      cordova.plugins.clipboard.copy('Falls ich mich ungewöhnlich verhalte und den Eindruck erwecke, als wäre ich betrunken, kann das ein Zeichen einer Unterzuckerung sein.\n\n' +
        'Bitte geben Sie mir 20g Zucker, z.B. als 2dl gesüsstes Getränk oder mind. 4 Stück Traubenzucker oder Würfelzucker. Verbessert sich mein Zustand nicht innert 10 Minuten, rufen Sie einen Arzt oder den Notfalldienst.\n\n' +
        'Falls ich bewusstlos bin, geben Sie mir nichts und rufen Sie sofort einen Arzt oder den Notfalldienst.');
      console.log('did copy german');
    } else {
      cordova.plugins.clipboard.copy('In case you find me disoriented or confused this may be a sign of low blood sugar.\n\n' +
        'Please give me some form of sugar(20 g), e.g. 200 ml sugary drink (not a diet drink) or dextrose tablet. If my situation does not improve within 10 minutes call a doctor or an ambulance.\n\n' +
        'If I am unconscious do not give me anything by mouth. Call a doctor or an ambulance immediately.');
      console.log('did copy english');
    }
  }
}


text:
export { default as automount } from "./decorators/automount";
export { default as mixin } from "./decorators/mixin";
export { default as shadow } from "./decorators/shadow";
export { default as shadowBound } from "./decorators/shadowBound";


text:
package eu.socialsensor.benchmarks;

import eu.socialsensor.graphdatabases.GraphDatabase;
import eu.socialsensor.graphdatabases.Neo4jGraphDatabase;
import eu.socialsensor.graphdatabases.OrientGraphDatabase;
import eu.socialsensor.graphdatabases.SparkseeGraphDatabase;
import eu.socialsensor.graphdatabases.TitanGraphDatabase;
import eu.socialsensor.main.GraphDatabaseBenchmark;
import eu.socialsensor.utils.PermuteMethod;
import eu.socialsensor.utils.Utils;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

/**
 * MassiveInsertionBenchmark implementation
 * @author sotbeis
 * @email sotbeis@iti.gr
 */

public class MassiveInsertionBenchmark implements Benchmark{

	private static final String MIW_RESULTS = "MIWResults.txt";
	private String datasetDir;

	private double[] orientTimes = new double[GraphDatabaseBenchmark.SCENARIOS];
	private double[] titanTimes = new double[GraphDatabaseBenchmark.SCENARIOS];
	private double[] neo4jTimes = new double[GraphDatabaseBenchmark.SCENARIOS];
	private double[] sparkseeTimes = new double[GraphDatabaseBenchmark.SCENARIOS];

	private int titanScenarioCount = 0;
	private int orientScenarioCount = 0;
	private int neo4jScenarioCount = 0;
	private int sparkseeScenarioCount = 0;

	private Logger logger = Logger.getLogger(MassiveInsertionBenchmark.class);

	public MassiveInsertionBenchmark(String datasetDir) {
		this.datasetDir = datasetDir;
	}

	@Override
	public void startBenchmark() {
		logger.setLevel(Level.INFO);
		System.out.println("");
		logger.info("Executing Massive Insertion Benchmark . . . .");

		Utils utils = new Utils();
		Class<MassiveInsertionBenchmark> c = MassiveInsertionBenchmark.class;
		Method[] methods = utils.filter(c.getDeclaredMethods(), "MassiveInsertionBenchmark");
		PermuteMethod permutations = new PermuteMethod(methods);
		int cntPermutations = 1;
		while(permutations.hasNext()) {
			System.out.println("");
			logger.info("Scenario " + cntPermutations++);
			for(Method permutation : permutations.next()) {
				try {
					permutation.invoke(this, null);
					utils.clearGC();

				} catch (IllegalAccessException  e) {
					e.printStackTrace();
				}
				catch (IllegalArgumentException e) {
					e.printStackTrace();
				}
				catch (InvocationTargetException e) {
					e.printStackTrace();
				}

			}
		}

		System.out.println("");
		logger.info("Massive Insertion Benchmark finished");

		utils.writeResults(titanTimes, orientTimes, neo4jTimes, sparkseeTimes, MIW_RESULTS,
				"Massive Insertion");
	}

	@SuppressWarnings("unused")
	private void orientdbMassiveInsertionBenchmark() {
		GraphDatabase orientGraphDatabase = new OrientGraphDatabase();
		long start = System.currentTimeMillis();
		orientGraphDatabase.createGraphForMassiveLoad(GraphDatabaseBenchmark.ORIENTDB_PATH);
		orientGraphDatabase.massiveModeLoading(datasetDir);
		orientGraphDatabase.shutdownMassiveGraph();
		long orientTime = System.currentTimeMillis() - start;
		orientGraphDatabase.delete(GraphDatabaseBenchmark.ORIENTDB_PATH);
		orientTimes[orientScenarioCount] = orientTime / 1000.0;
		orientScenarioCount++;
	}

	@SuppressWarnings("unused")
	private void titanMassiveInsertionBenchmark() {
		GraphDatabase titanGraphDatabase = new TitanGraphDatabase();
		long start = System.currentTimeMillis();
		titanGraphDatabase.createGraphForMassiveLoad(GraphDatabaseBenchmark.TITANDB_PATH);
		titanGraphDatabase.massiveModeLoading(datasetDir);
		titanGraphDatabase.shutdownMassiveGraph();
		long titanTime = System.currentTimeMillis() - start;
		titanGraphDatabase.delete(GraphDatabaseBenchmark.TITANDB_PATH);
		titanTimes[titanScenarioCount] = titanTime / 1000.0;
		titanScenarioCount++;
	}

	@SuppressWarnings("unused")
	private void neo4jMassiveInsertionBenchmark() {
		GraphDatabase neo4jGraphDatabase = new Neo4jGraphDatabase();
		long start = System.currentTimeMillis();
		neo4jGraphDatabase.createGraphForMassiveLoad(GraphDatabaseBenchmark.NEO4JDB_PATH);
		neo4jGraphDatabase.massiveModeLoading(datasetDir);
		neo4jGraphDatabase.shutdownMassiveGraph();
		long neo4jTime = System.currentTimeMillis() - start;
		neo4jGraphDatabase.delete(GraphDatabaseBenchmark.NEO4JDB_PATH);
		neo4jTimes[neo4jScenarioCount] = neo4jTime / 1000.0;
		neo4jScenarioCount++;
	}

	@SuppressWarnings("unused")
	private void sparkseeMassiveInsertionBenchmark() {
		GraphDatabase sparkseeGraphDatabase = new SparkseeGraphDatabase();

		sparkseeGraphDatabase.createGraphForMassiveLoad(GraphDatabaseBenchmark.SPARKSEEDB_PATH);
		long start = System.currentTimeMillis();
		sparkseeGraphDatabase.massiveModeLoading(datasetDir);
		long sparkseeTime = System.currentTimeMillis() - start;
		sparkseeGraphDatabase.shutdownMassiveGraph();
		sparkseeGraphDatabase.delete(GraphDatabaseBenchmark.SPARKSEEDB_PATH);
		sparkseeTimes[sparkseeScenarioCount] = sparkseeTime / 1000.0;
		sparkseeScenarioCount++;
	}

}


text:
<!DOCTYPE html>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <base href="../../">

    <title>tipsound.js</title>

tipsound.js

control

        <input type="button" id="play" value="play" data-bind="click: playChord, enable: prepared"/>
        <input type="button" id="stop" value="stop" data-bind="click: stop" />

parameters

presets

        <select data-bind="options: presetList, value: preset, valueAllowUnset: false" size="1"></select>

tempo

        <input type="text" id="tempo" data-bind="value: tempo" />

volume

        <input type="range" id="volume" min="0.0" max="1.0" step="0.01" data-bind="value: volume" />

break method

        <select data-bind="options: breakKind, value: breakValue, valueAllowUnset: false" size="1">
        </select>

sound code

notes

        <textarea type="text" id="chord" rows="5" cols="80" data-bind="value: chord" spellcheck="false"></textarea>

synth

        <textarea type="text" id="synth" rows="20" cols="80" data-bind="value: synth" spellcheck="false"></textarea>


text:
// C implementation of Sleep Sort
#include <stdio.h>
#include <windows.h>
#include <process.h>

// This is the instruction set of a thread
// So in these threads, we "sleep" for a particular
// amount of time and then when it wakes up
// the number is printed out
void routine(void *a)
{
    int n = *(int *) a; // typecasting from void to int

    // Sleeping time is proportional to the number
    // More precisely this thread sleep for 'n' milliseconds
    Sleep(n);

    // After the sleep, print the number
    printf("%d ", n);
}

/* A function that performs sleep sort
_beginthread() is a C run-time library call that creates a new
'thread' for all the integers in the array and returns that
thread.

Each of the 'thread' sleeps for a time proportional to that
integer and print it after waking.

We pass three parameters to _beginthread :-
1) start_address --> start address of the routine/function
                     which creates a new thread
2) stack_size --> Stack Size of the new thread (which is 0)
3) arglist --> Address of the argument to be passed

The return value of _beginthread() function is a handle to the
thread which is created. So we must accept is using the datatype-
'HANDLE' which is included in windows.h header
'HANDLE' datatype is used to represent an event/thread/process etc
So 'HANDLE' datatype is used to define a thread
We store the threads in an array - threads[] which is declared
using 'HANDLE' datatype.

WaitForMultipleObjects() is a function that processes the threads
and has four arguments-
1) no_of_threads --> Number of threads to be processed
2) array_of_threads --> This is the array of threads which should be
                        processed. This array must be of the type
                        'HANDLE'
3) TRUE or FALSE --> We pass TRUE if we want all the threads in the
                     array to be processed
4) time_limit --> The threads will be processed until this time limit
                  is crossed. So if we pass a 0 then no threads will
                  be processed, otherwise if we pass an INFINITE, then
                  the program will stop only when all the threads
                  are processed. We can put a cap on the execution
                  time of the program by passing the desired time
                  limit */
void sleepSort(int arr[], int n)
{
    // An array of threads, one for each of the elements
    // in the input array
    HANDLE threads[n];

    // Create the threads for each of the input array elements
    for (int i = 0; i < n; i++)
        threads[i] = (HANDLE)_beginthread(&routine, 0,  &arr[i]);

    // Process these threads
    WaitForMultipleObjects(n, threads, TRUE, INFINITE);
    return;
}

// Driver program to test above functions
int main()
{
    // Doesn't work for negative numbers
    int arr[] = {34, 23, 122, 9};
    int n = sizeof(arr) / sizeof(arr[0]);

    sleepSort (arr, n);

    return(0);
}


text:
declare namespace GoogleAppsScript {
  namespace People {
    namespace Collection {
      namespace ContactGroups {
        interface MembersCollection {
          // Modify the members of a contact group owned by the authenticated user.
          //

          // The only system contact groups that can have members added are
          // `contactGroups/myContacts` and `contactGroups/starred`. Other system
          // contact groups are deprecated and can only have contacts removed.
          modify(resource: Schema.ModifyContactGroupMembersRequest, resourceName: string): Schema.ModifyContactGroupMembersResponse;
        }
      }
      namespace People {
        interface ConnectionsCollection {
          // Provides a list of the authenticated user's contacts merged with any
          // connected profiles.
          //

          // The request throws a 400 error if 'personFields' is not specified.
          list(resourceName: string): Schema.ListConnectionsResponse;
          // Provides a list of the authenticated user's contacts merged with any
          // connected profiles.
          //

          // The request throws a 400 error if 'personFields' is not specified.
          list(resourceName: string, optionalArgs: object): Schema.ListConnectionsResponse;
        }
      }
      interface ContactGroupsCollection {
        Members?: Collection.ContactGroups.MembersCollection | undefined;
        // Get a list of contact groups owned by the authenticated user by specifying
        // a list of contact group resource names.
        batchGet(): Schema.BatchGetContactGroupsResponse;
        // Get a list of contact groups owned by the authenticated user by specifying
        // a list of contact group resource names.
        batchGet(optionalArgs: object): Schema.BatchGetContactGroupsResponse;
        // Create a new contact group owned by the authenticated user.
        create(resource: Schema.CreateContactGroupRequest): Schema.ContactGroup;
        // Get a specific contact group owned by the authenticated user by specifying
        // a contact group resource name.
        get(resourceName: string): Schema.ContactGroup;
        // Get a specific contact group owned by the authenticated user by specifying
        // a contact group resource name.
        get(resourceName: string, optionalArgs: object): Schema.ContactGroup;
        // List all contact groups owned by the authenticated user. Members of the
        // contact groups are not populated.
        list(): Schema.ListContactGroupsResponse;
        // List all contact groups owned by the authenticated user. Members of the
        // contact groups are not populated.
        list(optionalArgs: object): Schema.ListContactGroupsResponse;
        // Delete an existing contact group owned by the authenticated user by
        // specifying a contact group resource name.
        remove(resourceName: string): void;
        // Delete an existing contact group owned by the authenticated user by
        // specifying a contact group resource name.
        remove(resourceName: string, optionalArgs: object): void;
        // Update the name of an existing contact group owned by the authenticated
        // user.
        update(resource: Schema.UpdateContactGroupRequest, resourceName: string): Schema.ContactGroup;
      }
      interface PeopleCollection {
        Connections?: Collection.People.ConnectionsCollection | undefined;
        // Create a new contact and return the person resource for that contact.
        createContact(resource: Schema.Person): Schema.Person;
        // Create a new contact and return the person resource for that contact.
        createContact(resource: Schema.Person, optionalArgs: object): Schema.Person;
        // Delete a contact person. Any non-contact data will not be deleted.
        deleteContact(resourceName: string): void;
        // Provides information about a person by specifying a resource name. Use
        // `people/me` to indicate the authenticated user.
        //

        // The request throws a 400 error if 'personFields' is not specified.
        get(resourceName: string): Schema.Person;
        // Provides information about a person by specifying a resource name. Use
        // `people/me` to indicate the authenticated user.
        //

        // The request throws a 400 error if 'personFields' is not specified.
        get(resourceName: string, optionalArgs: object): Schema.Person;
        // Provides information about a list of specific people by specifying a list
        // of requested resource names. Use `people/me` to indicate the authenticated
        // user.
        //

        // The request throws a 400 error if 'personFields' is not specified.
        getBatchGet(): Schema.GetPeopleResponse;
        // Provides information about a list of specific people by specifying a list
        // of requested resource names. Use `people/me` to indicate the authenticated
        // user.
        //

        // The request throws a 400 error if 'personFields' is not specified.
        getBatchGet(optionalArgs: object): Schema.GetPeopleResponse;
        // Update contact data for an existing contact person. Any non-contact data
        // will not be modified.
        // The request throws a 400 error if `updatePersonFields` is not specified.
        //

        // The request throws a 400 error if `person.metadata.sources` is not
        // specified for the contact to be updated.
        //

        // The request throws a 412 error if `person.metadata.sources.etag` is
        // different than the contact's etag, which indicates the contact has changed
        // since its data was read. Clients should get the latest person and re-apply
        // their updates to the latest person.
        updateContact(resource: Schema.Person, resourceName: string): Schema.Person;
        // Update contact data for an existing contact person. Any non-contact data
        // will not be modified.
        // The request throws a 400 error if `updatePersonFields` is not specified.
        //

        // The request throws a 400 error if `person.metadata.sources` is not
        // specified for the contact to be updated.
        //

        // The request throws a 412 error if `person.metadata.sources.etag` is
        // different than the contact's etag, which indicates the contact has changed
        // since its data was read. Clients should get the latest person and re-apply
        // their updates to the latest person.
        updateContact(resource: Schema.Person, resourceName: string, optionalArgs: object): Schema.Person;
      }
    }
    namespace Schema {
      interface Address {
        city?: string | undefined;
        country?: string | undefined;
        countryCode?: string | undefined;
        extendedAddress?: string | undefined;
        formattedType?: string | undefined;
        formattedValue?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        poBox?: string | undefined;
        postalCode?: string | undefined;
        region?: string | undefined;
        streetAddress?: string | undefined;
        type?: string | undefined;
      }
      interface AgeRangeType {
        ageRange?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
      }
      interface BatchGetContactGroupsResponse {
        responses?: People.Schema.ContactGroupResponse[] | undefined;
      }
      interface Biography {
        contentType?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
      interface Birthday {
        date?: People.Schema.Date | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        text?: string | undefined;
      }
      interface BraggingRights {
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
      interface ContactGroup {
        etag?: string | undefined;
        formattedName?: string | undefined;
        groupType?: string | undefined;
        memberCount?: number | undefined;
        memberResourceNames?: string[] | undefined;
        metadata?: People.Schema.ContactGroupMetadata | undefined;
        name?: string | undefined;
        resourceName?: string | undefined;
      }
      interface ContactGroupMembership {
        contactGroupId?: string | undefined;
      }
      interface ContactGroupMetadata {
        deleted?: boolean | undefined;
        updateTime?: string | undefined;
      }
      interface ContactGroupResponse {
        contactGroup?: People.Schema.ContactGroup | undefined;
        requestedResourceName?: string | undefined;
        status?: People.Schema.Status | undefined;
      }
      interface CoverPhoto {
        default?: boolean | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        url?: string | undefined;
      }
      interface CreateContactGroupRequest {
        contactGroup?: People.Schema.ContactGroup | undefined;
      }
      interface Date {
        day?: number | undefined;
        month?: number | undefined;
        year?: number | undefined;
      }
      interface DomainMembership {
        inViewerDomain?: boolean | undefined;
      }
      interface EmailAddress {
        displayName?: string | undefined;
        formattedType?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        type?: string | undefined;
        value?: string | undefined;
      }
      interface Event {
        date?: People.Schema.Date | undefined;
        formattedType?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        type?: string | undefined;
      }
      interface FieldMetadata {
        primary?: boolean | undefined;
        source?: People.Schema.Source | undefined;
        verified?: boolean | undefined;
      }
      interface Gender {
        formattedValue?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
      interface GetPeopleResponse {
        responses?: People.Schema.PersonResponse[] | undefined;
      }
      interface ImClient {
        formattedProtocol?: string | undefined;
        formattedType?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        protocol?: string | undefined;
        type?: string | undefined;
        username?: string | undefined;
      }
      interface Interest {
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
      interface ListConnectionsResponse {
        connections?: People.Schema.Person[] | undefined;
        nextPageToken?: string | undefined;
        nextSyncToken?: string | undefined;
        totalItems?: number | undefined;
        totalPeople?: number | undefined;
      }
      interface ListContactGroupsResponse {
        contactGroups?: People.Schema.ContactGroup[] | undefined;
        nextPageToken?: string | undefined;
        nextSyncToken?: string | undefined;
        totalItems?: number | undefined;
      }
      interface Locale {
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
      interface Membership {
        contactGroupMembership?: People.Schema.ContactGroupMembership | undefined;
        domainMembership?: People.Schema.DomainMembership | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
      }
      interface ModifyContactGroupMembersRequest {
        resourceNamesToAdd?: string[] | undefined;
        resourceNamesToRemove?: string[] | undefined;
      }
      interface ModifyContactGroupMembersResponse {
        notFoundResourceNames?: string[] | undefined;
      }
      interface Name {
        displayName?: string | undefined;
        displayNameLastFirst?: string | undefined;
        familyName?: string | undefined;
        givenName?: string | undefined;
        honorificPrefix?: string | undefined;
        honorificSuffix?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        middleName?: string | undefined;
        phoneticFamilyName?: string | undefined;
        phoneticFullName?: string | undefined;
        phoneticGivenName?: string | undefined;
        phoneticHonorificPrefix?: string | undefined;
        phoneticHonorificSuffix?: string | undefined;
        phoneticMiddleName?: string | undefined;
      }
      interface Nickname {
        metadata?: People.Schema.FieldMetadata | undefined;
        type?: string | undefined;
        value?: string | undefined;
      }
      interface Occupation {
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
      interface Organization {
        current?: boolean | undefined;
        department?: string | undefined;
        domain?: string | undefined;
        endDate?: People.Schema.Date | undefined;
        formattedType?: string | undefined;
        jobDescription?: string | undefined;
        location?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        name?: string | undefined;
        phoneticName?: string | undefined;
        startDate?: People.Schema.Date | undefined;
        symbol?: string | undefined;
        title?: string | undefined;
        type?: string | undefined;
      }
      interface Person {
        addresses?: People.Schema.Address[] | undefined;
        ageRange?: string | undefined;
        ageRanges?: People.Schema.AgeRangeType[] | undefined;
        biographies?: People.Schema.Biography[] | undefined;
        birthdays?: People.Schema.Birthday[] | undefined;
        braggingRights?: People.Schema.BraggingRights[] | undefined;
        coverPhotos?: People.Schema.CoverPhoto[] | undefined;
        emailAddresses?: People.Schema.EmailAddress[] | undefined;
        etag?: string | undefined;
        events?: People.Schema.Event[] | undefined;
        genders?: People.Schema.Gender[] | undefined;
        imClients?: People.Schema.ImClient[] | undefined;
        interests?: People.Schema.Interest[] | undefined;
        locales?: People.Schema.Locale[] | undefined;
        memberships?: People.Schema.Membership[] | undefined;
        metadata?: People.Schema.PersonMetadata | undefined;
        names?: People.Schema.Name[] | undefined;
        nicknames?: People.Schema.Nickname[] | undefined;
        occupations?: People.Schema.Occupation[] | undefined;
        organizations?: People.Schema.Organization[] | undefined;
        phoneNumbers?: People.Schema.PhoneNumber[] | undefined;
        photos?: People.Schema.Photo[] | undefined;
        relations?: People.Schema.Relation[] | undefined;
        relationshipInterests?: People.Schema.RelationshipInterest[] | undefined;
        relationshipStatuses?: People.Schema.RelationshipStatus[] | undefined;
        residences?: People.Schema.Residence[] | undefined;
        resourceName?: string | undefined;
        sipAddresses?: People.Schema.SipAddress[] | undefined;
        skills?: People.Schema.Skill[] | undefined;
        taglines?: People.Schema.Tagline[] | undefined;
        urls?: People.Schema.Url[] | undefined;
        userDefined?: People.Schema.UserDefined[] | undefined;
      }
      interface PersonMetadata {
        deleted?: boolean | undefined;
        linkedPeopleResourceNames?: string[] | undefined;
        objectType?: string | undefined;
        previousResourceNames?: string[] | undefined;
        sources?: People.Schema.Source[] | undefined;
      }
      interface PersonResponse {
        httpStatusCode?: number | undefined;
        person?: People.Schema.Person | undefined;
        requestedResourceName?: string | undefined;
        status?: People.Schema.Status | undefined;
      }
      interface PhoneNumber {
        canonicalForm?: string | undefined;
        formattedType?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        type?: string | undefined;
        value?: string | undefined;
      }
      interface Photo {
        default?: boolean | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        url?: string | undefined;
      }
      interface ProfileMetadata {
        objectType?: string | undefined;
        userTypes?: string[] | undefined;
      }
      interface Relation {
        formattedType?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        person?: string | undefined;
        type?: string | undefined;
      }
      interface RelationshipInterest {
        formattedValue?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
      interface RelationshipStatus {
        formattedValue?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
      interface Residence {
        current?: boolean | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
      interface SipAddress {
        formattedType?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        type?: string | undefined;
        value?: string | undefined;
      }
      interface Skill {
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
      interface Source {
        etag?: string | undefined;
        id?: string | undefined;
        profileMetadata?: People.Schema.ProfileMetadata | undefined;
        type?: string | undefined;
        updateTime?: string | undefined;
      }
      interface Status {
        code?: number | undefined;
        details?: object[] | undefined;
        message?: string | undefined;
      }
      interface Tagline {
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
      interface UpdateContactGroupRequest {
        contactGroup?: People.Schema.ContactGroup | undefined;
      }
      interface Url {
        formattedType?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        type?: string | undefined;
        value?: string | undefined;
      }
      interface UserDefined {
        key?: string | undefined;
        metadata?: People.Schema.FieldMetadata | undefined;
        value?: string | undefined;
      }
    }
  }
  interface People {
    ContactGroups?: People.Collection.ContactGroupsCollection | undefined;
    People?: People.Collection.PeopleCollection | undefined;
    // Create a new instance of Address
    newAddress(): People.Schema.Address;
    // Create a new instance of AgeRangeType
    newAgeRangeType(): People.Schema.AgeRangeType;
    // Create a new instance of Biography
    newBiography(): People.Schema.Biography;
    // Create a new instance of Birthday
    newBirthday(): People.Schema.Birthday;
    // Create a new instance of BraggingRights
    newBraggingRights(): People.Schema.BraggingRights;
    // Create a new instance of ContactGroup
    newContactGroup(): People.Schema.ContactGroup;
    // Create a new instance of ContactGroupMembership
    newContactGroupMembership(): People.Schema.ContactGroupMembership;
    // Create a new instance of ContactGroupMetadata
    newContactGroupMetadata(): People.Schema.ContactGroupMetadata;
    // Create a new instance of CoverPhoto
    newCoverPhoto(): People.Schema.CoverPhoto;
    // Create a new instance of CreateContactGroupRequest
    newCreateContactGroupRequest(): People.Schema.CreateContactGroupRequest;
    // Create a new instance of Date
    newDate(): People.Schema.Date;
    // Create a new instance of DomainMembership
    newDomainMembership(): People.Schema.DomainMembership;
    // Create a new instance of EmailAddress
    newEmailAddress(): People.Schema.EmailAddress;
    // Create a new instance of Event
    newEvent(): People.Schema.Event;
    // Create a new instance of FieldMetadata
    newFieldMetadata(): People.Schema.FieldMetadata;
    // Create a new instance of Gender
    newGender(): People.Schema.Gender;
    // Create a new instance of ImClient
    newImClient(): People.Schema.ImClient;
    // Create a new instance of Interest
    newInterest(): People.Schema.Interest;
    // Create a new instance of Locale
    newLocale(): People.Schema.Locale;
    // Create a new instance of Membership
    newMembership(): People.Schema.Membership;
    // Create a new instance of ModifyContactGroupMembersRequest
    newModifyContactGroupMembersRequest(): People.Schema.ModifyContactGroupMembersRequest;
    // Create a new instance of Name
    newName(): People.Schema.Name;
    // Create a new instance of Nickname
    newNickname(): People.Schema.Nickname;
    // Create a new instance of Occupation
    newOccupation(): People.Schema.Occupation;
    // Create a new instance of Organization
    newOrganization(): People.Schema.Organization;
    // Create a new instance of Person
    newPerson(): People.Schema.Person;
    // Create a new instance of PersonMetadata
    newPersonMetadata(): People.Schema.PersonMetadata;
    // Create a new instance of PhoneNumber
    newPhoneNumber(): People.Schema.PhoneNumber;
    // Create a new instance of Photo
    newPhoto(): People.Schema.Photo;
    // Create a new instance of ProfileMetadata
    newProfileMetadata(): People.Schema.ProfileMetadata;
    // Create a new instance of Relation
    newRelation(): People.Schema.Relation;
    // Create a new instance of RelationshipInterest
    newRelationshipInterest(): People.Schema.RelationshipInterest;
    // Create a new instance of RelationshipStatus
    newRelationshipStatus(): People.Schema.RelationshipStatus;
    // Create a new instance of Residence
    newResidence(): People.Schema.Residence;
    // Create a new instance of SipAddress
    newSipAddress(): People.Schema.SipAddress;
    // Create a new instance of Skill
    newSkill(): People.Schema.Skill;
    // Create a new instance of Source
    newSource(): People.Schema.Source;
    // Create a new instance of Tagline
    newTagline(): People.Schema.Tagline;
    // Create a new instance of UpdateContactGroupRequest
    newUpdateContactGroupRequest(): People.Schema.UpdateContactGroupRequest;
    // Create a new instance of Url
    newUrl(): People.Schema.Url;
    // Create a new instance of UserDefined
    newUserDefined(): People.Schema.UserDefined;
  }
}

declare var People: GoogleAppsScript.People;


text:
import constants from '../constants';
import ApiFetch from '../../../utils/fetch/ApiFetch';

/**
 * Watch episode
 *
 * **Dispatch**: `MARK_MANY_EPISODE_AS_WATCHED`
 *
 * @alias module:Shows.doUnmarkManyEpisodeAsWatched
 * @category actions
 *
 * @example
 * BetaSeries.getAction('shows', 'doUnmarkManyEpisodeAsWatched')({
 *   episodeIds: 438,
 * });
 *
 * @param {Object}  [obj]             Accept the following:
 * @param {Number}  [obj.episodeIds]   Episodes ID
 *
 * @returns {Promise}
 */
const doUnmarkManyEpisodeAsWatched = ({ episodeIds }) =>
  dispatch => {
    dispatch({
      type: constants.UNMARK_MANY_EPISODE_AS_WATCHED,
      payload: {
        episodeIds,
        seen: false
      }
    });

    return ApiFetch.remove('episodes/watched', { id: episodeIds.join(',') });
  };

export default doUnmarkManyEpisodeAsWatched;


text:
#define LOG_TAG "FileBackupHelper_native"
#include <utils/Log.h>

#include "JNIHelp.h"
#include <android_runtime/AndroidRuntime.h>

#include <androidfw/BackupHelpers.h>

namespace android
{

// android.app.backup.BackupDataInput$EntityHeader
static jfieldID s_keyField = 0;
static jfieldID s_dataSizeField = 0;

static jlong
ctor_native(JNIEnv* env, jobject clazz, jobject fileDescriptor)
{
    int fd = jniGetFDFromFileDescriptor(env, fileDescriptor);
    if (fd == -1) {
        return (jlong)NULL;
    }

    return (jlong)new BackupDataReader(fd);
}

static void
dtor_native(JNIEnv* env, jobject clazz, jlong r)
{
    delete (BackupDataReader*)r;
}

static jint
readNextHeader_native(JNIEnv* env, jobject clazz, jlong r, jobject entity)
{
    int err;
    bool done;
    BackupDataReader* reader = (BackupDataReader*)r;

    int type = 0;

    err = reader->ReadNextHeader(&done, &type);
    if (done) {
        return 1;
    }

    if (err != 0) {
        return err < 0 ? err : -1;
    }

    switch (type) {
    case BACKUP_HEADER_ENTITY_V1:
    {
        String8 key;
        size_t dataSize;
        err = reader->ReadEntityHeader(&key, &dataSize);
        if (err != 0) {
            return err < 0 ? err : -1;
        }
        // TODO: Set the fields in the entity object
        jstring keyStr = env->NewStringUTF(key.string());
        env->SetObjectField(entity, s_keyField, keyStr);
        env->SetIntField(entity, s_dataSizeField, dataSize);
        return 0;
    }
    default:
        ALOGD("Unknown header type: 0x%08x\n", type);
        return -1;
    }

    // done
    return 1;
}

static jint
readEntityData_native(JNIEnv* env, jobject clazz, jlong r, jbyteArray data, jint offset, jint size)
{
    int err;
    BackupDataReader* reader = (BackupDataReader*)r;

    if (env->GetArrayLength(data) < (size+offset)) {
        // size mismatch
        return -1;
    }

    jbyte* dataBytes = env->GetByteArrayElements(data, NULL);
    if (dataBytes == NULL) {
        return -2;
    }

    err = reader->ReadEntityData(dataBytes+offset, size);

    env->ReleaseByteArrayElements(data, dataBytes, 0);

    return err;
}

static jint
skipEntityData_native(JNIEnv* env, jobject clazz, jlong r)
{
    int err;
    BackupDataReader* reader = (BackupDataReader*)r;

    err = reader->SkipEntityData();

    return err;
}

static const JNINativeMethod g_methods[] = {
    { "ctor", "(Ljava/io/FileDescriptor;)J", (void*)ctor_native },
    { "dtor", "(J)V", (void*)dtor_native },
    { "readNextHeader_native", "(JLandroid/app/backup/BackupDataInput$EntityHeader;)I",
            (void*)readNextHeader_native },
    { "readEntityData_native", "(J[BII)I", (void*)readEntityData_native },
    { "skipEntityData_native", "(J)I", (void*)skipEntityData_native },
};

int register_android_backup_BackupDataInput(JNIEnv* env)
{
    //ALOGD("register_android_backup_BackupDataInput");

    jclass clazz = env->FindClass("android/app/backup/BackupDataInput$EntityHeader");
    LOG_FATAL_IF(clazz == NULL, "Unable to find class android.app.backup.BackupDataInput.EntityHeader");
    s_keyField = env->GetFieldID(clazz, "key", "Ljava/lang/String;");
    LOG_FATAL_IF(s_keyField == NULL,
            "Unable to find key field in android.app.backup.BackupDataInput.EntityHeader");
    s_dataSizeField = env->GetFieldID(clazz, "dataSize", "I");
    LOG_FATAL_IF(s_dataSizeField == NULL,
            "Unable to find dataSize field in android.app.backup.BackupDataInput.EntityHeader");

    return AndroidRuntime::registerNativeMethods(env, "android/app/backup/BackupDataInput",
            g_methods, NELEM(g_methods));
}

}


text:
package revision

import (
	"github.com/openshift/library-go/pkg/operator/revisioncontroller"
)

// RevisionResource is an type alias to keep source code compatibility for old
// consumers of this type when it was just used for static pods.
type RevisionResource = revisioncontroller.RevisionResource


text:
<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center" >

    <ProgressBar
        android:id="@+id/progress_bar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:indeterminateDrawable="@drawable/tt_progressbar"
        android:indeterminateDuration="4000"
         />

    <TextView
        android:id="@+id/loading_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="@string/loading"
        android:textColor="#727272" />

    <Button
        android:id="@+id/refresh_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="@string/refresh" />

</merge>


text:
= Merge Command

Another useful command for working with load environments is `merge`.
As the name indicates, `merge` makes it possible to take one environment
and combine it with another.

  `roll merge testing development`

This example would merge the `testing` environment into the `development`
environment. To merge a load environment into the current environment
simply leave out the last argument.

  `roll merge testing`

So in this case we've merged the testing environment into the current environment,
namely the default, `production`.

If we try to merge an environment that doesn't exist, we will get an
error telling us as much.

  expect RuntimeError do
    `roll merge notaname wherever`
  end

  @stderr.assert.include?('does not exist')


text:
Function Disable-IEESC
{
    $AdminKey = "HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A7-37EF-4b3f-8CFC-4F3A74704073}"
    $UserKey = "HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A8-37EF-4b3f-8CFC-4F3A74704073}"
    Set-ItemProperty -Path $AdminKey -Name "IsInstalled" -Value 0
    Set-ItemProperty -Path $UserKey -Name "IsInstalled" -Value 0
    #This shoudl probably stop for confirm.
    Stop-Process -Name Explorer
    Write-Host "IE Enhanced Security Configuration (ESC) has been disabled." -ForegroundColor Green
}


text:
import os
import sys
import logging
import contextlib
import utils
import shutil
from third_party import exceptions_fail_group
from third_party import exceptions_fail_program
from third_party import FailThirdParty

def make_pipe():
    def process():
        pass
    return process

def end_pipe():
    def process(p):
        _ = list(p)
    return process

def _create():
    b = make_pipe()
    e = yield b
    end_pipe()(e)
    yield

@contextlib.contextmanager
def create():
    c = _create()
    p = next(c)
    yield (p, c)

def feed(packages):
    def process(_):
        for node in packages:
            yield node
    return process

def do(function, force, *args, **kwargs):
    '''
    skeleton gtc stage
    '''
    def process(packages):
        def _process():
            for node in packages:
                try:
                    package = node.get_package_name()
                    version = node.get_version()

                    if not force:
                        # skip process if package came with error
                        if node.ret != 0:
                            logging.info('%s %s error detected: skiping' % (function.__name__, package))
                            continue

                        # skip process if package came interrupted
                        if node.interrupted:
                            logging.info('%s %s error detected: skiping' % (function.__name__, package))
                            continue

                    if function.__name__ != 'purge':
                        logger_function = logging.info
                    else:
                        logger_function = logging.debug

                    logger_function('--------- begin@%s: %s (%s) --------' % (function.__name__, package, version))

                    # process package
                    ret = function(node, *args, **kwargs)
                    logging.debug('%s: return %s' % (function.__name__, ret))
                    if isinstance(ret, bool):
                        if not ret:
                            node.ret += 1
                    elif isinstance(ret, int):
                        # aggregation result
                        node.ret += abs(ret)
                    else:
                        logging.error('%s %s error invalid return: %s' % (function.__name__, package, ret))
                        node.ret += 1

                    logger_function('--------- end@%s: %s (%s) --------' % (function.__name__, package, version))

                    if node.ret != 0:
                        node.fail_stage = function.__name__
                        raise FailThirdParty('[exception] %s fail in stage: %s' % (package, function.__name__))

                except FailThirdParty:
                    logging.error('fatal exception in package %s (%s)' % (package, version))
                    node.ret += 1
                    node.fail_stage = function.__name__
                    raise
                except exceptions_fail_group:
                    logging.error('fatal exception in package %s (%s)' % (package, version))
                    node.ret += 1
                    # add exception for show postponed
                    node.exceptions.append(sys.exc_info())
                    node.fail_stage = function.__name__
                    raise
                except exceptions_fail_program:
                    logging.error('interruption in package %s (%s)' % (package, version))
                    node.ret += 1
                    node.fail_stage = function.__name__
                    node.interrupted = True
                    raise
                except:
                    # excepciones por fallos de programacion
                    logging.error('Postponed exception in package %s (%s)' % (package, version))
                    node.ret += 1
                    node.exceptions.append(sys.exc_info())
                    node.fail_stage = function.__name__
                finally:
                    # send to next step
                    yield node

        for node in _process():
            yield node
    return process

####################### PIPELINE PROOF CONCEPT (UNDER CODE IS NOT USED) ###############

def echo(line):
    def process(_):
        yield line
    return process

def cat():
    def process(p):
        for line in p:
            if(os.path.exists(line)):
                with open(line, 'rt') as f:
                    for line2 in f:
                        yield line2
            else:
                logging.warning('<cat> filename %s not exists' % line)
    return process

def find(folder, level=999):
    def process(_):
        for root, dirs, files in utils.walklevel(folder, level):
                for name in files:
                    yield os.path.join(root, name)
    return process

def grep(pattern):
    def process(p):
        for line in p:
            if line.find(pattern) != -1:
                yield line
    return process

def grep_basename(pattern):
    def process(p):
        p0 = pattern[:1]
        pL = pattern[-1:]
        fixed_pattern = pattern.replace('*', '')
        for line in p:
            if(p0 == '*' and pL != '*'):
                if os.path.basename(line).endswith(fixed_pattern):
                    yield line.replace('\\', '/')
            elif(p0 != '*' and pL == '*'):
                if os.path.basename(line).startswith(fixed_pattern):
                    yield line.replace('\\', '/')
            else:
                if os.path.basename(line).find(fixed_pattern) != -1:
                    yield line.replace('\\', '/')
    return process

def grep_v(pattern):
    def process(p):
        for line in p:
            if line.find(pattern) == -1:
                yield line
    return process

def endswith(pattern):
    def process(p):
        for line in p:
            if line.endswith(pattern):
                yield line
    return process

def copy(rootdir, folder):
    def process(p):
        for line in p:
            relfilename = os.path.relpath(line, rootdir)
            destiny = os.path.join(folder, relfilename)
            destiny_dir = os.path.dirname(destiny)
            # if os.path.isfile(line):
            # try:
            utils.trymkdir(destiny_dir)
            shutil.copyfile(line, destiny)
            yield destiny
            # except IOError:
            #     logging.warning('error in copyfile: "%s"' % line)
            # else:
            #     logging.warning('it does not exist filename: "%s"' % line)
    return process

def startswith(pattern):
    def process(p):
        for line in p:
            if line.startswith(pattern):
                yield line
    return process

def printf(prefix = ''):
    def process(p):
        for line in p:
            print("%s%s" % (prefix, line.rstrip()))
            yield line
    return process

def debug(prefix = ''):
    def process(p):
        for line in p:
            logging.debug("%s%s" % (prefix, line.rstrip()))
            yield line
    return process

def write_file(filename, mode='wt'):
    def process(p):
        content = []
        for line in p:
            content.append(line)
        with open(filename, mode) as f:
            for line in content:
                f.write('%s\n' % line.rstrip())
        for line in content:
            yield line
    return process

def tee(filename):
    def process(p):
        p = printf()(p)
        p = write_file(filename)(p)
        for line in p:
            yield line
    return process

def example_context():
    # using context
    with create() as (p, finisher):
        p = find('.')(p)
        p = endswith('.cpp')(p)
        p = cat()(p)
        p = tee('result.txt')(p)
        # send last part
        finisher.send(p)

def example_simple():
    # not using context
    p = make_pipe()
    # begin
    p = find('.', 2)(p)
    p = endswith('.yml')(p)
    p = grep_v('.build_')(p)
    p = tee('result.txt')(p)
    # end
    end_pipe()(p)

if __name__ == '__main__':
    example_simple()


text:
require 'securerandom'
require "language_pack"
require "language_pack/rails42"

class LanguagePack::Rails5 < LanguagePack::Rails42
  # @return [Boolean] true if it's a Rails 5.x app
  def self.use?
    instrument "rails5.use" do
      rails_version = bundler.gem_version('railties')
      return false unless rails_version
      is_rails = rails_version >= Gem::Version.new('5.x') &&
                 rails_version <  Gem::Version.new('6.0.0')
      return is_rails
    end
  end

  def setup_profiled(*args)
    instrument 'setup_profiled' do
      super(*args)
      set_env_default "RAILS_LOG_TO_STDOUT", "enabled"
    end
  end

  def default_config_vars
    super.merge({
      "RAILS_LOG_TO_STDOUT" => "enabled"
    })
  end

  def install_plugins
    # do not install plugins, do not call super, do not warn
  end

  def config_detect
    super
    @local_storage_config = @rails_runner.detect("active_storage.service")
  end

  def best_practice_warnings
    super
    return unless bundler.has_gem?("activestorage")
    return unless File.exist?("config/storage.yml")

    warn_local_storage if local_storage?
    warn_no_ffmpeg     if needs_ffmpeg?
  end

  private
    def has_ffmpeg?
      run("which ffmpeg")
      return $?.success?
    end

    def needs_ffmpeg?
      !has_ffmpeg?
    end

    def local_storage?
      return false unless @local_storage_config.success?
      @local_storage_config.did_match?("local")
    end

    def warn_local_storage
      mcount("warn.activestorage.local_storage")
      warn(<<-WARNING)
You set your `config.active_storage.service` to :local in production.
If you are uploading files to this app, they will not persist after the app
is restarted, on one-off dynos, or if the app has multiple dynos.
Heroku applications have an ephemeral file system. To
persist uploaded files, please use a service such as S3 and update your Rails
configuration.

For more information can be found in this article:
  https://devcenter.heroku.com/articles/active-storage-on-heroku

WARNING
    end

    def warn_no_ffmpeg
      mcount("warn.activestorage.no_binaries.stack-#{stack}")
      mcount("warn.activestorage.no_binaries.all")
      warn(<<-WARNING)
We detected that some binary dependencies required to
use all the preview features of Active Storage are not
present on this system.

For more information please see:
  https://devcenter.heroku.com/articles/active-storage-on-heroku

WARNING
    end
end


text:
// Copyright (c) CBC/Radio-Canada. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for more information.

namespace LinkIt.TestHelpers
{
    public class Media:IPolymorphicModel {
        public int Id { get; set; }
        public string Title { get; set; }
        public string SummaryImageId { get; set; }
    }
}