Add all files

This commit is contained in:
Baco committed 2021-08-15 23:24:04 +02:00
1 parent 89e2300062
commit e2b7ebd85f
68 files changed
+970

No files matched your search

+4
View File
@@ -1,3 +1,7 @@
**/.DS_Store
**/*~
**/.*.swap
# ---> C # ---> C
# Prerequisites # Prerequisites
*.d *.d
Binary file not shown.
+23
View File
@@ -0,0 +1,23 @@
#
# Copyright (c) 2021 Guy Baconniere.
#
## How to use this Makefile
#
# cd git
# mkdir ex00
# cd ex00
# make -f ../../Makefile ex00
#
clone:
@git clone git@vogsphere.42lausanne.ch:vogsphere/intra-uuid-ea6878a3-f0df-459e-8895-725c64a4137b-3699508 git
cc:
@norminette -R CheckForbiddenSourceHeader
@gcc -Wall -Wextra -Werror -o a.out *.c
@./a.out
@rm -f a.out
all: clone
Binary file not shown.
Binary file not shown.
Submodule C_Piscine_C_00/git added at bcd5d3704b.
+21
View File
@@ -0,0 +1,21 @@
<!DOCTYPE html><html style="font-size: 10px;font-family: Roboto, Arial, sans-serif;" lang="en" typography typography-spacing><head><script nonce="M7lcVJHWaDLH6gS6SC0REA">var ytcfg={d:function(){return window.yt&&yt.config_||ytcfg.data_||(ytcfg.data_={})},get:function(k,o){return k in ytcfg.d()?ytcfg.d()[k]:o},set:function(){var a=arguments;if(a.length>1)ytcfg.d()[a[0]]=a[1];else for(var k in a[0])ytcfg.d()[k]=a[0][k]}};
window.ytcfg.set('EMERGENCY_BASE_URL', '\/error_204?t\x3djserror\x26level\x3dERROR\x26client.name\x3d1\x26client.version\x3d2.20210802.09.00');</script><script nonce="M7lcVJHWaDLH6gS6SC0REA">(function(){window.yterr=window.yterr||true;window.unhandledErrorMessages={};window.unhandledErrorCount=0;
window.onerror=function(msg,url,line,columnNumber,error){var err;if(error)err=error;else{err=new Error;err.stack="";err.message=msg;err.fileName=url;err.lineNumber=line;if(!isNaN(columnNumber))err["columnNumber"]=columnNumber}var message=String(err.message);if(!err.message||message in window.unhandledErrorMessages||window.unhandledErrorCount>=5)return;window.unhandledErrorCount+=1;window.unhandledErrorMessages[message]=true;var img=new Image;window.emergencyTimeoutImg=img;img.onload=img.onerror=function(){delete window.emergencyTimeoutImg};
var combinedLineAndColumn=err.lineNumber;if(!isNaN(err["columnNumber"]))combinedLineAndColumn+=":"+err["columnNumber"];var stack=err.stack||"";var values={"msg":message,"type":err.name,"client.params":"unhandled window error","file":err.fileName,"line":combinedLineAndColumn,"stack":stack.substr(0,500)};var thirdPartyScript=!err.fileName||err.fileName==="<anonymous>"||stack.indexOf("extension://")>=0;var replaced=stack.replace(/https:\/\/www.youtube.com\//g,"");if(replaced.match(/https?:\/\/[^/]+\//))thirdPartyScript=
true;else if(stack.indexOf("trapProp")>=0&&stack.indexOf("trapChain")>=0)thirdPartyScript=true;else if(message.indexOf("redefine non-configurable")>=0&&message.indexOf("userAgent")>=0)thirdPartyScript=true;var baseUrl=window["ytcfg"].get("EMERGENCY_BASE_URL","https://www.youtube.com/error_204?t=jserror&level=ERROR");var unsupported=message.indexOf("window.customElements is undefined")>=0;if(thirdPartyScript||unsupported)baseUrl=baseUrl.replace("level=ERROR","level=WARNING");var parts=[baseUrl];for(var key in values){var value=
values[key];if(value)parts.push(key+"="+encodeURIComponent(value))}img.src=parts.join("&")};
(function(){function _getExtendedNativePrototype(tag){var p=this._nativePrototypes[tag];if(!p){p=Object.create(this.getNativePrototype(tag));var p$=Object.getOwnPropertyNames(window["Polymer"].Base);for(var i=0,n=undefined;i<p$.length&&(n=p$[i]);i++)if(!window["Polymer"].BaseDescriptors[n])try{p[n]=window["Polymer"].Base[n]}catch(e){throw new Error("Error while copying property: "+n+". Tag is "+tag);}try{Object.defineProperties(p,window["Polymer"].BaseDescriptors)}catch(e$0){throw new Error("Polymer define property failed for "+
Object.keys(p));}this._nativePrototypes[tag]=p}return p}function handlePolymerError(msg){window.onerror(msg,window.location.href,0,0,new Error(Array.prototype.join.call(arguments,",")))}var origPolymer=window["Polymer"];var newPolymer=function(config){if(!origPolymer._ytIntercepted&&window["Polymer"].Base){origPolymer._ytIntercepted=true;window["Polymer"].Base._getExtendedNativePrototype=_getExtendedNativePrototype;window["Polymer"].Base._error=handlePolymerError;window["Polymer"].Base._warn=handlePolymerError}return origPolymer.apply(this,
arguments)};var origDescriptor=Object.getOwnPropertyDescriptor(window,"Polymer");Object.defineProperty(window,"Polymer",{set:function(p){if(origDescriptor&&origDescriptor.set&&origDescriptor.get){origDescriptor.set(p);origPolymer=origDescriptor.get()}else origPolymer=p;if(typeof origPolymer==="function")Object.defineProperty(window,"Polymer",{value:origPolymer,configurable:true,enumerable:true,writable:true})},get:function(){return typeof origPolymer==="function"?newPolymer:origPolymer},configurable:true,
enumerable:true})})();}).call(this);
</script><script nonce="M7lcVJHWaDLH6gS6SC0REA">window.Polymer=window.Polymer||{};window.Polymer.legacyOptimizations=true;window.Polymer.setPassiveTouchGestures=true;window.ShadyDOM={force:true,preferPerformance:true,noPatch:true};
window.ShadyCSS = {disableRuntime: true};</script><link rel="shortcut icon" href="https://www.youtube.com/s/desktop/c58bc0ce/img/favicon.ico" type="image/x-icon"><link rel="icon" href="https://www.youtube.com/s/desktop/c58bc0ce/img/favicon_32x32.png" sizes="32x32"><link rel="icon" href="https://www.youtube.com/s/desktop/c58bc0ce/img/favicon_48x48.png" sizes="48x48"><link rel="icon" href="https://www.youtube.com/s/desktop/c58bc0ce/img/favicon_96x96.png" sizes="96x96"><link rel="icon" href="https://www.youtube.com/s/desktop/c58bc0ce/img/favicon_144x144.png" sizes="144x144"><script nonce="M7lcVJHWaDLH6gS6SC0REA">var ytcsi={gt:function(n){n=(n||"")+"data_";return ytcsi[n]||(ytcsi[n]={tick:{},info:{}})},now:window.performance&&window.performance.timing&&window.performance.now&&window.performance.timing.navigationStart?function(){return window.performance.timing.navigationStart+window.performance.now()}:function(){return(new Date).getTime()},tick:function(l,t,n){var ticks=ytcsi.gt(n).tick;var v=t||ytcsi.now();if(ticks[l]){ticks["_"+l]=ticks["_"+l]||[ticks[l]];ticks["_"+l].push(v)}ticks[l]=v},info:function(k,
v,n){ytcsi.gt(n).info[k]=v},setStart:function(s,t,n){ytcsi.info("yt_sts",s,n);ytcsi.tick("_start",t,n)}};
(function(w,d){ytcsi.setStart("dhs",w.performance?w.performance.timing.responseStart:null);var isPrerender=(d.visibilityState||d.webkitVisibilityState)=="prerender";var vName=!d.visibilityState&&d.webkitVisibilityState?"webkitvisibilitychange":"visibilitychange";if(isPrerender){ytcsi.info("prerender",1);var startTick=function(){ytcsi.setStart("dhs");d.removeEventListener(vName,startTick)};d.addEventListener(vName,startTick,false)}if(d.addEventListener)d.addEventListener(vName,function(){ytcsi.tick("vc")},
false);function isGecko(){if(!w.navigator)return false;try{if(w.navigator.userAgentData&&w.navigator.userAgentData.brands&&w.navigator.userAgentData.brands.length){var brands=w.navigator.userAgentData.brands;for(var i=0;i<brands.length;i++)if(brands[i]&&brands[i].brand==="Firefox")return true;return false}}catch(e){setTimeout(function(){throw e;})}if(!w.navigator.userAgent)return false;var ua=w.navigator.userAgent;return ua.indexOf("Gecko")>0&&ua.toLowerCase().indexOf("webkit")<0&&ua.indexOf("Edge")<
0&&ua.indexOf("Trident")<0&&ua.indexOf("MSIE")<0}if(isGecko()){var isHidden=(d.visibilityState||d.webkitVisibilityState)=="hidden";if(isHidden)ytcsi.tick("vc")}var slt=function(el,t){setTimeout(function(){var n=ytcsi.now();el.loadTime=n;if(el.slt)el.slt()},t)};w.__ytRIL=function(el){if(!el.getAttribute("data-thumb"))if(w.requestAnimationFrame)w.requestAnimationFrame(function(){slt(el,0)});else slt(el,16)}})(window,document);
</script><link rel="preload" href="https://i.ytimg.com/generate_204" as="fetch"><link as="script" rel="preload" href="https://www.youtube.com/s/desktop/c58bc0ce/jsbin/desktop_polymer_ambiguate_properties.vflset/desktop_polymer_ambiguate_properties.js" nonce="M7lcVJHWaDLH6gS6SC0REA"><script src="https://www.youtube.com/s/desktop/c58bc0ce/jsbin/web-animations-next-lite.min.vflset/web-animations-next-lite.min.js" nonce="M7lcVJHWaDLH6gS6SC0REA"></script><script src="https://www.youtube.com/s/desktop/c58bc0ce/jsbin/custom-elements-es5-adapter.vflset/custom-elements-es5-adapter.js" nonce="M7lcVJHWaDLH6gS6SC0REA"></script><script src="https://www.youtube.com/s/desktop/c58bc0ce/jsbin/webcomponents-sd.vflset/webcomponents-sd.js" nonce="M7lcVJHWaDLH6gS6SC0REA"></script><script nonce="M7lcVJHWaDLH6gS6SC0REA">if (window.ytcsi) {window.ytcsi.tick('lpcs', null, '');}</script><script nonce="M7lcVJHWaDLH6gS6SC0REA">(function() {window.ytplayer={};
ytcfg.set({"CLIENT_CANARY_STATE":"none","DEVICE":"cbr\u003dSafari\u0026cbrand\u003dapple\u0026cbrver\u003d14.1.1\u0026ceng\u003dWebKit\u0026cengver\u003d605.1.15\u0026cos\u003dMacintosh\u0026cosver\u003d10_15_7\u0026cplatform\u003dDESKTOP\u0026cyear\u003d2013","DISABLE_YT_IMG_DELAY_LOADING":false,"ELEMENT_POOL_DEFAULT_CAP":75,"EVENT_ID":"P2IKYdzvJcSY1gLY2rqQCQ","EXPERIMENT_FLAGS":{"kevlar_should_maintain_stable_list":true,"enable_mentions_in_reposts":true,"kevlar_woffle_use_offlineability_util":true,"kevlar_fetch_networkless_support":true,"web_clean_sw_logs_store":true,"kevlar_app_initializer_cleanup":true,"export_networkless_options":true,"kevlar_command_handler_toggle_buttons":true,"kevlar_allow_multistep_video_init":true,"enable_yoodle":true,"kevlar_miniplayer_play_pause_on_scrim":true,"kevlar_remove_prepopulator":true,"kevlar_enable_parent_tools_integration":true,"browse_next_continuations_migration_playlist":true,"is_part_of_any_user_engagement_experiment":true,"kevlar_disable_formatted_string_empty_style_class":true,"screen_manager_log_servlet_ei":true,"web_gel_timeout_cap":true,"player_enable_playback_playlist_change":true,"enable_streamline_repost_flow":true,"enable_polymer_resin_migration":true,"kevlar_transcript_engagement_panel":true,"enable_button_behavior_reuse":true,"kevlar_typography_update":true,"kevlar_queue_use_update_api":true,"kevlar_cancel_scheduled_comment_jobs_on_navigate":true,"kevlar_allow_playlist_reorder":true,"web_autonav_allow_off_by_default":true,"web_compact_video_single_line":true,"use_source_element_if_present_for_actions":true,"defer_rendering_outside_visible_area":true,"disable_child_node_auto_formatted_strings":true,"desktop_mix_use_sampled_color_for_bottom_bar":true,"kevlar_resolve_playlist_endpoint_as_watch_endpoint":true,"kevlar_mealbar_above_player":true,"web_enable_ad_signals_in_it_context":true,"enable_signals":true,"enable_client_streamz_web":true,"kevlar_ctrl_tap_fix":true,"desktop_add_to_playlist_renderer_dialog_popup":true,"serve_pdp_at_canonical_url":true,"enable_call_to_action_clarification_renderer_bottom_section_conditions":true,"web_yt_config_context":true,"polymer2_element_pool_properties":true,"kevlar_standard_scrollbar_color":true,"kevlar_client_save_subs_preferences":true,"clear_visitor_id_in_ytconfig_before_consent":true,"kevlar_include_query_in_search_endpoint":true,"kevlar_fix_miniplayer_logging":true,"enable_masthead_quartile_ping_fix":true,"your_data_entrypoint":true,"include_autoplay_count_in_playlists":true,"kevlar_home_skeleton_hide_later":true,"kevlar_flexible_menu":true,"kevlar_voice_logging_fix":true,"cold_missing_history":true,"enable_mixed_direction_formatted_strings":true,"web_hide_autonav_keyline":true,"no_cookie_before_consent":true,"kevlar_use_player_response_for_updates":true,"disable_signout_supex_users":true,"desktop_crisis_onebox_restyle":true,"web_player_touch_mode_improvements":true,"kevlar_channels_player_handle_missing_swfconfig":true,"ytidb_stop_transaction_commit":true,"kevlar_miniplayer_queue_user_activation":true,"kevlar_scrollbar_rework":true,"kevlar_disable_html_imports":true,"kevlar_use_page_command_url":true,"kevlar_collect_hover_touch_support":true,"web_favicon_image_update":true,"kevlar_voice_search":true,"element_pool_populator_auto_abort":true,"live_chat_increased_min_height":true,"validate_network_status":true,"kevlar_player_disable_rvs_update":true,"trigger_nsm_validation_checks_with_nwl":true,"defer_overlays":true,"decorate_autoplay_renderer":true,"kevlar_one_pick_add_video_to_playlist":true,"kevlar_cache_on_ttl":true,"kevlar_topbar_logo_fallback_home":true,"kevlar_rendererstamper_event_listener":true,"kevlar_update_youtube_sans":true,"kevlar_use_ytd_player":true,"pdg_use_generic_buy_flow_api_path":true,"csi_on_gel":true,"enable_poll_choice_border_on_web":true,"live_chat_show_ongoing_poll_results_in_banner":true,"disable_dependency_injection":true,"web_enable_history_cache_map":true,"kevlar_background_color_update":true,"kevlar_passive_event_listeners":true,"kevlar_snap_state_refresh":true,"kevlar_three_dot_ink":true,"web_dedupe_ve_grafting":true,"web_log_player_watch_next_ticks":true,"kevlar_autofocus_menu_on_keyboard_nav":true,"log_heartbeat_with_lifecycles":true,"defer_menus":true,"kevlar_mix_handle_first_endpoint_different":true,"kevlar_miniplayer":true,"kevlar_command_handler":true,"kevlar_picker_ajax_migration":true,"desktop_keyboard_capture_keydown_killswitch":true,"kevlar_themed_standardized_scrollbar":true,"botguard_periodic_refresh":true,"desktop_mix_use_sampled_color_for_bottom_bar_watch_next":true,"enable_comments_continuation_command_for_web":true,"cache_utc_offset_minutes_in_pref_cookie":true,"enable_premium_voluntary_pause":true,"use_undefined_csn_any_layer":true,"kevlar_js_fixes":true,"kevlar_watch_js_panel_height":true,"kevlar_watch_color_update":true,"kevlar_channel_trailer_multi_attach":true,"kevlar_hide_playlist_playback_status":true,"kevlar_use_one_platform_for_queue_refresh":true,"condition_Line truncated
setMessage({"ADDED_TO_QUEUE":"Added to queue","ADD_TO_DROPDOWN_LABEL":"Save to...","AD_BADGE_TEXT":"Ad","APPLAUD_FOR_X":"Applaud for $amount","BACK_ALT_LABEL":"Back","CANCEL":"Cancel","CHECK_CONNECTION_OR_DOWNLOADS":"Please check your connection or watch your downloaded videos.","CLEAR":"Clear","CONNECT_TO_THE_INTERNET":"Connect to the internet","CONTINUE_WATCHING":"Continue watching","DELETE":"Delete","DELETE_ALL_DOWNLOADS_PROMPT":"Delete all downloads?","DELETE_FROM_DOWNLOADS":"Remove from downloads","DESCRIPTION":"Description","DOWNLOAD":"Download","DOWNLOADED":"Downloaded","DOWNLOADING":"Downloading","DOWNLOADING_PERCENT":"Downloading... $percent%","DOWNLOADS":"Downloads","DOWNLOADS_AVAILABILITY":"Downloads remain available as long as your device has an active internet connection at least once every 30 days.","DOWNLOADS_SETTINGS":"Downloads Settings","DOWNLOAD_QUALITY":"Download Quality","DO_NOT_HAVE_DOWNLOADS":"You do not have any downloads","EDIT_AVATAR_LABEL":"Edit profile picture","EDU_GOT_IT":"Got It","ENTER_DATE_OR_EARLIER":"Enter $allowed_date or earlier","ENTER_DATE_OR_LATER":"Enter $allowed_date or later","FREEBIE_JOIN_MEMBERSHIP_EDU_TEXT":"This channel offers a membership which you can join for free with YouTube Premium","GO_TO_DOWNLOADS":"Go to downloads","GUIDE_ALT_LABEL":"Guide","IMAGE_HORIZONTAL_POSITION_LABEL":"The center of the preview is $x_percent% from the left and $y_percent% from the right.","IMAGE_VERTICAL_POSITION_LABEL":"The center of the preview is $x_percent% from the top and $y_percent% from the bottom.","INVALID_DATE_ERROR":"Invalid Date","JOIN_MEMBERSHIP_EDU_TEXT":"Get access to exclusive perks when you purchase a membership to this channel.","JOIN_MEMBERSHIP_EDU_TITLE":"Membership","KEEP_OPEN":"Keep this window open to continue","LIBRARY_GUIDE_ITEM_EDU_TEXT":"Find your history, playlists, purchases, and more","LIBRARY_GUIDE_ITEM_EDU_TITLE":"Check out your new Library","LOCAL_TIME_LABEL":"Local Time","LOGO_ALT_LABEL":"YouTube Home","MANAGE_MEMBERSHIP_EDU_TEXT":"Access your benefits and manage your membership from here.","MENTIONS_EDU_TEXT":"Go to the Help Center to see how mentions work on YouTube.","MENTIONS_EDU_TITLE":"Learn more","MINIPLAYER_CLOSE":"Close player","MINIPLAYER_COLLAPSE_LABEL":"Collapse","MINIPLAYER_EXPAND_LABEL":"Expand","NO_ANGLE_BRACKET_LABEL":"Playlist title cannot contain \u003c or \u003e","NO_DOWNLOADS":"No downloads","NO_INTERNET_CONNECTION":"No internet connection","OFFLINE_CHECK_CONNECTION":"You\u0027re offline. Check your connection.","PLAYER_LABEL_MUTE":"Mute (m)","PLAYER_LABEL_PAUSE":"Pause (k)","PLAYER_LABEL_PLAY":"Play (k)","PLAYER_LABEL_UNMUTE":"Unmute (m)","QUEUE":"Queue","QUEUE_CLEARED":"{count,plural, \u003d1{1 video in the queue removed}other{# videos in the queue removed}}","QUEUE_CLEARED_UNPLURALIZED":"Queue cleared","QUEUE_CLOSE_MINIPLAYER_CONFIRM_BODY_TEXT":"Are you sure you want to close the player?","QUEUE_CLOSE_MINIPLAYER_CONFIRM_TITLE":"Queue will be cleared","QUEUE_RECOVER_BUTTON":"Restore","QUEUE_RECOVER_MESSAGE":"Recover queue","REACH_BOTTOM_OF_IMAGE_TEXT":"You have reached the bottom of the image","REACH_LEFT_OF_IMAGE_TEXT":"You have reached the left of the image","REACH_RIGHT_OF_IMAGE_TEXT":"You have reached the right of the image","REACH_TOP_OF_IMAGE_TEXT":"You have reached the top of the image","REMEMBER_MY_SETTINGS":"Remember my settings","REPOSITION_IMAGE_HORIZONTALLY_LABEL":"Use left and right arrow keys to reposition the preview","REPOSITION_IMAGE_VERTICALLY_LABEL":"Use up and down arrow keys to reposition the preview","REQUIRED_LABEL":"Required","RETRY":"Retry","SBOX_INAPPROPRIATE_ADDITIONAL":"Provide additional details (optional)","SBOX_INAPPROPRIATE_CANCEL":"Cancel","SBOX_INAPPROPRIATE_CATEGORY":"The selected predictions are:","SBOX_INAPPROPRIATE_DANGEROUS":"Dangerous and harmful activity","SBOX_INAPPROPRIATE_EXPLICIT":"Sexually explicit","SBOX_INAPPROPRIATE_HATEFUL":"Hateful","SBOX_INAPPROPRIATE_OTHER":"Other","SBOX_INAPPROPRIATE_PROMPT":"Report search predictions","SBOX_INAPPROPRIATE_REASON":"Reason (required)","SBOX_INAPPROPRIATE_REPORT":"Report","SBOX_INAPPROPRIATE_SUBMIT":"Submit","SBOX_INAPPROPRIATE_SUGGESTIONS":"Select predictions you would like to report:","SBOX_INAPPROPRIATE_TITLE":"Report search predictions","SBOX_INAPPROPRIATE_TOAST":"Thanks for your feedback!","SBOX_INAPPROPRIATE_VIOLENT":"Violent","SBOX_PLACEHOLDER":"Search","SBOX_VOICE_OVERLAY_PLACEHOLDER":"Listening...","SHARE_LABEL":"Share","SHARE_POST_EDU_TEXT":"Now you can share posts on YouTube","SHOW_LESS":"Show less","SHOW_MORE":"Show more","SIGN_IN_LABEL":"Sign in","SUBS_FILTER_EDU_CHANNEL_TEXT":"Now showing new videos from this channel.","SUBS_FILTER_EDU_TEXT":"See new videos from each channel","SUBS_GUIDE_ITEM_EDU_TEXT":"See new videos from all of your subscriptions","TIMEZONE_FORMAT":"($utc_offset_text) $city_name","TRANSFER_FAILED":"Download failed","TRY_AGAIN_LATER":"Something went wrong. Please try again later.","UNDO":"Undo","UTC_OFFSET_FLine truncated
</script><script nonce="M7lcVJHWaDLH6gS6SC0REA">if (window.ytcsi) {window.ytcsi.tick('lpcf', null, '');}</script><script src="https://www.youtube.com/s/desktop/c58bc0ce/jsbin/scheduler.vflset/scheduler.js" nonce="M7lcVJHWaDLH6gS6SC0REA"></script><script src="https://www.youtube.com/s/desktop/c58bc0ce/jsbin/www-i18n-constants-en_US.vflset/www-i18n-constants.js" nonce="M7lcVJHWaDLH6gS6SC0REA"></script><script src="https://www.youtube.com/s/desktop/c58bc0ce/jsbin/www-tampering.vflset/www-tampering.js" nonce="M7lcVJHWaDLH6gS6SC0REA"></script><script src="https://www.youtube.com/s/desktop/c58bc0ce/jsbin/spf.vflset/spf.js" nonce="M7lcVJHWaDLH6gS6SC0REA"></script><script nonce="M7lcVJHWaDLH6gS6SC0REA">if(window["_spf_state"])window["_spf_state"].config={"assume-all-json-requests-chunked":true};
</script><script src="https://www.youtube.com/s/desktop/c58bc0ce/jsbin/network.vflset/network.js" nonce="M7lcVJHWaDLH6gS6SC0REA"></script><script nonce="M7lcVJHWaDLH6gS6SC0REA">if (window.ytcsi) {window.ytcsi.tick('csl', null, '');}</script><link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=YouTube+Sans:wght@300..900&display=swap" nonce="dv4J95Ortx4RG3IzROTl0Q"><script name="www-roboto" nonce="M7lcVJHWaDLH6gS6SC0REA">if (document.fonts && document.fonts.load) {document.fonts.load("400 10pt Roboto", ""); document.fonts.load("500 10pt Roboto", "");}</script><link rel="stylesheet" href="https://www.youtube.com/s/desktop/c58bc0ce/cssbin/www-onepick.css" nonce="dv4J95Ortx4RG3IzROTl0Q"><style class="global_styles" nonce="dv4J95Ortx4RG3IzROTl0Q">body{padding:0;margin:0;overflow-y:scroll}body.autoscroll{overflow-y:auto}body.no-scroll{overflow:hidden}body.no-y-scroll{overflow-y:hidden}.hidden{display:none}textarea{--paper-input-container-input_-_white-space:pre-wrap}.grecaptcha-badge{visibility:hidden}</style><style class="masthead_shell" nonce="dv4J95Ortx4RG3IzROTl0Q">ytd-masthead.shell{background:rgba(255,255,255,0.98);position:fixed;top:0;right:0;left:0;display:-ms-flex;display:-webkit-flex;display:flex;height:56px;-ms-flex-align:center;-webkit-align-items:center;align-items:center}ytd-masthead.shell #menu-icon{margin-left:16px}ytd-app>ytd-masthead.chunked{position:fixed;top:0;width:100%}ytd-masthead.shell.dark,ytd-masthead.shell.theater{background:rgba(40,40,40,0.98)}ytd-masthead.shell.full-window-mode{background:rgba(40,40,40,0.98);opacity:0;transform:translateY(calc(-100% - 5px))}ytd-masthead.shell>*:first-child{padding-left:16px}ytd-masthead.shell>*:last-child{padding-right:16px}ytd-masthead #masthead-logo{display:-ms-flex;display:-webkit-flex;display:flex}ytd-masthead #masthead-logo #country-code{margin-right:2px}ytd-masthead.shell #yt-logo-updated-svg,ytd-masthead.shell #yt-logo-red-updated-svg,ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{align-self:center;margin-left:8px;padding:0;color:black}ytd-masthead.shell #a11y-skip-nav{display:none}ytd-masthead.shell svg{width:40px;height:40px;padding:8px;margin-right:8px;box-sizing:border-box;color:#606060;fill:currentColor}ytd-masthead .external-icon{width:24px;height:24px}ytd-masthead .yt-icons-ext{fill:currentColor;color:#606060}ytd-masthead.shell.dark .yt-icons-ext ytd-masthead.shell.theater .yt-icons-ext{fill:#ffffff}ytd-masthead svg#yt-logo-svg{width:80px}ytd-masthead svg#yt-logo-red-svg{width:106.4px}ytd-masthead svg#yt-logo-updated-svg{width:90px}ytd-masthead svg#yt-logo-red-updated-svg{width:97px}@media (max-width:656px){ytd-masthead.shell>*:first-child{padding-left:8px}ytd-masthead.shell>*:last-child{padding-right:8px}ytd-masthead.shell svg{margin-right:0}ytd-masthead #masthead-logo{-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{margin-left:4px}}@media (min-width:876px){ytd-masthead #masthead-logo{width:129px}}#masthead-skeleton-icons{display:flex;flex:1;flex-direction:row;justify-content:flex-end}ytd-masthead.masthead-finish #masthead-skeleton-icons{display:none}.masthead-skeleton-icon{border-radius:50%;height:32px;width:32px;margin:0 8px;background-color:hsl(0,0%,89%)}ytd-masthead.dark .masthead-skeleton-icon{background-color:hsl(0,0%,16%)}</style><style class="masthead_custom_styles" is="custom-style" id="ext-styles" nonce="dv4J95Ortx4RG3IzROTl0Q">ytd-masthead .yt-icons-ext{color:var(--yt-spec-icon-active-other)}ytd-masthead svg#yt-logo-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-updated-svg #youtube-red-paths path{fill:#282828}ytd-masthead.dark svg#yt-logo-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead.dark svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-updated-svg #youtube-red-paths path,ytd-masthead.theater svg#yt-logo-svg #youtube-paths path,ytd-masthead.theater svg#yt-logo-red-svg #youtube-red-paths path{fill:rgb(255,255,255)}</style><style class="searchbox" nonce="dv4J95Ortx4RG3IzROTl0Q">#search-input.ytd-searchbox-spt input{-webkit-appearance:none;-webkit-font-smoothing:antialiased;background-color:transparent;border:none;box-shadow:none;color:inherit;font-family:'Roboto','Noto',sans-serif;font-size:16px;font-weight:400;line-height:24px;margin-left:4px;max-width:100%;outline:none;text-align:inherit;width:100%;-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}#search-container.ytd-searchbox-spt{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}#search-input.ytd-searchbox-spt #search::-webkit-input-placeholder{color:hsl(0,0%,53.3%)}#search-input.ytd-searchbox-spt #search::-moLine truncated
+23
View File
@@ -0,0 +1,23 @@
#
# Copyright (c) 2021 Guy Baconniere.
#
## How to use this Makefile
#
# cd git
# mkdir ex00
# cd ex00
# make -f ../../Makefile ex00
#
clone:
@git clone git@vogsphere.42lausanne.ch:vogsphere/intra-uuid-319e1bc9-2486-42de-9a56-7950c60a4835-3710898 git
cc:
@norminette -R CheckForbiddenSourceHeader
@gcc -Wall -Wextra -Werror -o a.out *.c
@./a.out
@rm -f a.out
all: clone
Binary file not shown.
Binary file not shown.
Submodule C_Piscine_C_01/git added at 1de01059c3.
Submodule C_Piscine_C_01/git_old added at 3d5d3e9077.
+21
View File
@@ -0,0 +1,21 @@
<!DOCTYPE html><html style="font-size: 10px;font-family: Roboto, Arial, sans-serif;" lang="en" typography typography-spacing><head><script nonce="VRSz4aEMYhTHvAMU+HQ/og">var ytcfg={d:function(){return window.yt&&yt.config_||ytcfg.data_||(ytcfg.data_={})},get:function(k,o){return k in ytcfg.d()?ytcfg.d()[k]:o},set:function(){var a=arguments;if(a.length>1)ytcfg.d()[a[0]]=a[1];else for(var k in a[0])ytcfg.d()[k]=a[0][k]}};
window.ytcfg.set('EMERGENCY_BASE_URL', '\/error_204?t\x3djserror\x26level\x3dERROR\x26client.name\x3d1\x26client.version\x3d2.20210806.00.00');</script><script nonce="VRSz4aEMYhTHvAMU+HQ/og">(function(){window.yterr=window.yterr||true;window.unhandledErrorMessages={};window.unhandledErrorCount=0;
window.onerror=function(msg,url,line,columnNumber,error){var err;if(error)err=error;else{err=new Error;err.stack="";err.message=msg;err.fileName=url;err.lineNumber=line;if(!isNaN(columnNumber))err["columnNumber"]=columnNumber}var message=String(err.message);if(!err.message||message in window.unhandledErrorMessages||window.unhandledErrorCount>=5)return;window.unhandledErrorCount+=1;window.unhandledErrorMessages[message]=true;var img=new Image;window.emergencyTimeoutImg=img;img.onload=img.onerror=function(){delete window.emergencyTimeoutImg};
var combinedLineAndColumn=err.lineNumber;if(!isNaN(err["columnNumber"]))combinedLineAndColumn+=":"+err["columnNumber"];var stack=err.stack||"";var values={"msg":message,"type":err.name,"client.params":"unhandled window error","file":err.fileName,"line":combinedLineAndColumn,"stack":stack.substr(0,500)};var thirdPartyScript=!err.fileName||err.fileName==="<anonymous>"||stack.indexOf("extension://")>=0;var replaced=stack.replace(/https:\/\/www.youtube.com\//g,"");if(replaced.match(/https?:\/\/[^/]+\//))thirdPartyScript=
true;else if(stack.indexOf("trapProp")>=0&&stack.indexOf("trapChain")>=0)thirdPartyScript=true;else if(message.indexOf("redefine non-configurable")>=0&&message.indexOf("userAgent")>=0)thirdPartyScript=true;var baseUrl=window["ytcfg"].get("EMERGENCY_BASE_URL","https://www.youtube.com/error_204?t=jserror&level=ERROR");var unsupported=message.indexOf("window.customElements is undefined")>=0;if(thirdPartyScript||unsupported)baseUrl=baseUrl.replace("level=ERROR","level=WARNING");var parts=[baseUrl];for(var key in values){var value=
values[key];if(value)parts.push(key+"="+encodeURIComponent(value))}img.src=parts.join("&")};
(function(){function _getExtendedNativePrototype(tag){var p=this._nativePrototypes[tag];if(!p){p=Object.create(this.getNativePrototype(tag));var p$=Object.getOwnPropertyNames(window["Polymer"].Base);for(var i=0,n=undefined;i<p$.length&&(n=p$[i]);i++)if(!window["Polymer"].BaseDescriptors[n])try{p[n]=window["Polymer"].Base[n]}catch(e){throw new Error("Error while copying property: "+n+". Tag is "+tag);}try{Object.defineProperties(p,window["Polymer"].BaseDescriptors)}catch(e$0){throw new Error("Polymer define property failed for "+
Object.keys(p));}this._nativePrototypes[tag]=p}return p}function handlePolymerError(msg){window.onerror(msg,window.location.href,0,0,new Error(Array.prototype.join.call(arguments,",")))}var origPolymer=window["Polymer"];var newPolymer=function(config){if(!origPolymer._ytIntercepted&&window["Polymer"].Base){origPolymer._ytIntercepted=true;window["Polymer"].Base._getExtendedNativePrototype=_getExtendedNativePrototype;window["Polymer"].Base._error=handlePolymerError;window["Polymer"].Base._warn=handlePolymerError}return origPolymer.apply(this,
arguments)};var origDescriptor=Object.getOwnPropertyDescriptor(window,"Polymer");Object.defineProperty(window,"Polymer",{set:function(p){if(origDescriptor&&origDescriptor.set&&origDescriptor.get){origDescriptor.set(p);origPolymer=origDescriptor.get()}else origPolymer=p;if(typeof origPolymer==="function")Object.defineProperty(window,"Polymer",{value:origPolymer,configurable:true,enumerable:true,writable:true})},get:function(){return typeof origPolymer==="function"?newPolymer:origPolymer},configurable:true,
enumerable:true})})();}).call(this);
</script><script nonce="VRSz4aEMYhTHvAMU+HQ/og">window.Polymer=window.Polymer||{};window.Polymer.legacyOptimizations=true;window.Polymer.setPassiveTouchGestures=true;window.ShadyDOM={force:true,preferPerformance:true,noPatch:true};
window.ShadyCSS = {disableRuntime: true};</script><link rel="shortcut icon" href="https://www.youtube.com/s/desktop/65defdc1/img/favicon.ico" type="image/x-icon"><link rel="icon" href="https://www.youtube.com/s/desktop/65defdc1/img/favicon_32x32.png" sizes="32x32"><link rel="icon" href="https://www.youtube.com/s/desktop/65defdc1/img/favicon_48x48.png" sizes="48x48"><link rel="icon" href="https://www.youtube.com/s/desktop/65defdc1/img/favicon_96x96.png" sizes="96x96"><link rel="icon" href="https://www.youtube.com/s/desktop/65defdc1/img/favicon_144x144.png" sizes="144x144"><script nonce="VRSz4aEMYhTHvAMU+HQ/og">var ytcsi={gt:function(n){n=(n||"")+"data_";return ytcsi[n]||(ytcsi[n]={tick:{},info:{}})},now:window.performance&&window.performance.timing&&window.performance.now&&window.performance.timing.navigationStart?function(){return window.performance.timing.navigationStart+window.performance.now()}:function(){return(new Date).getTime()},tick:function(l,t,n){var ticks=ytcsi.gt(n).tick;var v=t||ytcsi.now();if(ticks[l]){ticks["_"+l]=ticks["_"+l]||[ticks[l]];ticks["_"+l].push(v)}ticks[l]=v},info:function(k,
v,n){ytcsi.gt(n).info[k]=v},setStart:function(s,t,n){ytcsi.info("yt_sts",s,n);ytcsi.tick("_start",t,n)}};
(function(w,d){ytcsi.setStart("dhs",w.performance?w.performance.timing.responseStart:null);var isPrerender=(d.visibilityState||d.webkitVisibilityState)=="prerender";var vName=!d.visibilityState&&d.webkitVisibilityState?"webkitvisibilitychange":"visibilitychange";if(isPrerender){ytcsi.info("prerender",1);var startTick=function(){ytcsi.setStart("dhs");d.removeEventListener(vName,startTick)};d.addEventListener(vName,startTick,false)}if(d.addEventListener)d.addEventListener(vName,function(){ytcsi.tick("vc")},
false);function isGecko(){if(!w.navigator)return false;try{if(w.navigator.userAgentData&&w.navigator.userAgentData.brands&&w.navigator.userAgentData.brands.length){var brands=w.navigator.userAgentData.brands;for(var i=0;i<brands.length;i++)if(brands[i]&&brands[i].brand==="Firefox")return true;return false}}catch(e){setTimeout(function(){throw e;})}if(!w.navigator.userAgent)return false;var ua=w.navigator.userAgent;return ua.indexOf("Gecko")>0&&ua.toLowerCase().indexOf("webkit")<0&&ua.indexOf("Edge")<
0&&ua.indexOf("Trident")<0&&ua.indexOf("MSIE")<0}if(isGecko()){var isHidden=(d.visibilityState||d.webkitVisibilityState)=="hidden";if(isHidden)ytcsi.tick("vc")}var slt=function(el,t){setTimeout(function(){var n=ytcsi.now();el.loadTime=n;if(el.slt)el.slt()},t)};w.__ytRIL=function(el){if(!el.getAttribute("data-thumb"))if(w.requestAnimationFrame)w.requestAnimationFrame(function(){slt(el,0)});else slt(el,16)}})(window,document);
</script><link rel="preload" href="https://i.ytimg.com/generate_204" as="fetch"><link as="script" rel="preload" href="https://www.youtube.com/s/desktop/65defdc1/jsbin/desktop_polymer_ambiguate_properties.vflset/desktop_polymer_ambiguate_properties.js" nonce="VRSz4aEMYhTHvAMU+HQ/og"><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/web-animations-next-lite.min.vflset/web-animations-next-lite.min.js" nonce="VRSz4aEMYhTHvAMU+HQ/og"></script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/custom-elements-es5-adapter.vflset/custom-elements-es5-adapter.js" nonce="VRSz4aEMYhTHvAMU+HQ/og"></script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/webcomponents-sd.vflset/webcomponents-sd.js" nonce="VRSz4aEMYhTHvAMU+HQ/og"></script><script nonce="VRSz4aEMYhTHvAMU+HQ/og">if (window.ytcsi) {window.ytcsi.tick('lpcs', null, '');}</script><script nonce="VRSz4aEMYhTHvAMU+HQ/og">(function() {window.ytplayer={};
ytcfg.set({"CLIENT_CANARY_STATE":"none","DEVICE":"cbr\u003dSafari\u0026cbrand\u003dapple\u0026cbrver\u003d14.1.1\u0026ceng\u003dWebKit\u0026cengver\u003d605.1.15\u0026cos\u003dMacintosh\u0026cosver\u003d10_15_7\u0026cplatform\u003dDESKTOP\u0026cyear\u003d2013","DISABLE_YT_IMG_DELAY_LOADING":false,"ELEMENT_POOL_DEFAULT_CAP":75,"EVENT_ID":"c9IQYarALpWr1wL2wJDwCg","EXPERIMENT_FLAGS":{"kevlar_enable_parent_tools_onboarding":true,"kevlar_watch_js_panel_height":true,"disable_simple_mixed_direction_formatted_strings":true,"disable_legacy_desktop_remote_queue":true,"service_worker_subscribe_with_vapid_key":true,"kevlar_watch_gesture_pandown":true,"enable_get_account_switcher_endpoint_on_webfe":true,"web_player_watch_next_response":true,"kevlar_disable_html_imports":true,"kevlar_enable_reorderable_playlists":true,"live_chat_attestation_signal":true,"cb_use_v2_filler":true,"kevlar_enable_slis":true,"disable_child_node_auto_formatted_strings":true,"desktop_enable_wcr_multi_stage_canary":true,"enable_servlet_streamz":true,"enable_mixed_direction_formatted_strings":true,"allow_https_streaming_for_all":true,"memberships_page_continuation_migrate":true,"kevlar_help_use_locale":true,"kevlar_miniplayer_set_watch_next":true,"kevlar_guide_ajax_migration":true,"networkless_gel":true,"kevlar_masthead_store":true,"kevlar_cache_on_ttl_player":true,"pageid_as_header_web":true,"kevlar_dragdrop_fast_scroll":true,"kevlar_calculate_grid_collapsible":true,"enable_mentions_in_reposts":true,"csi_on_gel":true,"kevlar_js_fixes":true,"kevlar_nitrate_driven_tooltips":true,"web_lifecycles":true,"kevlar_snap_state_refresh":true,"enable_client_streamz_web":true,"polymer_video_renderer_defer_menu":true,"kevlar_touch_feedback":true,"web_deprecate_service_ajax_map_dependency":true,"kevlar_update_youtube_sans":true,"kevlar_use_one_platform_for_queue_refresh":true,"condition_biscotti_fetch_on_consent_cookie_html5_clients":true,"kevlar_player_disable_rvs_update":true,"suppress_error_204_logging":true,"kevlar_watch_color_update":true,"kevlar_transcript_panel_refreshed_styles":true,"enable_ytc_refunds_submit_form_signal_action":true,"kevlar_tuner_should_defer_detach":true,"web_enable_history_cache_map":true,"enable_nwl_cleaning_logic":true,"kevlar_no_redirect_to_classic_ks":true,"player_endscreen_ellipsis_fix":true,"use_undefined_csn_any_layer":true,"web_forward_command_on_pbj":true,"kevlar_op_watch_offline_fallback":true,"cache_utc_offset_minutes_in_pref_cookie":true,"enable_ypc_spinners":true,"desktop_adjust_touch_target":true,"web_dont_cancel_pending_navigation_same_url":true,"is_mweb_wexit_main_launch":true,"kevlar_continue_playback_without_player_response":true,"kevlar_channel_trailer_multi_attach":true,"enable_polymer_resin_migration":true,"player_allow_autonav_after_playlist":true,"kevlar_gel_error_routing":true,"enable_web_poster_hover_animation":true,"enable_ytc_self_serve_refunds":true,"kevlar_hide_download_button_on_client":true,"kevlar_updated_logo_icons":true,"kevlar_cache_on_ttl_browse":true,"kevlar_cache_on_ttl":true,"web_always_load_chat_support":true,"web_hide_autonav_headline":true,"polymer_warm_thumbnail_preload":true,"kevlar_op_infra":true,"kevlar_pandown_polyfill":true,"kevlar_populate_command_on_download_button":true,"skip_endpoint_param_comparison":true,"searchbox_reporting":true,"kevlar_inlined_html_templates_polymer_flags":true,"kevlar_save_queue":true,"player_doubletap_to_seek":true,"kevlar_command_handler":true,"disable_features_for_supex":true,"disable_dependency_injection":true,"kevlar_use_page_command_url":true,"enable_memberships_and_purchases":true,"kevlar_mix_handle_first_endpoint_different":true,"validate_network_status":true,"kevlar_touch_gesture_ves":true,"desktop_animate_miniplayer":true,"desktop_add_to_playlist_renderer_dialog_popup":true,"polymer_verifiy_app_state":true,"topbar_persistent_store_fallback":true,"decorate_autoplay_renderer":true,"web_autonav_allow_off_by_default":true,"ytidb_analyze_is_supported":true,"disable_thumbnail_preloading":true,"kevlar_autofocus_menu_on_keyboard_nav":true,"global_spacebar_pause":true,"kevlar_typography_spacing_update":true,"allow_skip_networkless":true,"enable_programmed_playlist_redesign":true,"kevlar_typography_update":true,"web_use_overflow_menu_for_playlist_watch_panel":true,"kevlar_fallback_to_page_data_root_ve":true,"kevlar_log_initial_screen":true,"kevlar_frontend_queue_recover":true,"enable_offer_suppression":true,"ytidb_stop_transaction_commit":true,"kevlar_no_url_params":true,"kevlar_dropdown_fix":true,"enable_gel_log_commands":true,"kevlar_three_dot_ink":true,"enable_signals":true,"polymer_task_manager_proxied_promise":true,"kevlar_player_cached_load_config":true,"web_player_enable_ipp":true,"kevlar_standard_scrollbar_color":true,"html5_pacf_enable_dai":true,"kevlar_allow_queue_reorder":true,"desktop_mic_background":true,"web_player_move_autonav_toggle":true,"live_chat_use_punctual":true,"enable_purchase_activity_in_paid_memberships":true,"kevlar_exit_fullscreen_Line truncated
setMessage({"ADDED_TO_QUEUE":"Added to queue","ADD_TO_DROPDOWN_LABEL":"Save to...","AD_BADGE_TEXT":"Ad","APPLAUD_FOR_X":"Applaud for $amount","BACK_ALT_LABEL":"Back","CANCEL":"Cancel","CHECK_CONNECTION_OR_DOWNLOADS":"Please check your connection or watch your downloaded videos.","CLEAR":"Clear","CONNECT_TO_THE_INTERNET":"Connect to the internet","CONTINUE_WATCHING":"Continue watching","DELETE":"Delete","DELETE_ALL_DOWNLOADS_PROMPT":"Delete all downloads?","DELETE_FROM_DOWNLOADS":"Remove from downloads","DESCRIPTION":"Description","DOWNLOAD":"Download","DOWNLOADED":"Downloaded","DOWNLOADING":"Downloading","DOWNLOADING_PERCENT":"Downloading... $percent%","DOWNLOADS":"Downloads","DOWNLOADS_AVAILABILITY":"Downloads remain available as long as your device has an active internet connection at least once every 30 days.","DOWNLOADS_SETTINGS":"Downloads Settings","DOWNLOAD_QUALITY":"Download Quality","DO_NOT_HAVE_DOWNLOADS":"You do not have any downloads","EDIT_AVATAR_LABEL":"Edit profile picture","EDU_GOT_IT":"Got It","ENTER_DATE_OR_EARLIER":"Enter $allowed_date or earlier","ENTER_DATE_OR_LATER":"Enter $allowed_date or later","FREEBIE_JOIN_MEMBERSHIP_EDU_TEXT":"This channel offers a membership which you can join for free with YouTube Premium","GO_TO_DOWNLOADS":"Go to downloads","GUIDE_ALT_LABEL":"Guide","IMAGE_HORIZONTAL_POSITION_LABEL":"The center of the preview is $x_percent% from the left and $y_percent% from the right.","IMAGE_VERTICAL_POSITION_LABEL":"The center of the preview is $x_percent% from the top and $y_percent% from the bottom.","INVALID_DATE_ERROR":"Invalid Date","JOIN_MEMBERSHIP_EDU_TEXT":"Get access to exclusive perks when you purchase a membership to this channel.","JOIN_MEMBERSHIP_EDU_TITLE":"Membership","KEEP_OPEN":"Keep this window open to continue","LIBRARY_GUIDE_ITEM_EDU_TEXT":"Find your history, playlists, purchases, and more","LIBRARY_GUIDE_ITEM_EDU_TITLE":"Check out your new Library","LOCAL_TIME_LABEL":"Local Time","LOGO_ALT_LABEL":"YouTube Home","MANAGE_MEMBERSHIP_EDU_TEXT":"Access your benefits and manage your membership from here.","MENTIONS_EDU_TEXT":"Go to the Help Center to see how mentions work on YouTube.","MENTIONS_EDU_TITLE":"Learn more","MINIPLAYER_CLOSE":"Close player","MINIPLAYER_COLLAPSE_LABEL":"Collapse","MINIPLAYER_EXPAND_LABEL":"Expand","NO_ANGLE_BRACKET_LABEL":"Playlist title cannot contain \u003c or \u003e","NO_DOWNLOADS":"No downloads","NO_INTERNET_CONNECTION":"No internet connection","OFFLINE_CHECK_CONNECTION":"You\u0027re offline. Check your connection.","PLAYER_LABEL_MUTE":"Mute (m)","PLAYER_LABEL_PAUSE":"Pause (k)","PLAYER_LABEL_PLAY":"Play (k)","PLAYER_LABEL_UNMUTE":"Unmute (m)","QUEUE":"Queue","QUEUE_CLEARED":"{count,plural, \u003d1{1 video in the queue removed}other{# videos in the queue removed}}","QUEUE_CLEARED_UNPLURALIZED":"Queue cleared","QUEUE_CLOSE_MINIPLAYER_CONFIRM_BODY_TEXT":"Are you sure you want to close the player?","QUEUE_CLOSE_MINIPLAYER_CONFIRM_TITLE":"Queue will be cleared","QUEUE_RECOVER_BUTTON":"Restore","QUEUE_RECOVER_MESSAGE":"Recover queue","REACH_BOTTOM_OF_IMAGE_TEXT":"You have reached the bottom of the image","REACH_LEFT_OF_IMAGE_TEXT":"You have reached the left of the image","REACH_RIGHT_OF_IMAGE_TEXT":"You have reached the right of the image","REACH_TOP_OF_IMAGE_TEXT":"You have reached the top of the image","REMEMBER_MY_SETTINGS":"Remember my settings","REPOSITION_IMAGE_HORIZONTALLY_LABEL":"Use left and right arrow keys to reposition the preview","REPOSITION_IMAGE_VERTICALLY_LABEL":"Use up and down arrow keys to reposition the preview","REQUIRED_LABEL":"Required","RETRY":"Retry","SBOX_INAPPROPRIATE_ADDITIONAL":"Provide additional details (optional)","SBOX_INAPPROPRIATE_CANCEL":"Cancel","SBOX_INAPPROPRIATE_CATEGORY":"The selected predictions are:","SBOX_INAPPROPRIATE_DANGEROUS":"Dangerous and harmful activity","SBOX_INAPPROPRIATE_EXPLICIT":"Sexually explicit","SBOX_INAPPROPRIATE_HATEFUL":"Hateful","SBOX_INAPPROPRIATE_OTHER":"Other","SBOX_INAPPROPRIATE_PROMPT":"Report search predictions","SBOX_INAPPROPRIATE_REASON":"Reason (required)","SBOX_INAPPROPRIATE_REPORT":"Report","SBOX_INAPPROPRIATE_SUBMIT":"Submit","SBOX_INAPPROPRIATE_SUGGESTIONS":"Select predictions you would like to report:","SBOX_INAPPROPRIATE_TITLE":"Report search predictions","SBOX_INAPPROPRIATE_TOAST":"Thanks for your feedback!","SBOX_INAPPROPRIATE_VIOLENT":"Violent","SBOX_PLACEHOLDER":"Search","SBOX_VOICE_OVERLAY_PLACEHOLDER":"Listening...","SHARE_LABEL":"Share","SHARE_POST_EDU_TEXT":"Now you can share posts on YouTube","SHOW_LESS":"Show less","SHOW_MORE":"Show more","SIGN_IN_LABEL":"Sign in","SUBS_FILTER_EDU_CHANNEL_TEXT":"Now showing new videos from this channel.","SUBS_FILTER_EDU_TEXT":"See new videos from each channel","SUBS_GUIDE_ITEM_EDU_TEXT":"See new videos from all of your subscriptions","TIMEZONE_FORMAT":"($utc_offset_text) $city_name","TRANSFER_FAILED":"Download failed","TRY_AGAIN_LATER":"Something went wrong. Please try again later.","UNDO":"Undo","UTC_OFFSET_FLine truncated
</script><script nonce="VRSz4aEMYhTHvAMU+HQ/og">if (window.ytcsi) {window.ytcsi.tick('lpcf', null, '');}</script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/scheduler.vflset/scheduler.js" nonce="VRSz4aEMYhTHvAMU+HQ/og"></script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/www-i18n-constants-en_US.vflset/www-i18n-constants.js" nonce="VRSz4aEMYhTHvAMU+HQ/og"></script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/www-tampering.vflset/www-tampering.js" nonce="VRSz4aEMYhTHvAMU+HQ/og"></script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/spf.vflset/spf.js" nonce="VRSz4aEMYhTHvAMU+HQ/og"></script><script nonce="VRSz4aEMYhTHvAMU+HQ/og">if(window["_spf_state"])window["_spf_state"].config={"assume-all-json-requests-chunked":true};
</script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/network.vflset/network.js" nonce="VRSz4aEMYhTHvAMU+HQ/og"></script><script nonce="VRSz4aEMYhTHvAMU+HQ/og">if (window.ytcsi) {window.ytcsi.tick('csl', null, '');}</script><link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=YouTube+Sans:wght@300..900&display=swap" nonce="4eWHb9p+j/kCVfKOZPEtMw"><script name="www-roboto" nonce="VRSz4aEMYhTHvAMU+HQ/og">if (document.fonts && document.fonts.load) {document.fonts.load("400 10pt Roboto", ""); document.fonts.load("500 10pt Roboto", "");}</script><link rel="stylesheet" href="https://www.youtube.com/s/desktop/65defdc1/cssbin/www-onepick.css" nonce="4eWHb9p+j/kCVfKOZPEtMw"><style class="global_styles" nonce="4eWHb9p+j/kCVfKOZPEtMw">body{padding:0;margin:0;overflow-y:scroll}body.autoscroll{overflow-y:auto}body.no-scroll{overflow:hidden}body.no-y-scroll{overflow-y:hidden}.hidden{display:none}textarea{--paper-input-container-input_-_white-space:pre-wrap}.grecaptcha-badge{visibility:hidden}</style><style class="masthead_shell" nonce="4eWHb9p+j/kCVfKOZPEtMw">ytd-masthead.shell{background:rgba(255,255,255,0.98);position:fixed;top:0;right:0;left:0;display:-ms-flex;display:-webkit-flex;display:flex;height:56px;-ms-flex-align:center;-webkit-align-items:center;align-items:center}ytd-masthead.shell #menu-icon{margin-left:16px}ytd-app>ytd-masthead.chunked{position:fixed;top:0;width:100%}ytd-masthead.shell.dark,ytd-masthead.shell.theater{background:rgba(40,40,40,0.98)}ytd-masthead.shell.full-window-mode{background:rgba(40,40,40,0.98);opacity:0;transform:translateY(calc(-100% - 5px))}ytd-masthead.shell>*:first-child{padding-left:16px}ytd-masthead.shell>*:last-child{padding-right:16px}ytd-masthead #masthead-logo{display:-ms-flex;display:-webkit-flex;display:flex}ytd-masthead #masthead-logo #country-code{margin-right:2px}ytd-masthead.shell #yt-logo-updated-svg,ytd-masthead.shell #yt-logo-red-updated-svg,ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{align-self:center;margin-left:8px;padding:0;color:black}ytd-masthead.shell #a11y-skip-nav{display:none}ytd-masthead.shell svg{width:40px;height:40px;padding:8px;margin-right:8px;box-sizing:border-box;color:#606060;fill:currentColor}ytd-masthead .external-icon{width:24px;height:24px}ytd-masthead .yt-icons-ext{fill:currentColor;color:#606060}ytd-masthead.shell.dark .yt-icons-ext ytd-masthead.shell.theater .yt-icons-ext{fill:#ffffff}ytd-masthead svg#yt-logo-svg{width:80px}ytd-masthead svg#yt-logo-red-svg{width:106.4px}ytd-masthead svg#yt-logo-updated-svg{width:90px}ytd-masthead svg#yt-logo-red-updated-svg{width:97px}@media (max-width:656px){ytd-masthead.shell>*:first-child{padding-left:8px}ytd-masthead.shell>*:last-child{padding-right:8px}ytd-masthead.shell svg{margin-right:0}ytd-masthead #masthead-logo{-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{margin-left:4px}}@media (min-width:876px){ytd-masthead #masthead-logo{width:129px}}#masthead-skeleton-icons{display:flex;flex:1;flex-direction:row;justify-content:flex-end}ytd-masthead.masthead-finish #masthead-skeleton-icons{display:none}.masthead-skeleton-icon{border-radius:50%;height:32px;width:32px;margin:0 8px;background-color:hsl(0,0%,89%)}ytd-masthead.dark .masthead-skeleton-icon{background-color:hsl(0,0%,16%)}</style><style class="masthead_custom_styles" is="custom-style" id="ext-styles" nonce="4eWHb9p+j/kCVfKOZPEtMw">ytd-masthead .yt-icons-ext{color:var(--yt-spec-icon-active-other)}ytd-masthead svg#yt-logo-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-updated-svg #youtube-red-paths path{fill:#282828}ytd-masthead.dark svg#yt-logo-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead.dark svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-updated-svg #youtube-red-paths path,ytd-masthead.theater svg#yt-logo-svg #youtube-paths path,ytd-masthead.theater svg#yt-logo-red-svg #youtube-red-paths path{fill:rgb(255,255,255)}</style><style class="searchbox" nonce="4eWHb9p+j/kCVfKOZPEtMw">#search-input.ytd-searchbox-spt input{-webkit-appearance:none;-webkit-font-smoothing:antialiased;background-color:transparent;border:none;box-shadow:none;color:inherit;font-family:'Roboto','Noto',sans-serif;font-size:16px;font-weight:400;line-height:24px;margin-left:4px;max-width:100%;outline:none;text-align:inherit;width:100%;-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}#search-container.ytd-searchbox-spt{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}#search-input.ytd-searchbox-spt #search::-webkit-input-placeholder{color:hsl(0,0%,53.3%)}#search-input.ytd-searchbox-spt #search::-moLine truncated
+23
View File
@@ -0,0 +1,23 @@
#
# Copyright (c) 2021 Guy Baconniere.
#
## How to use this Makefile
#
# cd git
# mkdir ex00
# cd ex00
# make -f ../../Makefile ex00
#
clone:
@git clone git@vogsphere.42lausanne.ch:vogsphere/intra-uuid-0206809b-f597-4ba0-ab8d-b06ca894f9ce-3717791 git
cc:
@norminette -R CheckForbiddenSourceHeader
@gcc -Wall -Wextra -Werror -o a.out *.c
@./a.out
@rm -f a.out
all: clone
Binary file not shown.
Binary file not shown.
Submodule C_Piscine_C_02/git added at 75cf975de3.
Submodule C_Piscine_C_02/git_old added at 54f578e865.
Submodule C_Piscine_C_02/git_todo added at 44a279de36.
+21
View File
@@ -0,0 +1,21 @@
<!DOCTYPE html><html style="font-size: 10px;font-family: Roboto, Arial, sans-serif;" lang="en" typography typography-spacing><head><script nonce="oAuyCnL9WzPQrJbIFKUAbw">var ytcfg={d:function(){return window.yt&&yt.config_||ytcfg.data_||(ytcfg.data_={})},get:function(k,o){return k in ytcfg.d()?ytcfg.d()[k]:o},set:function(){var a=arguments;if(a.length>1)ytcfg.d()[a[0]]=a[1];else for(var k in a[0])ytcfg.d()[k]=a[0][k]}};
window.ytcfg.set('EMERGENCY_BASE_URL', '\/error_204?t\x3djserror\x26level\x3dERROR\x26client.name\x3d1\x26client.version\x3d2.20210806.00.00');</script><script nonce="oAuyCnL9WzPQrJbIFKUAbw">(function(){window.yterr=window.yterr||true;window.unhandledErrorMessages={};window.unhandledErrorCount=0;
window.onerror=function(msg,url,line,columnNumber,error){var err;if(error)err=error;else{err=new Error;err.stack="";err.message=msg;err.fileName=url;err.lineNumber=line;if(!isNaN(columnNumber))err["columnNumber"]=columnNumber}var message=String(err.message);if(!err.message||message in window.unhandledErrorMessages||window.unhandledErrorCount>=5)return;window.unhandledErrorCount+=1;window.unhandledErrorMessages[message]=true;var img=new Image;window.emergencyTimeoutImg=img;img.onload=img.onerror=function(){delete window.emergencyTimeoutImg};
var combinedLineAndColumn=err.lineNumber;if(!isNaN(err["columnNumber"]))combinedLineAndColumn+=":"+err["columnNumber"];var stack=err.stack||"";var values={"msg":message,"type":err.name,"client.params":"unhandled window error","file":err.fileName,"line":combinedLineAndColumn,"stack":stack.substr(0,500)};var thirdPartyScript=!err.fileName||err.fileName==="<anonymous>"||stack.indexOf("extension://")>=0;var replaced=stack.replace(/https:\/\/www.youtube.com\//g,"");if(replaced.match(/https?:\/\/[^/]+\//))thirdPartyScript=
true;else if(stack.indexOf("trapProp")>=0&&stack.indexOf("trapChain")>=0)thirdPartyScript=true;else if(message.indexOf("redefine non-configurable")>=0&&message.indexOf("userAgent")>=0)thirdPartyScript=true;var baseUrl=window["ytcfg"].get("EMERGENCY_BASE_URL","https://www.youtube.com/error_204?t=jserror&level=ERROR");var unsupported=message.indexOf("window.customElements is undefined")>=0;if(thirdPartyScript||unsupported)baseUrl=baseUrl.replace("level=ERROR","level=WARNING");var parts=[baseUrl];for(var key in values){var value=
values[key];if(value)parts.push(key+"="+encodeURIComponent(value))}img.src=parts.join("&")};
(function(){function _getExtendedNativePrototype(tag){var p=this._nativePrototypes[tag];if(!p){p=Object.create(this.getNativePrototype(tag));var p$=Object.getOwnPropertyNames(window["Polymer"].Base);for(var i=0,n=undefined;i<p$.length&&(n=p$[i]);i++)if(!window["Polymer"].BaseDescriptors[n])try{p[n]=window["Polymer"].Base[n]}catch(e){throw new Error("Error while copying property: "+n+". Tag is "+tag);}try{Object.defineProperties(p,window["Polymer"].BaseDescriptors)}catch(e$0){throw new Error("Polymer define property failed for "+
Object.keys(p));}this._nativePrototypes[tag]=p}return p}function handlePolymerError(msg){window.onerror(msg,window.location.href,0,0,new Error(Array.prototype.join.call(arguments,",")))}var origPolymer=window["Polymer"];var newPolymer=function(config){if(!origPolymer._ytIntercepted&&window["Polymer"].Base){origPolymer._ytIntercepted=true;window["Polymer"].Base._getExtendedNativePrototype=_getExtendedNativePrototype;window["Polymer"].Base._error=handlePolymerError;window["Polymer"].Base._warn=handlePolymerError}return origPolymer.apply(this,
arguments)};var origDescriptor=Object.getOwnPropertyDescriptor(window,"Polymer");Object.defineProperty(window,"Polymer",{set:function(p){if(origDescriptor&&origDescriptor.set&&origDescriptor.get){origDescriptor.set(p);origPolymer=origDescriptor.get()}else origPolymer=p;if(typeof origPolymer==="function")Object.defineProperty(window,"Polymer",{value:origPolymer,configurable:true,enumerable:true,writable:true})},get:function(){return typeof origPolymer==="function"?newPolymer:origPolymer},configurable:true,
enumerable:true})})();}).call(this);
</script><script nonce="oAuyCnL9WzPQrJbIFKUAbw">window.Polymer=window.Polymer||{};window.Polymer.legacyOptimizations=true;window.Polymer.setPassiveTouchGestures=true;window.ShadyDOM={force:true,preferPerformance:true,noPatch:true};
window.ShadyCSS = {disableRuntime: true};</script><link rel="shortcut icon" href="https://www.youtube.com/s/desktop/65defdc1/img/favicon.ico" type="image/x-icon"><link rel="icon" href="https://www.youtube.com/s/desktop/65defdc1/img/favicon_32x32.png" sizes="32x32"><link rel="icon" href="https://www.youtube.com/s/desktop/65defdc1/img/favicon_48x48.png" sizes="48x48"><link rel="icon" href="https://www.youtube.com/s/desktop/65defdc1/img/favicon_96x96.png" sizes="96x96"><link rel="icon" href="https://www.youtube.com/s/desktop/65defdc1/img/favicon_144x144.png" sizes="144x144"><script nonce="oAuyCnL9WzPQrJbIFKUAbw">var ytcsi={gt:function(n){n=(n||"")+"data_";return ytcsi[n]||(ytcsi[n]={tick:{},info:{}})},now:window.performance&&window.performance.timing&&window.performance.now&&window.performance.timing.navigationStart?function(){return window.performance.timing.navigationStart+window.performance.now()}:function(){return(new Date).getTime()},tick:function(l,t,n){var ticks=ytcsi.gt(n).tick;var v=t||ytcsi.now();if(ticks[l]){ticks["_"+l]=ticks["_"+l]||[ticks[l]];ticks["_"+l].push(v)}ticks[l]=v},info:function(k,
v,n){ytcsi.gt(n).info[k]=v},setStart:function(s,t,n){ytcsi.info("yt_sts",s,n);ytcsi.tick("_start",t,n)}};
(function(w,d){ytcsi.setStart("dhs",w.performance?w.performance.timing.responseStart:null);var isPrerender=(d.visibilityState||d.webkitVisibilityState)=="prerender";var vName=!d.visibilityState&&d.webkitVisibilityState?"webkitvisibilitychange":"visibilitychange";if(isPrerender){ytcsi.info("prerender",1);var startTick=function(){ytcsi.setStart("dhs");d.removeEventListener(vName,startTick)};d.addEventListener(vName,startTick,false)}if(d.addEventListener)d.addEventListener(vName,function(){ytcsi.tick("vc")},
false);function isGecko(){if(!w.navigator)return false;try{if(w.navigator.userAgentData&&w.navigator.userAgentData.brands&&w.navigator.userAgentData.brands.length){var brands=w.navigator.userAgentData.brands;for(var i=0;i<brands.length;i++)if(brands[i]&&brands[i].brand==="Firefox")return true;return false}}catch(e){setTimeout(function(){throw e;})}if(!w.navigator.userAgent)return false;var ua=w.navigator.userAgent;return ua.indexOf("Gecko")>0&&ua.toLowerCase().indexOf("webkit")<0&&ua.indexOf("Edge")<
0&&ua.indexOf("Trident")<0&&ua.indexOf("MSIE")<0}if(isGecko()){var isHidden=(d.visibilityState||d.webkitVisibilityState)=="hidden";if(isHidden)ytcsi.tick("vc")}var slt=function(el,t){setTimeout(function(){var n=ytcsi.now();el.loadTime=n;if(el.slt)el.slt()},t)};w.__ytRIL=function(el){if(!el.getAttribute("data-thumb"))if(w.requestAnimationFrame)w.requestAnimationFrame(function(){slt(el,0)});else slt(el,16)}})(window,document);
</script><link rel="preload" href="https://i.ytimg.com/generate_204" as="fetch"><link as="script" rel="preload" href="https://www.youtube.com/s/desktop/65defdc1/jsbin/desktop_polymer_ambiguate_properties.vflset/desktop_polymer_ambiguate_properties.js" nonce="oAuyCnL9WzPQrJbIFKUAbw"><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/web-animations-next-lite.min.vflset/web-animations-next-lite.min.js" nonce="oAuyCnL9WzPQrJbIFKUAbw"></script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/custom-elements-es5-adapter.vflset/custom-elements-es5-adapter.js" nonce="oAuyCnL9WzPQrJbIFKUAbw"></script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/webcomponents-sd.vflset/webcomponents-sd.js" nonce="oAuyCnL9WzPQrJbIFKUAbw"></script><script nonce="oAuyCnL9WzPQrJbIFKUAbw">if (window.ytcsi) {window.ytcsi.tick('lpcs', null, '');}</script><script nonce="oAuyCnL9WzPQrJbIFKUAbw">(function() {window.ytplayer={};
ytcfg.set({"CLIENT_CANARY_STATE":"none","DEVICE":"cbr\u003dSafari\u0026cbrand\u003dapple\u0026cbrver\u003d14.1.1\u0026ceng\u003dWebKit\u0026cengver\u003d605.1.15\u0026cos\u003dMacintosh\u0026cosver\u003d10_15_7\u0026cplatform\u003dDESKTOP\u0026cyear\u003d2013","DISABLE_YT_IMG_DELAY_LOADING":false,"ELEMENT_POOL_DEFAULT_CAP":75,"EVENT_ID":"M9MQYZClMoid8gP7vLuwBg","EXPERIMENT_FLAGS":{"spf_kevlar_assume_chunked":true,"enable_memberships_and_purchases":true,"live_chat_attestation_signal":true,"kevlar_playlist_autonav_loop_fix":true,"kevlar_collect_battery_network_status":true,"kevlar_op_infra":true,"enable_button_behavior_reuse":true,"kevlar_snap_state_refresh":true,"kevlar_disable_background_prefetch":true,"web_player_watch_next_response":true,"is_mweb_wexit_main_launch":true,"kevlar_tuner_run_default_comments_delay":true,"flush_gel":true,"cache_visitor_cookie_before_consent":true,"kevlar_playback_associated_queue":true,"web_offline_promo_via_get_player":true,"kevlar_playlist_responsive":true,"clear_visitor_id_in_ytconfig_before_consent":true,"kevlar_log_initial_screen":true,"web_favicon_image_update":true,"kevlar_passive_event_listeners":true,"html5_pacf_enable_dai":true,"web_prs_testing_mode_killswitch":true,"kevlar_command_handler_toggle_buttons":true,"kevlar_guide_ajax_migration":true,"kevlar_include_query_in_search_endpoint":true,"kevlar_larger_three_dot_tap":true,"kevlar_typography_spacing_update":true,"kevlar_rendererstamper_event_listener":true,"enable_gel_log_commands":true,"enable_microformat_data":true,"kevlar_voice_search":true,"desktop_fix_carousel_video_timeout":true,"kevlar_frontend_queue_recover":true,"kevlar_client_save_subs_preferences":true,"kevlar_transcript_panel_refreshed_styles":true,"enable_polymer_resin_migration":true,"kevlar_watch_js_panel_height":true,"live_chat_unicode_emoji_skintone_update":true,"kevlar_one_pick_add_video_to_playlist":true,"kevlar_set_internal_player_size":true,"enable_programmed_playlist_color_sample":true,"kevlar_home_skeleton":true,"kevlar_enable_reorderable_playlists":true,"kevlar_miniplayer_queue_user_activation":true,"offline_error_handling":true,"desktop_mic_background":true,"kevlar_decorate_endpoint_with_onesie_config":true,"disable_simple_mixed_direction_formatted_strings":true,"is_part_of_any_user_engagement_experiment":true,"no_cookie_before_consent":true,"kevlar_collect_hover_touch_support":true,"kevlar_fluid_touch_scroll":true,"kevlar_player_disable_rvs_update":true,"desktop_suggest_dropdown_fix":true,"kevlar_guide_store":true,"kevlar_updated_logo_icons":true,"kevlar_hide_playlist_playback_status":true,"ytidb_stop_transaction_commit":true,"screen_manager_log_servlet_ei":true,"enable_ytc_refunds_submit_form_signal_action":true,"kevlar_mealbar_above_player":true,"disable_child_node_auto_formatted_strings":true,"kevlar_enable_parent_tools_integration":true,"kevlar_update_youtube_sans":true,"enable_web_ketchup_hero_animation":true,"kevlar_shell_for_downloads_page":true,"enable_client_streamz_web":true,"kevlar_miniplayer":true,"kevlar_miniplayer_set_watch_next":true,"kevlar_app_initializer_cleanup":true,"searchbox_reporting":true,"kevlar_resolve_playlist_endpoint_as_watch_endpoint":true,"nwl_sw_health_payloads":true,"kevlar_populate_command_on_download_button":true,"player_allow_autonav_after_playlist":true,"kevlar_watch_next_chips_continuations_migration":true,"cb_use_v2_filler":true,"kevlar_copy_playlist":true,"kevlar_gel_error_routing":true,"web_forward_command_on_pbj":true,"kevlar_logged_out_topbar_menu_migration":true,"check_user_lact_at_prompt_shown_time_on_web":true,"kevlar_hide_time_continue_url_param":true,"enable_business_email_reveal_servlet_migration":true,"kevlar_topbar_logo_fallback_home":true,"kevlar_no_url_params":true,"kevlar_miniplayer_expand_top":true,"kevlar_channel_trailer_multi_attach":true,"kevlar_transcript_engagement_panel":true,"desktop_swipeable_guide":true,"kevlar_miniplayer_play_pause_on_scrim":true,"kevlar_player_response_swf_config_wrapper_killswitch":true,"autoescape_tempdata_url":true,"networkless_gel":true,"web_visitorid_in_datasync":true,"kevlar_cache_on_ttl":true,"web_clean_sw_logs_store":true,"web_log_player_watch_next_ticks":true,"kevlar_continue_playback_without_player_response":true,"web_dedupe_ve_grafting":true,"live_chat_show_ongoing_poll_results_in_banner":true,"kevlar_variable_youtube_sans":true,"desktop_add_to_playlist_renderer_dialog_popup":true,"kevlar_allow_playlist_reorder":true,"nwl_send_fast_on_unload":true,"pdg_disable_web_super_vod_explicit_click_logging":true,"kevlar_woffle_dl_manager":true,"web_enable_ad_signals_in_it_context":true,"use_screen_manager_util":true,"deprecate_pair_servlet_enabled":true,"disable_signout_supex_users":true,"kevlar_disable_formatted_string_empty_style_class":true,"desktop_mix_use_sampled_color_for_bottom_bar_search":true,"fill_web_player_context_config":true,"botguard_periodic_refresh":true,"record_app_crashed_web":true,"kevlar_dragdrop_fast_scroll":true,"kevlar_use_response_Line truncated
setMessage({"ADDED_TO_QUEUE":"Added to queue","ADD_TO_DROPDOWN_LABEL":"Save to...","AD_BADGE_TEXT":"Ad","APPLAUD_FOR_X":"Applaud for $amount","BACK_ALT_LABEL":"Back","CANCEL":"Cancel","CHECK_CONNECTION_OR_DOWNLOADS":"Please check your connection or watch your downloaded videos.","CLEAR":"Clear","CONNECT_TO_THE_INTERNET":"Connect to the internet","CONTINUE_WATCHING":"Continue watching","DELETE":"Delete","DELETE_ALL_DOWNLOADS_PROMPT":"Delete all downloads?","DELETE_FROM_DOWNLOADS":"Remove from downloads","DESCRIPTION":"Description","DOWNLOAD":"Download","DOWNLOADED":"Downloaded","DOWNLOADING":"Downloading","DOWNLOADING_PERCENT":"Downloading... $percent%","DOWNLOADS":"Downloads","DOWNLOADS_AVAILABILITY":"Downloads remain available as long as your device has an active internet connection at least once every 30 days.","DOWNLOADS_SETTINGS":"Downloads Settings","DOWNLOAD_QUALITY":"Download Quality","DO_NOT_HAVE_DOWNLOADS":"You do not have any downloads","EDIT_AVATAR_LABEL":"Edit profile picture","EDU_GOT_IT":"Got It","ENTER_DATE_OR_EARLIER":"Enter $allowed_date or earlier","ENTER_DATE_OR_LATER":"Enter $allowed_date or later","FREEBIE_JOIN_MEMBERSHIP_EDU_TEXT":"This channel offers a membership which you can join for free with YouTube Premium","GO_TO_DOWNLOADS":"Go to downloads","GUIDE_ALT_LABEL":"Guide","IMAGE_HORIZONTAL_POSITION_LABEL":"The center of the preview is $x_percent% from the left and $y_percent% from the right.","IMAGE_VERTICAL_POSITION_LABEL":"The center of the preview is $x_percent% from the top and $y_percent% from the bottom.","INVALID_DATE_ERROR":"Invalid Date","JOIN_MEMBERSHIP_EDU_TEXT":"Get access to exclusive perks when you purchase a membership to this channel.","JOIN_MEMBERSHIP_EDU_TITLE":"Membership","KEEP_OPEN":"Keep this window open to continue","LIBRARY_GUIDE_ITEM_EDU_TEXT":"Find your history, playlists, purchases, and more","LIBRARY_GUIDE_ITEM_EDU_TITLE":"Check out your new Library","LOCAL_TIME_LABEL":"Local Time","LOGO_ALT_LABEL":"YouTube Home","MANAGE_MEMBERSHIP_EDU_TEXT":"Access your benefits and manage your membership from here.","MENTIONS_EDU_TEXT":"Go to the Help Center to see how mentions work on YouTube.","MENTIONS_EDU_TITLE":"Learn more","MINIPLAYER_CLOSE":"Close player","MINIPLAYER_COLLAPSE_LABEL":"Collapse","MINIPLAYER_EXPAND_LABEL":"Expand","NO_ANGLE_BRACKET_LABEL":"Playlist title cannot contain \u003c or \u003e","NO_DOWNLOADS":"No downloads","NO_INTERNET_CONNECTION":"No internet connection","OFFLINE_CHECK_CONNECTION":"You\u0027re offline. Check your connection.","PLAYER_LABEL_MUTE":"Mute (m)","PLAYER_LABEL_PAUSE":"Pause (k)","PLAYER_LABEL_PLAY":"Play (k)","PLAYER_LABEL_UNMUTE":"Unmute (m)","QUEUE":"Queue","QUEUE_CLEARED":"{count,plural, \u003d1{1 video in the queue removed}other{# videos in the queue removed}}","QUEUE_CLEARED_UNPLURALIZED":"Queue cleared","QUEUE_CLOSE_MINIPLAYER_CONFIRM_BODY_TEXT":"Are you sure you want to close the player?","QUEUE_CLOSE_MINIPLAYER_CONFIRM_TITLE":"Queue will be cleared","QUEUE_RECOVER_BUTTON":"Restore","QUEUE_RECOVER_MESSAGE":"Recover queue","REACH_BOTTOM_OF_IMAGE_TEXT":"You have reached the bottom of the image","REACH_LEFT_OF_IMAGE_TEXT":"You have reached the left of the image","REACH_RIGHT_OF_IMAGE_TEXT":"You have reached the right of the image","REACH_TOP_OF_IMAGE_TEXT":"You have reached the top of the image","REMEMBER_MY_SETTINGS":"Remember my settings","REPOSITION_IMAGE_HORIZONTALLY_LABEL":"Use left and right arrow keys to reposition the preview","REPOSITION_IMAGE_VERTICALLY_LABEL":"Use up and down arrow keys to reposition the preview","REQUIRED_LABEL":"Required","RETRY":"Retry","SBOX_INAPPROPRIATE_ADDITIONAL":"Provide additional details (optional)","SBOX_INAPPROPRIATE_CANCEL":"Cancel","SBOX_INAPPROPRIATE_CATEGORY":"The selected predictions are:","SBOX_INAPPROPRIATE_DANGEROUS":"Dangerous and harmful activity","SBOX_INAPPROPRIATE_EXPLICIT":"Sexually explicit","SBOX_INAPPROPRIATE_HATEFUL":"Hateful","SBOX_INAPPROPRIATE_OTHER":"Other","SBOX_INAPPROPRIATE_PROMPT":"Report search predictions","SBOX_INAPPROPRIATE_REASON":"Reason (required)","SBOX_INAPPROPRIATE_REPORT":"Report","SBOX_INAPPROPRIATE_SUBMIT":"Submit","SBOX_INAPPROPRIATE_SUGGESTIONS":"Select predictions you would like to report:","SBOX_INAPPROPRIATE_TITLE":"Report search predictions","SBOX_INAPPROPRIATE_TOAST":"Thanks for your feedback!","SBOX_INAPPROPRIATE_VIOLENT":"Violent","SBOX_PLACEHOLDER":"Search","SBOX_VOICE_OVERLAY_PLACEHOLDER":"Listening...","SHARE_LABEL":"Share","SHARE_POST_EDU_TEXT":"Now you can share posts on YouTube","SHOW_LESS":"Show less","SHOW_MORE":"Show more","SIGN_IN_LABEL":"Sign in","SUBS_FILTER_EDU_CHANNEL_TEXT":"Now showing new videos from this channel.","SUBS_FILTER_EDU_TEXT":"See new videos from each channel","SUBS_GUIDE_ITEM_EDU_TEXT":"See new videos from all of your subscriptions","TIMEZONE_FORMAT":"($utc_offset_text) $city_name","TRANSFER_FAILED":"Download failed","TRY_AGAIN_LATER":"Something went wrong. Please try again later.","UNDO":"Undo","UTC_OFFSET_FLine truncated
</script><script nonce="oAuyCnL9WzPQrJbIFKUAbw">if (window.ytcsi) {window.ytcsi.tick('lpcf', null, '');}</script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/scheduler.vflset/scheduler.js" nonce="oAuyCnL9WzPQrJbIFKUAbw"></script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/www-i18n-constants-en_US.vflset/www-i18n-constants.js" nonce="oAuyCnL9WzPQrJbIFKUAbw"></script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/www-tampering.vflset/www-tampering.js" nonce="oAuyCnL9WzPQrJbIFKUAbw"></script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/spf.vflset/spf.js" nonce="oAuyCnL9WzPQrJbIFKUAbw"></script><script nonce="oAuyCnL9WzPQrJbIFKUAbw">if(window["_spf_state"])window["_spf_state"].config={"assume-all-json-requests-chunked":true};
</script><script src="https://www.youtube.com/s/desktop/65defdc1/jsbin/network.vflset/network.js" nonce="oAuyCnL9WzPQrJbIFKUAbw"></script><script nonce="oAuyCnL9WzPQrJbIFKUAbw">if (window.ytcsi) {window.ytcsi.tick('csl', null, '');}</script><link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=YouTube+Sans:wght@300..900&display=swap" nonce="tn0wNhJlb9YAcpiSoKXqVA"><script name="www-roboto" nonce="oAuyCnL9WzPQrJbIFKUAbw">if (document.fonts && document.fonts.load) {document.fonts.load("400 10pt Roboto", ""); document.fonts.load("500 10pt Roboto", "");}</script><link rel="stylesheet" href="https://www.youtube.com/s/desktop/65defdc1/cssbin/www-onepick.css" nonce="tn0wNhJlb9YAcpiSoKXqVA"><style class="global_styles" nonce="tn0wNhJlb9YAcpiSoKXqVA">body{padding:0;margin:0;overflow-y:scroll}body.autoscroll{overflow-y:auto}body.no-scroll{overflow:hidden}body.no-y-scroll{overflow-y:hidden}.hidden{display:none}textarea{--paper-input-container-input_-_white-space:pre-wrap}.grecaptcha-badge{visibility:hidden}</style><style class="masthead_shell" nonce="tn0wNhJlb9YAcpiSoKXqVA">ytd-masthead.shell{background:rgba(255,255,255,0.98);position:fixed;top:0;right:0;left:0;display:-ms-flex;display:-webkit-flex;display:flex;height:56px;-ms-flex-align:center;-webkit-align-items:center;align-items:center}ytd-masthead.shell #menu-icon{margin-left:16px}ytd-app>ytd-masthead.chunked{position:fixed;top:0;width:100%}ytd-masthead.shell.dark,ytd-masthead.shell.theater{background:rgba(40,40,40,0.98)}ytd-masthead.shell.full-window-mode{background:rgba(40,40,40,0.98);opacity:0;transform:translateY(calc(-100% - 5px))}ytd-masthead.shell>*:first-child{padding-left:16px}ytd-masthead.shell>*:last-child{padding-right:16px}ytd-masthead #masthead-logo{display:-ms-flex;display:-webkit-flex;display:flex}ytd-masthead #masthead-logo #country-code{margin-right:2px}ytd-masthead.shell #yt-logo-updated-svg,ytd-masthead.shell #yt-logo-red-updated-svg,ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{align-self:center;margin-left:8px;padding:0;color:black}ytd-masthead.shell #a11y-skip-nav{display:none}ytd-masthead.shell svg{width:40px;height:40px;padding:8px;margin-right:8px;box-sizing:border-box;color:#606060;fill:currentColor}ytd-masthead .external-icon{width:24px;height:24px}ytd-masthead .yt-icons-ext{fill:currentColor;color:#606060}ytd-masthead.shell.dark .yt-icons-ext ytd-masthead.shell.theater .yt-icons-ext{fill:#ffffff}ytd-masthead svg#yt-logo-svg{width:80px}ytd-masthead svg#yt-logo-red-svg{width:106.4px}ytd-masthead svg#yt-logo-updated-svg{width:90px}ytd-masthead svg#yt-logo-red-updated-svg{width:97px}@media (max-width:656px){ytd-masthead.shell>*:first-child{padding-left:8px}ytd-masthead.shell>*:last-child{padding-right:8px}ytd-masthead.shell svg{margin-right:0}ytd-masthead #masthead-logo{-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{margin-left:4px}}@media (min-width:876px){ytd-masthead #masthead-logo{width:129px}}#masthead-skeleton-icons{display:flex;flex:1;flex-direction:row;justify-content:flex-end}ytd-masthead.masthead-finish #masthead-skeleton-icons{display:none}.masthead-skeleton-icon{border-radius:50%;height:32px;width:32px;margin:0 8px;background-color:hsl(0,0%,89%)}ytd-masthead.dark .masthead-skeleton-icon{background-color:hsl(0,0%,16%)}</style><style class="masthead_custom_styles" is="custom-style" id="ext-styles" nonce="tn0wNhJlb9YAcpiSoKXqVA">ytd-masthead .yt-icons-ext{color:var(--yt-spec-icon-active-other)}ytd-masthead svg#yt-logo-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-updated-svg #youtube-red-paths path{fill:#282828}ytd-masthead.dark svg#yt-logo-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead.dark svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-updated-svg #youtube-red-paths path,ytd-masthead.theater svg#yt-logo-svg #youtube-paths path,ytd-masthead.theater svg#yt-logo-red-svg #youtube-red-paths path{fill:rgb(255,255,255)}</style><style class="searchbox" nonce="tn0wNhJlb9YAcpiSoKXqVA">#search-input.ytd-searchbox-spt input{-webkit-appearance:none;-webkit-font-smoothing:antialiased;background-color:transparent;border:none;box-shadow:none;color:inherit;font-family:'Roboto','Noto',sans-serif;font-size:16px;font-weight:400;line-height:24px;margin-left:4px;max-width:100%;outline:none;text-align:inherit;width:100%;-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}#search-container.ytd-searchbox-spt{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}#search-input.ytd-searchbox-spt #search::-webkit-input-placeholder{color:hsl(0,0%,53.3%)}#search-input.ytd-searchbox-spt #search::-moLine truncated
+34
View File
@@ -0,0 +1,34 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex00.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:02:50 by tkondrac #+# #+# */
/* Updated: 2021/08/08 17:02:48 by tkondrac ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "../ex00/ft_strcpy.c"
int main(void)
{
char s[42];
char *d;
char *r;
d = (char*)malloc(43 * sizeof(char));
printf("Enter string (max 42 char): ");
scanf("%s", s);
r = ft_strcpy(d, s);
printf("destination : %s | return : %s\n", d, r);
free(d);
d = (char*)malloc(43 * sizeof(char));
printf("strcpy : %s\n", strcpy(d, s));
free(d);
return(0);
}
+57
View File
@@ -0,0 +1,57 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex01.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:03:03 by tkondrac #+# #+# */
/* Updated: 2021/08/08 16:59:55 by tkondrac ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include "../ex01/ft_strncpy.c"
#include "rand_string.c"
int ft_test(char *src, unsigned int l);
int main(void)
{
ft_test("0123456789", 15);
ft_test("test", 8);
ft_test("0123456789" , 3);
ft_test("un autre test" , 0);
return (0);
}
int ft_test(char *src, unsigned int l)
{
char *dest;
char *dest2;
int i;
i = 0;
dest = (char*)malloc(11 * sizeof(char));
while(i < 10)
{
*(dest + i) = '0';
i++;
}
*(dest + i) = '\0';
dest2 = ft_strncpy(dest, src, l);
printf("-------------\nTest\nsrc string : %s | copy lenght : %u\ndest string : %s | output string : %s\n", src, l, dest, dest2);
// Strncpy tests
while(i < 10)
{
*(dest + i) = '0';
i++;
}
*(dest + i) = '\0';
dest2 = strncpy(dest, src, l);
printf("TEST string : %s | output TEST : %s\n", dest, dest2);
free(dest);
return (0);
}
+26
View File
@@ -0,0 +1,26 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex02.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:03:45 by tkondrac #+# #+# */
/* Updated: 2021/08/08 15:03:53 by tkondrac ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include "../ex02/ft_str_is_alpha.c"
int main(void)
{
char c[42];
while(1)
{
scanf("%s", c);
printf("is alpha ? : %d\n", ft_str_is_alpha(c));
}
return (0);
}
+26
View File
@@ -0,0 +1,26 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex03.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:03:58 by tkondrac #+# #+# */
/* Updated: 2021/08/08 15:04:00 by tkondrac ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include "../ex03/ft_str_is_numeric.c"
int main(void)
{
char c[42];
while(1)
{
scanf("%s", c);
printf("is numeric ? : %d\n", ft_str_is_numeric(c));
}
return (0);
}
+26
View File
@@ -0,0 +1,26 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex04.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:07:35 by tkondrac #+# #+# */
/* Updated: 2021/08/08 15:11:12 by tkondrac ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include "../ex04/ft_str_is_lowercase.c"
int main(void)
{
char c[42];
while(1)
{
scanf("%s", c);
printf("is lowercase ? : %d\n", ft_str_is_lowercase(c));
}
return (0);
}
+26
View File
@@ -0,0 +1,26 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex05.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:13:08 by tkondrac #+# #+# */
/* Updated: 2021/08/08 15:13:13 by tkondrac ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include "../ex05/ft_str_is_uppercase.c"
int main(void)
{
char c[42];
while(1)
{
scanf("%s", c);
printf("is uppercase ? : %d\n", ft_str_is_uppercase(c));
}
return (0);
}
+26
View File
@@ -0,0 +1,26 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex06.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:13:19 by tkondrac #+# #+# */
/* Updated: 2021/08/08 15:13:37 by tkondrac ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include "../ex06/ft_str_is_printable.c"
int main(void)
{
char c[42];
while(1)
{
scanf("%s", c);
printf("is printable ? : %d\n", ft_str_is_printable(c));
}
return (0);
}
+26
View File
@@ -0,0 +1,26 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex07.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:13:42 by tkondrac #+# #+# */
/* Updated: 2021/08/08 15:13:47 by tkondrac ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include "../ex07/ft_strupcase.c"
int main(void)
{
char c[42];
while(1)
{
scanf("%s", c);
printf("upcased : %s\n", ft_strupcase(c));
}
return (0);
}
+26
View File
@@ -0,0 +1,26 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex08.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:13:52 by tkondrac #+# #+# */
/* Updated: 2021/08/08 15:13:55 by tkondrac ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include "../ex08/ft_strlowcase.c"
int main(void)
{
char c[42];
while(1)
{
scanf("%s", c);
printf("lowcased : %s\n", ft_strlowcase(c));
}
return (0);
}
+23
View File
@@ -0,0 +1,23 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex09.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:14:28 by tkondrac #+# #+# */
/* Updated: 2021/08/08 15:14:31 by tkondrac ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include "../ex09/ft_strcapitalize.c"
int main(void)
{
char c[] = "salut, comment tu vas ? 42mots quarante-deux; cinquante+et+un";
printf("original :%s\n", c);
printf("capitalized :%s\n", ft_strcapitalize(c));
return (0);
}
+47
View File
@@ -0,0 +1,47 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex10.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:16:23 by tkondrac #+# #+# */
/* Updated: 2021/08/11 15:01:07 by gbaconni ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include "../ex10/ft_strlcpy.c"
#include "rand_string.c"
int ft_test(unsigned int s, unsigned int d);
int main(void)
{
ft_test(15 , 8);
ft_test(8 , 15);
ft_test(10 , 2);
ft_test(5 , 0);
return (0);
}
int ft_test(unsigned int s, unsigned int d)
{
char *dest;
char *src;
unsigned int n;
size_t t;
dest = (char*)malloc(d * sizeof(char));
src = rand_string(s);
n = ft_strlcpy(dest, src, d);
printf("-------------\nTest\nsrc string : %s | dest size : %u\ndest string : %s | output size : %d\n", src, d, dest, n);
free(dest);
dest = (char*)malloc(d * sizeof(char));
t = strlcpy(dest, src, d);
printf("TEST string : %s | output TEST : %d\n", dest, n);
free(dest);
free(src);
return (0);
}
+26
View File
@@ -0,0 +1,26 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ex11.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <tkondrac@student.42lausan> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 15:48:26 by tkondrac #+# #+# */
/* Updated: 2021/08/11 16:50:37 by gbaconni ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdio.h>
#include "../ex11/ft_putstr_non_printable.c"
int main(void)
{
char c[] = "special : | speciaux : ";
c[10] = '\n';
c[25] = 14;
c[26] = 127;
printf("%s\n ------ \n", c);
ft_putstr_non_printable(c);
return (0);
}
+8
View File
@@ -0,0 +1,8 @@
#!/bin/sh
test=$1
set -e
norminette -R CheckForbiddenSourceHeader ../$test/ft_*.c
gcc -Wall -Wextra -Werror -o a.out $test.c
#gcc -o a.out $test.c
./a.out
rm -f a.out
+31
View File
@@ -0,0 +1,31 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* rand_string.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: tkondrac <marvin@42lausanne.ch> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/08/08 12:07:16 by tkondrac #+# #+# */
/* Updated: 2021/08/08 13:04:23 by tkondrac ### ########.fr */
/* */
/* ************************************************************************** */
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
char *rand_string(unsigned int size)
{
char *c;
unsigned int i;
c = (char*)malloc(size * sizeof(char));
i = 0;
srand(time(0));
while(i < size - 1)
{
*(c + i) = (rand() % 94) + 32;
i++;
}
*(c + i) = '\0';
return (c);
}
Submodule C_Piscine_C_02/tmp added at 75cf975de3.
+23
View File
@@ -0,0 +1,23 @@
#
# Copyright (c) 2021 Guy Baconniere.
#
## How to use this Makefile
#
# cd git
# mkdir ex00
# cd ex00
# make -f ../../Makefile ex00
#
clone:
@git clone git@vogsphere.42lausanne.ch:vogsphere/intra-uuid-04054325-5e96-4318-8638-2bf50d0ddf0b-3712109 git
cc:
@norminette -R CheckForbiddenSourceHeader
@gcc -Wall -Wextra -Werror -o a.out *.c
@./a.out
@rm -f a.out
all: clone
Binary file not shown.
Binary file not shown.
Submodule C_Piscine_C_03/git added at e9226f4f8a.
+21
View File
@@ -0,0 +1,21 @@
<!DOCTYPE html><html style="font-size: 10px;font-family: Roboto, Arial, sans-serif;" lang="en" typography typography-spacing><head><script nonce="cnhPX7Bk3LvCxZo+iBxF7g">var ytcfg={d:function(){return window.yt&&yt.config_||ytcfg.data_||(ytcfg.data_={})},get:function(k,o){return k in ytcfg.d()?ytcfg.d()[k]:o},set:function(){var a=arguments;if(a.length>1)ytcfg.d()[a[0]]=a[1];else for(var k in a[0])ytcfg.d()[k]=a[0][k]}};
window.ytcfg.set('EMERGENCY_BASE_URL', '\/error_204?t\x3djserror\x26level\x3dERROR\x26client.name\x3d1\x26client.version\x3d2.20210809.01.00');</script><script nonce="cnhPX7Bk3LvCxZo+iBxF7g">(function(){window.yterr=window.yterr||true;window.unhandledErrorMessages={};window.unhandledErrorCount=0;
window.onerror=function(msg,url,line,columnNumber,error){var err;if(error)err=error;else{err=new Error;err.stack="";err.message=msg;err.fileName=url;err.lineNumber=line;if(!isNaN(columnNumber))err["columnNumber"]=columnNumber}var message=String(err.message);if(!err.message||message in window.unhandledErrorMessages||window.unhandledErrorCount>=5)return;window.unhandledErrorCount+=1;window.unhandledErrorMessages[message]=true;var img=new Image;window.emergencyTimeoutImg=img;img.onload=img.onerror=function(){delete window.emergencyTimeoutImg};
var combinedLineAndColumn=err.lineNumber;if(!isNaN(err["columnNumber"]))combinedLineAndColumn+=":"+err["columnNumber"];var stack=err.stack||"";var values={"msg":message,"type":err.name,"client.params":"unhandled window error","file":err.fileName,"line":combinedLineAndColumn,"stack":stack.substr(0,500)};var thirdPartyScript=!err.fileName||err.fileName==="<anonymous>"||stack.indexOf("extension://")>=0;var replaced=stack.replace(/https:\/\/www.youtube.com\//g,"");if(replaced.match(/https?:\/\/[^/]+\//))thirdPartyScript=
true;else if(stack.indexOf("trapProp")>=0&&stack.indexOf("trapChain")>=0)thirdPartyScript=true;else if(message.indexOf("redefine non-configurable")>=0&&message.indexOf("userAgent")>=0)thirdPartyScript=true;var baseUrl=window["ytcfg"].get("EMERGENCY_BASE_URL","https://www.youtube.com/error_204?t=jserror&level=ERROR");var unsupported=message.indexOf("window.customElements is undefined")>=0;if(thirdPartyScript||unsupported)baseUrl=baseUrl.replace("level=ERROR","level=WARNING");var parts=[baseUrl];for(var key in values){var value=
values[key];if(value)parts.push(key+"="+encodeURIComponent(value))}img.src=parts.join("&")};
(function(){function _getExtendedNativePrototype(tag){var p=this._nativePrototypes[tag];if(!p){p=Object.create(this.getNativePrototype(tag));var p$=Object.getOwnPropertyNames(window["Polymer"].Base);for(var i=0,n=undefined;i<p$.length&&(n=p$[i]);i++)if(!window["Polymer"].BaseDescriptors[n])try{p[n]=window["Polymer"].Base[n]}catch(e){throw new Error("Error while copying property: "+n+". Tag is "+tag);}try{Object.defineProperties(p,window["Polymer"].BaseDescriptors)}catch(e$0){throw new Error("Polymer define property failed for "+
Object.keys(p));}this._nativePrototypes[tag]=p}return p}function handlePolymerError(msg){window.onerror(msg,window.location.href,0,0,new Error(Array.prototype.join.call(arguments,",")))}var origPolymer=window["Polymer"];var newPolymer=function(config){if(!origPolymer._ytIntercepted&&window["Polymer"].Base){origPolymer._ytIntercepted=true;window["Polymer"].Base._getExtendedNativePrototype=_getExtendedNativePrototype;window["Polymer"].Base._error=handlePolymerError;window["Polymer"].Base._warn=handlePolymerError}return origPolymer.apply(this,
arguments)};var origDescriptor=Object.getOwnPropertyDescriptor(window,"Polymer");Object.defineProperty(window,"Polymer",{set:function(p){if(origDescriptor&&origDescriptor.set&&origDescriptor.get){origDescriptor.set(p);origPolymer=origDescriptor.get()}else origPolymer=p;if(typeof origPolymer==="function")Object.defineProperty(window,"Polymer",{value:origPolymer,configurable:true,enumerable:true,writable:true})},get:function(){return typeof origPolymer==="function"?newPolymer:origPolymer},configurable:true,
enumerable:true})})();}).call(this);
</script><script nonce="cnhPX7Bk3LvCxZo+iBxF7g">window.Polymer=window.Polymer||{};window.Polymer.legacyOptimizations=true;window.Polymer.setPassiveTouchGestures=true;window.ShadyDOM={force:true,preferPerformance:true,noPatch:true};
window.ShadyCSS = {disableRuntime: true};</script><link rel="shortcut icon" href="https://www.youtube.com/s/desktop/974c4f1e/img/favicon.ico" type="image/x-icon"><link rel="icon" href="https://www.youtube.com/s/desktop/974c4f1e/img/favicon_32x32.png" sizes="32x32"><link rel="icon" href="https://www.youtube.com/s/desktop/974c4f1e/img/favicon_48x48.png" sizes="48x48"><link rel="icon" href="https://www.youtube.com/s/desktop/974c4f1e/img/favicon_96x96.png" sizes="96x96"><link rel="icon" href="https://www.youtube.com/s/desktop/974c4f1e/img/favicon_144x144.png" sizes="144x144"><script nonce="cnhPX7Bk3LvCxZo+iBxF7g">var ytcsi={gt:function(n){n=(n||"")+"data_";return ytcsi[n]||(ytcsi[n]={tick:{},info:{}})},now:window.performance&&window.performance.timing&&window.performance.now&&window.performance.timing.navigationStart?function(){return window.performance.timing.navigationStart+window.performance.now()}:function(){return(new Date).getTime()},tick:function(l,t,n){var ticks=ytcsi.gt(n).tick;var v=t||ytcsi.now();if(ticks[l]){ticks["_"+l]=ticks["_"+l]||[ticks[l]];ticks["_"+l].push(v)}ticks[l]=v},info:function(k,
v,n){ytcsi.gt(n).info[k]=v},setStart:function(s,t,n){ytcsi.info("yt_sts",s,n);ytcsi.tick("_start",t,n)}};
(function(w,d){ytcsi.setStart("dhs",w.performance?w.performance.timing.responseStart:null);var isPrerender=(d.visibilityState||d.webkitVisibilityState)=="prerender";var vName=!d.visibilityState&&d.webkitVisibilityState?"webkitvisibilitychange":"visibilitychange";if(isPrerender){ytcsi.info("prerender",1);var startTick=function(){ytcsi.setStart("dhs");d.removeEventListener(vName,startTick)};d.addEventListener(vName,startTick,false)}if(d.addEventListener)d.addEventListener(vName,function(){ytcsi.tick("vc")},
false);function isGecko(){if(!w.navigator)return false;try{if(w.navigator.userAgentData&&w.navigator.userAgentData.brands&&w.navigator.userAgentData.brands.length){var brands=w.navigator.userAgentData.brands;for(var i=0;i<brands.length;i++)if(brands[i]&&brands[i].brand==="Firefox")return true;return false}}catch(e){setTimeout(function(){throw e;})}if(!w.navigator.userAgent)return false;var ua=w.navigator.userAgent;return ua.indexOf("Gecko")>0&&ua.toLowerCase().indexOf("webkit")<0&&ua.indexOf("Edge")<
0&&ua.indexOf("Trident")<0&&ua.indexOf("MSIE")<0}if(isGecko()){var isHidden=(d.visibilityState||d.webkitVisibilityState)=="hidden";if(isHidden)ytcsi.tick("vc")}var slt=function(el,t){setTimeout(function(){var n=ytcsi.now();el.loadTime=n;if(el.slt)el.slt()},t)};w.__ytRIL=function(el){if(!el.getAttribute("data-thumb"))if(w.requestAnimationFrame)w.requestAnimationFrame(function(){slt(el,0)});else slt(el,16)}})(window,document);
</script><link rel="preload" href="https://i.ytimg.com/generate_204" as="fetch"><link as="script" rel="preload" href="https://www.youtube.com/s/desktop/974c4f1e/jsbin/desktop_polymer.vflset/desktop_polymer.js" nonce="cnhPX7Bk3LvCxZo+iBxF7g"><script src="https://www.youtube.com/s/desktop/974c4f1e/jsbin/web-animations-next-lite.min.vflset/web-animations-next-lite.min.js" nonce="cnhPX7Bk3LvCxZo+iBxF7g"></script><script src="https://www.youtube.com/s/desktop/974c4f1e/jsbin/custom-elements-es5-adapter.vflset/custom-elements-es5-adapter.js" nonce="cnhPX7Bk3LvCxZo+iBxF7g"></script><script src="https://www.youtube.com/s/desktop/974c4f1e/jsbin/webcomponents-sd.vflset/webcomponents-sd.js" nonce="cnhPX7Bk3LvCxZo+iBxF7g"></script><script nonce="cnhPX7Bk3LvCxZo+iBxF7g">if (window.ytcsi) {window.ytcsi.tick('lpcs', null, '');}</script><script nonce="cnhPX7Bk3LvCxZo+iBxF7g">(function() {window.ytplayer={};
ytcfg.set({"CLIENT_CANARY_STATE":"none","DEVICE":"cbr\u003dSafari\u0026cbrand\u003dapple\u0026cbrver\u003d14.1.1\u0026ceng\u003dWebKit\u0026cengver\u003d605.1.15\u0026cos\u003dMacintosh\u0026cosver\u003d10_15_7\u0026cplatform\u003dDESKTOP\u0026cyear\u003d2013","DISABLE_YT_IMG_DELAY_LOADING":false,"ELEMENT_POOL_DEFAULT_CAP":75,"EVENT_ID":"VFoSYf2-INfN1gKizYDQBQ","EXPERIMENT_FLAGS":{"kevlar_frontend_queue_recover":true,"botguard_periodic_refresh":true,"desktop_swipeable_guide":true,"ytidb_fetch_datasync_ids_for_data_cleanup":true,"kevlar_miniplayer":true,"cold_missing_history":true,"web_gel_timeout_cap":true,"kevlar_entities_processor":true,"condition_biscotti_fetch_on_consent_cookie_html5_clients":true,"networkless_gel":true,"live_chat_use_punctual":true,"web_api_url":true,"log_final_payload":true,"rich_grid_mini_mode":true,"kevlar_passive_event_listeners":true,"desktop_mix_use_sampled_color_for_bottom_bar_watch_next":true,"enable_ypc_spinners":true,"polymer2_polyfill_manual_flush":true,"kevlar_miniplayer_play_pause_on_scrim":true,"enable_masthead_quartile_ping_fix":true,"kevlar_continue_playback_without_player_response":true,"fill_web_player_context_config":true,"kevlar_variable_youtube_sans":true,"kevlar_droppable_prefetchable_requests":true,"kevlar_use_ytd_player":true,"kevlar_fluid_touch_scroll":true,"enable_share_panel_page_as_screen_layer":true,"kevlar_miniplayer_expand_top":true,"player_doubletap_to_seek":true,"clear_visitor_id_in_innertube_before_consent":true,"desktop_keyboard_capture_keydown_killswitch":true,"kevlar_save_queue":true,"kevlar_topbar_logo_fallback_home":true,"disable_signout_supex_users":true,"enable_service_ajax_csn":true,"kevlar_use_page_command_url":true,"kevlar_help_use_locale":true,"kevlar_masthead_store":true,"kevlar_populate_command_on_download_button":true,"kevlar_remove_prepopulator":true,"kevlar_inlined_html_templates_polymer_flags":true,"disable_simple_mixed_direction_formatted_strings":true,"kevlar_shell_for_downloads_page":true,"kevlar_player_response_swf_config_wrapper_killswitch":true,"memberships_page_continuation_migrate":true,"condition_ad_status_fetch_on_consent_cookie_html5_clients":true,"player_enable_playback_playlist_change":true,"defer_rendering_outside_visible_area":true,"kevlar_exit_fullscreen_leaving_watch":true,"kevlar_log_initial_screen":true,"web_visitorid_in_datasync":true,"serve_pdp_at_canonical_url":true,"enable_servlet_streamz":true,"suppress_error_204_logging":true,"kevlar_local_innertube_response":true,"record_app_crashed_web":true,"kevlar_no_redirect_to_classic_ks":true,"kevlar_watch_drag_handles":true,"kevlar_clear_non_displayable_url_params":true,"log_web_endpoint_to_layer":true,"use_source_element_if_present_for_actions":true,"web_offline_promo_via_get_player":true,"kevlar_eager_shell_boot_via_one_platform":true,"kevlar_ctrl_tap_fix":true,"kevlar_app_initializer_cleanup":true,"your_data_entrypoint":true,"enable_topic_channel_tabs":true,"enable_ytc_self_serve_refunds":true,"kevlar_watch_color_update":true,"kevlar_hide_playlist_playback_status":true,"desktop_mic_background":true,"skip_endpoint_param_comparison":true,"kevlar_transcript_engagement_panel":true,"kevlar_watch_next_chips_continuations_migration":true,"pdg_disable_web_super_vod_explicit_click_logging":true,"enable_yoodle":true,"should_clear_video_data_on_player_cued_unstarted":true,"web_deprecate_service_ajax_map_dependency":true,"state_machine_dynamic_events_lifecycles":true,"desktop_crisis_onebox_restyle":true,"enable_channel_creation_avatar_editing":true,"enable_names_handles_account_switcher":true,"kevlar_autofocus_menu_on_keyboard_nav":true,"kevlar_allow_multistep_video_init":true,"kevlar_update_youtube_sans":true,"kevlar_chapters_list_view_seek_by_chapter":true,"kevlar_use_page_data_will_update":true,"kevlar_scrollbar_rework":true,"desktop_search_prominent_thumbs":true,"kevlar_next_cold_on_auth_change_detected":true,"kevlar_collect_battery_network_status":true,"enable_client_streamz_web":true,"desktop_persistent_menu":true,"web_move_autoplay_video_under_chip":true,"disable_dependency_injection":true,"enable_comments_continuation_command_for_web":true,"kevlar_client_side_screens":true,"kevlar_guide_ajax_migration":true,"web_yt_config_context":true,"player_allow_autonav_after_playlist":true,"enable_servlet_errors_streamz":true,"kevlar_typography_update":true,"kevlar_web_response_context_yt_config_deprecation":true,"desktop_enable_wcr_multi_stage_canary":true,"web_response_processor_support":true,"kevlar_guide_store":true,"enable_web_poster_hover_animation":true,"use_screen_manager_util":true,"enable_offer_suppression":true,"desktop_suggest_dropdown_fix":true,"kevlar_prefetch":true,"kevlar_thumbnail_fluid":true,"kevlar_op_warm_pages":true,"web_use_overflow_menu_for_playlist_watch_panel":true,"kevlar_enable_editable_playlists":true,"live_chat_use_fetch_command":true,"networkless_logging":true,"web_log_player_watch_next_ticks":true,"enable_premium_voluntary_pause":true,"web_enable_histLine truncated
setMessage({"ADDED_TO_QUEUE":"Added to queue","ADD_TO_DROPDOWN_LABEL":"Save to...","AD_BADGE_TEXT":"Ad","APPLAUD_FOR_X":"Applaud for $amount","BACK_ALT_LABEL":"Back","CANCEL":"Cancel","CHECK_CONNECTION_OR_DOWNLOADS":"Please check your connection or watch your downloaded videos.","CLEAR":"Clear","CONNECT_TO_THE_INTERNET":"Connect to the internet","CONTINUE_WATCHING":"Continue watching","DELETE":"Delete","DELETE_ALL_DOWNLOADS_PROMPT":"Delete all downloads?","DELETE_FROM_DOWNLOADS":"Remove from downloads","DESCRIPTION":"Description","DOWNLOAD":"Download","DOWNLOADED":"Downloaded","DOWNLOADING":"Downloading","DOWNLOADING_PERCENT":"Downloading... $percent%","DOWNLOADS":"Downloads","DOWNLOADS_AVAILABILITY":"Downloads remain available as long as your device has an active internet connection at least once every 30 days.","DOWNLOADS_SETTINGS":"Downloads Settings","DOWNLOAD_QUALITY":"Download Quality","DO_NOT_HAVE_DOWNLOADS":"You do not have any downloads","EDIT_AVATAR_LABEL":"Edit profile picture","EDU_GOT_IT":"Got It","ENTER_DATE_OR_EARLIER":"Enter $allowed_date or earlier","ENTER_DATE_OR_LATER":"Enter $allowed_date or later","FREEBIE_JOIN_MEMBERSHIP_EDU_TEXT":"This channel offers a membership which you can join for free with YouTube Premium","GO_TO_DOWNLOADS":"Go to downloads","GUIDE_ALT_LABEL":"Guide","IMAGE_HORIZONTAL_POSITION_LABEL":"The center of the preview is $x_percent% from the left and $y_percent% from the right.","IMAGE_VERTICAL_POSITION_LABEL":"The center of the preview is $x_percent% from the top and $y_percent% from the bottom.","INVALID_DATE_ERROR":"Invalid Date","JOIN_MEMBERSHIP_EDU_TEXT":"Get access to exclusive perks when you purchase a membership to this channel.","JOIN_MEMBERSHIP_EDU_TITLE":"Membership","KEEP_OPEN":"Keep this window open to continue","LIBRARY_GUIDE_ITEM_EDU_TEXT":"Find your history, playlists, purchases, and more","LIBRARY_GUIDE_ITEM_EDU_TITLE":"Check out your new Library","LOCAL_TIME_LABEL":"Local Time","LOGO_ALT_LABEL":"YouTube Home","MANAGE_MEMBERSHIP_EDU_TEXT":"Access your benefits and manage your membership from here.","MENTIONS_EDU_TEXT":"Go to the Help Center to see how mentions work on YouTube.","MENTIONS_EDU_TITLE":"Learn more","MINIPLAYER_CLOSE":"Close player","MINIPLAYER_COLLAPSE_LABEL":"Collapse","MINIPLAYER_EXPAND_LABEL":"Expand","NO_ANGLE_BRACKET_LABEL":"Playlist title cannot contain \u003c or \u003e","NO_DOWNLOADS":"No downloads","NO_INTERNET_CONNECTION":"No internet connection","OFFLINE_CHECK_CONNECTION":"You\u0027re offline. Check your connection.","PLAYER_LABEL_MUTE":"Mute (m)","PLAYER_LABEL_PAUSE":"Pause (k)","PLAYER_LABEL_PLAY":"Play (k)","PLAYER_LABEL_UNMUTE":"Unmute (m)","QUEUE":"Queue","QUEUE_CLEARED":"{count,plural, \u003d1{1 video in the queue removed}other{# videos in the queue removed}}","QUEUE_CLEARED_UNPLURALIZED":"Queue cleared","QUEUE_CLOSE_MINIPLAYER_CONFIRM_BODY_TEXT":"Are you sure you want to close the player?","QUEUE_CLOSE_MINIPLAYER_CONFIRM_TITLE":"Queue will be cleared","QUEUE_RECOVER_BUTTON":"Restore","QUEUE_RECOVER_MESSAGE":"Recover queue","REACH_BOTTOM_OF_IMAGE_TEXT":"You have reached the bottom of the image","REACH_LEFT_OF_IMAGE_TEXT":"You have reached the left of the image","REACH_RIGHT_OF_IMAGE_TEXT":"You have reached the right of the image","REACH_TOP_OF_IMAGE_TEXT":"You have reached the top of the image","REMEMBER_MY_SETTINGS":"Remember my settings","REPOSITION_IMAGE_HORIZONTALLY_LABEL":"Use left and right arrow keys to reposition the preview","REPOSITION_IMAGE_VERTICALLY_LABEL":"Use up and down arrow keys to reposition the preview","REQUIRED_LABEL":"Required","RETRY":"Retry","SBOX_INAPPROPRIATE_ADDITIONAL":"Provide additional details (optional)","SBOX_INAPPROPRIATE_CANCEL":"Cancel","SBOX_INAPPROPRIATE_CATEGORY":"The selected predictions are:","SBOX_INAPPROPRIATE_DANGEROUS":"Dangerous and harmful activity","SBOX_INAPPROPRIATE_EXPLICIT":"Sexually explicit","SBOX_INAPPROPRIATE_HATEFUL":"Hateful","SBOX_INAPPROPRIATE_OTHER":"Other","SBOX_INAPPROPRIATE_PROMPT":"Report search predictions","SBOX_INAPPROPRIATE_REASON":"Reason (required)","SBOX_INAPPROPRIATE_REPORT":"Report","SBOX_INAPPROPRIATE_SUBMIT":"Submit","SBOX_INAPPROPRIATE_SUGGESTIONS":"Select predictions you would like to report:","SBOX_INAPPROPRIATE_TITLE":"Report search predictions","SBOX_INAPPROPRIATE_TOAST":"Thanks for your feedback!","SBOX_INAPPROPRIATE_VIOLENT":"Violent","SBOX_PLACEHOLDER":"Search","SBOX_VOICE_OVERLAY_PLACEHOLDER":"Listening...","SHARE_LABEL":"Share","SHARE_POST_EDU_TEXT":"Now you can share posts on YouTube","SHOW_LESS":"Show less","SHOW_MORE":"Show more","SIGN_IN_LABEL":"Sign in","SUBS_FILTER_EDU_CHANNEL_TEXT":"Now showing new videos from this channel.","SUBS_FILTER_EDU_TEXT":"See new videos from each channel","SUBS_GUIDE_ITEM_EDU_TEXT":"See new videos from all of your subscriptions","TIMEZONE_FORMAT":"($utc_offset_text) $city_name","TRANSFER_FAILED":"Download failed","TRY_AGAIN_LATER":"Something went wrong. Please try again later.","UNDO":"Undo","UTC_OFFSET_FLine truncated
</script><script nonce="cnhPX7Bk3LvCxZo+iBxF7g">if (window.ytcsi) {window.ytcsi.tick('lpcf', null, '');}</script><script src="https://www.youtube.com/s/desktop/974c4f1e/jsbin/scheduler.vflset/scheduler.js" nonce="cnhPX7Bk3LvCxZo+iBxF7g"></script><script src="https://www.youtube.com/s/desktop/974c4f1e/jsbin/www-i18n-constants-en_US.vflset/www-i18n-constants.js" nonce="cnhPX7Bk3LvCxZo+iBxF7g"></script><script src="https://www.youtube.com/s/desktop/974c4f1e/jsbin/www-tampering.vflset/www-tampering.js" nonce="cnhPX7Bk3LvCxZo+iBxF7g"></script><script src="https://www.youtube.com/s/desktop/974c4f1e/jsbin/spf.vflset/spf.js" nonce="cnhPX7Bk3LvCxZo+iBxF7g"></script><script nonce="cnhPX7Bk3LvCxZo+iBxF7g">if(window["_spf_state"])window["_spf_state"].config={"assume-all-json-requests-chunked":true};
</script><script src="https://www.youtube.com/s/desktop/974c4f1e/jsbin/network.vflset/network.js" nonce="cnhPX7Bk3LvCxZo+iBxF7g"></script><script nonce="cnhPX7Bk3LvCxZo+iBxF7g">if (window.ytcsi) {window.ytcsi.tick('csl', null, '');}</script><link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=YouTube+Sans:wght@300..900&display=swap" nonce="3DKQCws6OWHRbZZ7DT/J8A"><script name="www-roboto" nonce="cnhPX7Bk3LvCxZo+iBxF7g">if (document.fonts && document.fonts.load) {document.fonts.load("400 10pt Roboto", ""); document.fonts.load("500 10pt Roboto", "");}</script><link rel="stylesheet" href="https://www.youtube.com/s/desktop/974c4f1e/cssbin/www-onepick.css" nonce="3DKQCws6OWHRbZZ7DT/J8A"><style class="global_styles" nonce="3DKQCws6OWHRbZZ7DT/J8A">body{padding:0;margin:0;overflow-y:scroll}body.autoscroll{overflow-y:auto}body.no-scroll{overflow:hidden}body.no-y-scroll{overflow-y:hidden}.hidden{display:none}textarea{--paper-input-container-input_-_white-space:pre-wrap}.grecaptcha-badge{visibility:hidden}</style><style class="masthead_shell" nonce="3DKQCws6OWHRbZZ7DT/J8A">ytd-masthead.shell{background:rgba(255,255,255,0.98);position:fixed;top:0;right:0;left:0;display:-ms-flex;display:-webkit-flex;display:flex;height:56px;-ms-flex-align:center;-webkit-align-items:center;align-items:center}ytd-masthead.shell #menu-icon{margin-left:16px}ytd-app>ytd-masthead.chunked{position:fixed;top:0;width:100%}ytd-masthead.shell.dark,ytd-masthead.shell.theater{background:rgba(40,40,40,0.98)}ytd-masthead.shell.full-window-mode{background:rgba(40,40,40,0.98);opacity:0;transform:translateY(calc(-100% - 5px))}ytd-masthead.shell>*:first-child{padding-left:16px}ytd-masthead.shell>*:last-child{padding-right:16px}ytd-masthead #masthead-logo{display:-ms-flex;display:-webkit-flex;display:flex}ytd-masthead #masthead-logo #country-code{margin-right:2px}ytd-masthead.shell #yt-logo-updated-svg,ytd-masthead.shell #yt-logo-red-updated-svg,ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{align-self:center;margin-left:8px;padding:0;color:black}ytd-masthead.shell #a11y-skip-nav{display:none}ytd-masthead.shell svg{width:40px;height:40px;padding:8px;margin-right:8px;box-sizing:border-box;color:#606060;fill:currentColor}ytd-masthead .external-icon{width:24px;height:24px}ytd-masthead .yt-icons-ext{fill:currentColor;color:#606060}ytd-masthead.shell.dark .yt-icons-ext ytd-masthead.shell.theater .yt-icons-ext{fill:#ffffff}ytd-masthead svg#yt-logo-svg{width:80px}ytd-masthead svg#yt-logo-red-svg{width:106.4px}ytd-masthead svg#yt-logo-updated-svg{width:90px}ytd-masthead svg#yt-logo-red-updated-svg{width:97px}@media (max-width:656px){ytd-masthead.shell>*:first-child{padding-left:8px}ytd-masthead.shell>*:last-child{padding-right:8px}ytd-masthead.shell svg{margin-right:0}ytd-masthead #masthead-logo{-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{margin-left:4px}}@media (min-width:876px){ytd-masthead #masthead-logo{width:129px}}#masthead-skeleton-icons{display:flex;flex:1;flex-direction:row;justify-content:flex-end}ytd-masthead.masthead-finish #masthead-skeleton-icons{display:none}.masthead-skeleton-icon{border-radius:50%;height:32px;width:32px;margin:0 8px;background-color:hsl(0,0%,89%)}ytd-masthead.dark .masthead-skeleton-icon{background-color:hsl(0,0%,16%)}</style><style class="masthead_custom_styles" is="custom-style" id="ext-styles" nonce="3DKQCws6OWHRbZZ7DT/J8A">ytd-masthead .yt-icons-ext{color:var(--yt-spec-icon-active-other)}ytd-masthead svg#yt-logo-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-updated-svg #youtube-red-paths path{fill:#282828}ytd-masthead.dark svg#yt-logo-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead.dark svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-updated-svg #youtube-red-paths path,ytd-masthead.theater svg#yt-logo-svg #youtube-paths path,ytd-masthead.theater svg#yt-logo-red-svg #youtube-red-paths path{fill:rgb(255,255,255)}</style><style class="searchbox" nonce="3DKQCws6OWHRbZZ7DT/J8A">#search-input.ytd-searchbox-spt input{-webkit-appearance:none;-webkit-font-smoothing:antialiased;background-color:transparent;border:none;box-shadow:none;color:inherit;font-family:'Roboto','Noto',sans-serif;font-size:16px;font-weight:400;line-height:24px;margin-left:4px;max-width:100%;outline:none;text-align:inherit;width:100%;-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}#search-container.ytd-searchbox-spt{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}#search-input.ytd-searchbox-spt #search::-webkit-input-placeholder{color:hsl(0,0%,53.3%)}#search-input.ytd-searchbox-spt #search::-moLine truncated
+23
View File
@@ -0,0 +1,23 @@
#
# Copyright (c) 2021 Guy Baconniere.
#
## How to use this Makefile
#
# cd git
# mkdir ex00
# cd ex00
# make -f ../../Makefile ex00
#
clone:
@git clone git@vogsphere.42lausanne.ch:vogsphere/intra-uuid-acc6671c-36d9-4ab3-b584-e5cd3b782dc1-3717988 git
cc:
@norminette -R CheckForbiddenSourceHeader
@gcc -Wall -Wextra -Werror -o a.out *.c
@./a.out
@rm -f a.out
all: clone
Binary file not shown.
Submodule C_Piscine_C_04/git added at edd6a9c5c7.
+21
View File
@@ -0,0 +1,21 @@
<!DOCTYPE html><html style="font-size: 10px;font-family: Roboto, Arial, sans-serif;" lang="en" typography typography-spacing><head><script nonce="2ls/abv3iRvs/uVK3dQJzw">var ytcfg={d:function(){return window.yt&&yt.config_||ytcfg.data_||(ytcfg.data_={})},get:function(k,o){return k in ytcfg.d()?ytcfg.d()[k]:o},set:function(){var a=arguments;if(a.length>1)ytcfg.d()[a[0]]=a[1];else for(var k in a[0])ytcfg.d()[k]=a[0][k]}};
window.ytcfg.set('EMERGENCY_BASE_URL', '\/error_204?t\x3djserror\x26level\x3dERROR\x26client.name\x3d1\x26client.version\x3d2.20210811.00.00');</script><script nonce="2ls/abv3iRvs/uVK3dQJzw">(function(){window.yterr=window.yterr||true;window.unhandledErrorMessages={};window.unhandledErrorCount=0;
window.onerror=function(msg,url,line,columnNumber,error){var err;if(error)err=error;else{err=new Error;err.stack="";err.message=msg;err.fileName=url;err.lineNumber=line;if(!isNaN(columnNumber))err["columnNumber"]=columnNumber}var message=String(err.message);if(!err.message||message in window.unhandledErrorMessages||window.unhandledErrorCount>=5)return;window.unhandledErrorCount+=1;window.unhandledErrorMessages[message]=true;var img=new Image;window.emergencyTimeoutImg=img;img.onload=img.onerror=function(){delete window.emergencyTimeoutImg};
var combinedLineAndColumn=err.lineNumber;if(!isNaN(err["columnNumber"]))combinedLineAndColumn+=":"+err["columnNumber"];var stack=err.stack||"";var values={"msg":message,"type":err.name,"client.params":"unhandled window error","file":err.fileName,"line":combinedLineAndColumn,"stack":stack.substr(0,500)};var thirdPartyScript=!err.fileName||err.fileName==="<anonymous>"||stack.indexOf("extension://")>=0;var replaced=stack.replace(/https:\/\/www.youtube.com\//g,"");if(replaced.match(/https?:\/\/[^/]+\//))thirdPartyScript=
true;else if(stack.indexOf("trapProp")>=0&&stack.indexOf("trapChain")>=0)thirdPartyScript=true;else if(message.indexOf("redefine non-configurable")>=0&&message.indexOf("userAgent")>=0)thirdPartyScript=true;var baseUrl=window["ytcfg"].get("EMERGENCY_BASE_URL","https://www.youtube.com/error_204?t=jserror&level=ERROR");var unsupported=message.indexOf("window.customElements is undefined")>=0;if(thirdPartyScript||unsupported)baseUrl=baseUrl.replace("level=ERROR","level=WARNING");var parts=[baseUrl];for(var key in values){var value=
values[key];if(value)parts.push(key+"="+encodeURIComponent(value))}img.src=parts.join("&")};
(function(){function _getExtendedNativePrototype(tag){var p=this._nativePrototypes[tag];if(!p){p=Object.create(this.getNativePrototype(tag));var p$=Object.getOwnPropertyNames(window["Polymer"].Base);for(var i=0,n=void 0;i<p$.length&&(n=p$[i]);i++)if(!window["Polymer"].BaseDescriptors[n])try{p[n]=window["Polymer"].Base[n]}catch(e){throw new Error("Error while copying property: "+n+". Tag is "+tag);}try{Object.defineProperties(p,window["Polymer"].BaseDescriptors)}catch(e$0){throw new Error("Polymer define property failed for "+
Object.keys(p));}this._nativePrototypes[tag]=p}return p}function handlePolymerError(msg){window.onerror(msg,window.location.href,0,0,new Error(Array.prototype.join.call(arguments,",")))}var origPolymer=window["Polymer"];var newPolymer=function(config){if(!origPolymer._ytIntercepted&&window["Polymer"].Base){origPolymer._ytIntercepted=true;window["Polymer"].Base._getExtendedNativePrototype=_getExtendedNativePrototype;window["Polymer"].Base._error=handlePolymerError;window["Polymer"].Base._warn=handlePolymerError}return origPolymer.apply(this,
arguments)};var origDescriptor=Object.getOwnPropertyDescriptor(window,"Polymer");Object.defineProperty(window,"Polymer",{set:function(p){if(origDescriptor&&origDescriptor.set&&origDescriptor.get){origDescriptor.set(p);origPolymer=origDescriptor.get()}else origPolymer=p;if(typeof origPolymer==="function")Object.defineProperty(window,"Polymer",{value:origPolymer,configurable:true,enumerable:true,writable:true})},get:function(){return typeof origPolymer==="function"?newPolymer:origPolymer},configurable:true,
enumerable:true})})();}).call(this);
</script><script nonce="2ls/abv3iRvs/uVK3dQJzw">window.Polymer=window.Polymer||{};window.Polymer.legacyOptimizations=true;window.Polymer.setPassiveTouchGestures=true;window.ShadyDOM={force:true,preferPerformance:true,noPatch:true};
window.ShadyCSS = {disableRuntime: true};</script><link rel="shortcut icon" href="https://www.youtube.com/s/desktop/423319b0/img/favicon.ico" type="image/x-icon"><link rel="icon" href="https://www.youtube.com/s/desktop/423319b0/img/favicon_32x32.png" sizes="32x32"><link rel="icon" href="https://www.youtube.com/s/desktop/423319b0/img/favicon_48x48.png" sizes="48x48"><link rel="icon" href="https://www.youtube.com/s/desktop/423319b0/img/favicon_96x96.png" sizes="96x96"><link rel="icon" href="https://www.youtube.com/s/desktop/423319b0/img/favicon_144x144.png" sizes="144x144"><script nonce="2ls/abv3iRvs/uVK3dQJzw">var ytcsi={gt:function(n){n=(n||"")+"data_";return ytcsi[n]||(ytcsi[n]={tick:{},info:{}})},now:window.performance&&window.performance.timing&&window.performance.now&&window.performance.timing.navigationStart?function(){return window.performance.timing.navigationStart+window.performance.now()}:function(){return(new Date).getTime()},tick:function(l,t,n){var ticks=ytcsi.gt(n).tick;var v=t||ytcsi.now();if(ticks[l]){ticks["_"+l]=ticks["_"+l]||[ticks[l]];ticks["_"+l].push(v)}ticks[l]=v},info:function(k,
v,n){ytcsi.gt(n).info[k]=v},setStart:function(s,t,n){ytcsi.info("yt_sts",s,n);ytcsi.tick("_start",t,n)}};
(function(w,d){ytcsi.setStart("dhs",w.performance?w.performance.timing.responseStart:null);var isPrerender=(d.visibilityState||d.webkitVisibilityState)=="prerender";var vName=!d.visibilityState&&d.webkitVisibilityState?"webkitvisibilitychange":"visibilitychange";if(isPrerender){ytcsi.info("prerender",1);var startTick=function(){ytcsi.setStart("dhs");d.removeEventListener(vName,startTick)};d.addEventListener(vName,startTick,false)}if(d.addEventListener)d.addEventListener(vName,function(){ytcsi.tick("vc")},
false);function isGecko(){if(!w.navigator)return false;try{if(w.navigator.userAgentData&&w.navigator.userAgentData.brands&&w.navigator.userAgentData.brands.length){var brands=w.navigator.userAgentData.brands;for(var i=0;i<brands.length;i++)if(brands[i]&&brands[i].brand==="Firefox")return true;return false}}catch(e){setTimeout(function(){throw e;})}if(!w.navigator.userAgent)return false;var ua=w.navigator.userAgent;return ua.indexOf("Gecko")>0&&ua.toLowerCase().indexOf("webkit")<0&&ua.indexOf("Edge")<
0&&ua.indexOf("Trident")<0&&ua.indexOf("MSIE")<0}if(isGecko()){var isHidden=(d.visibilityState||d.webkitVisibilityState)=="hidden";if(isHidden)ytcsi.tick("vc")}var slt=function(el,t){setTimeout(function(){var n=ytcsi.now();el.loadTime=n;if(el.slt)el.slt()},t)};w.__ytRIL=function(el){if(!el.getAttribute("data-thumb"))if(w.requestAnimationFrame)w.requestAnimationFrame(function(){slt(el,0)});else slt(el,16)}})(window,document);
</script><link rel="preload" href="https://i.ytimg.com/generate_204" as="fetch"><link as="script" rel="preload" href="https://www.youtube.com/s/desktop/423319b0/jsbin/desktop_polymer.vflset/desktop_polymer.js" nonce="2ls/abv3iRvs/uVK3dQJzw"><script src="https://www.youtube.com/s/desktop/423319b0/jsbin/web-animations-next-lite.min.vflset/web-animations-next-lite.min.js" nonce="2ls/abv3iRvs/uVK3dQJzw"></script><script src="https://www.youtube.com/s/desktop/423319b0/jsbin/custom-elements-es5-adapter.vflset/custom-elements-es5-adapter.js" nonce="2ls/abv3iRvs/uVK3dQJzw"></script><script src="https://www.youtube.com/s/desktop/423319b0/jsbin/webcomponents-sd.vflset/webcomponents-sd.js" nonce="2ls/abv3iRvs/uVK3dQJzw"></script><script nonce="2ls/abv3iRvs/uVK3dQJzw">if (window.ytcsi) {window.ytcsi.tick('lpcs', null, '');}</script><script nonce="2ls/abv3iRvs/uVK3dQJzw">(function() {window.ytplayer={};
ytcfg.set({"CLIENT_CANARY_STATE":"none","DEVICE":"cbr\u003dSafari\u0026cbrand\u003dapple\u0026cbrver\u003d14.1.1\u0026ceng\u003dWebKit\u0026cengver\u003d605.1.15\u0026cos\u003dMacintosh\u0026cosver\u003d10_15_7\u0026cplatform\u003dDESKTOP\u0026cyear\u003d2013","DISABLE_YT_IMG_DELAY_LOADING":false,"ELEMENT_POOL_DEFAULT_CAP":75,"EVENT_ID":"DUQVYd2SPI6X-gak2IJY","EXPERIMENT_FLAGS":{"no_cookie_before_consent":true,"web_forward_command_on_pbj":true,"clear_visitor_id_in_innertube_before_consent":true,"topbar_persistent_store_fallback":true,"enable_share_panel_page_as_screen_layer":true,"disable_thumbnail_preloading":true,"kevlar_exit_fullscreen_leaving_watch":true,"offline_error_handling":true,"kevlar_watch_drag_handles":true,"kevlar_should_maintain_stable_list":true,"web_player_enable_ipp":true,"live_chat_increased_min_height":true,"kevlar_woffle_dl_manager":true,"kevlar_pandown_polyfill":true,"kevlar_droppable_prefetchable_requests":true,"kevlar_watch_navigation_clear_autoplay_count_session_data":true,"kevlar_eager_shell_boot_via_one_platform":true,"kevlar_voice_logging_fix":true,"web_inline_player_disable_scrubbing":true,"use_undefined_csn_any_layer":true,"kevlar_chapters_list_view_seek_by_chapter":true,"kevlar_decorate_endpoint_with_onesie_config":true,"web_move_autoplay_video_under_chip":true,"element_pool_populator_auto_abort":true,"kevlar_autonav_miniplayer_fix":true,"gfeedback_for_signed_out_users_enabled":true,"kevlar_keyboard_button_focus":true,"enable_premium_voluntary_pause":true,"kevlar_player_watch_endpoint_navigation":true,"enable_ypc_spinners":true,"kevlar_client_side_filler_data":true,"kevlar_standard_scrollbar_color":true,"kevlar_watch_color_update":true,"botguard_periodic_refresh":true,"kevlar_inlined_html_templates_polymer_flags":true,"kevlar_use_page_command_url":true,"cold_missing_history":true,"kevlar_next_cold_on_auth_change_detected":true,"kevlar_use_response_ttl_to_invalidate_cache":true,"kevlar_playlist_drag_handles":true,"kevlar_cancel_scheduled_comment_jobs_on_navigate":true,"nwl_sw_health_payloads":true,"kevlar_watch_increased_width_threshold":true,"pdg_disable_web_super_vod_explicit_click_logging":true,"kevlar_enable_reorderable_playlists":true,"kevlar_snap_state_refresh":true,"web_deprecate_service_ajax_map_dependency":true,"web_player_move_autonav_toggle":true,"web_hide_autonav_headline":true,"kevlar_miniplayer_set_watch_next":true,"spf_kevlar_assume_chunked":true,"kevlar_queue_use_dedicated_list_type":true,"validate_network_status":true,"player_endscreen_ellipsis_fix":true,"desktop_fix_carousel_video_timeout":true,"record_app_crashed_web":true,"kevlar_guide_ajax_migration":true,"kevlar_tuner_should_defer_detach":true,"web_use_overflow_menu_for_playlist_watch_panel":true,"skip_endpoint_param_comparison":true,"enable_post_scheduling":true,"web_api_url":true,"kevlar_collect_hover_touch_support":true,"ytidb_fetch_datasync_ids_for_data_cleanup":true,"player_allow_autonav_after_playlist":true,"kevlar_save_queue":true,"desktop_add_to_playlist_renderer_dialog_popup":true,"warm_load_nav_start_web":true,"desktop_persistent_menu":true,"kevlar_cache_on_ttl":true,"kevlar_use_ytd_player":true,"use_better_post_dismissals":true,"desktop_player_touch_gestures":true,"kevlar_typography_spacing_update":true,"kevlar_miniplayer_play_pause_on_scrim":true,"kevlar_lazy_list_resume_for_autofill":true,"kevlar_miniplayer_queue_user_activation":true,"desktop_enable_wcr_multi_stage_canary":true,"kevlar_center_search_results":true,"kevlar_service_command_check":true,"kevlar_disable_html_imports":true,"kevlar_injector":true,"kevlar_thumbnail_fluid":true,"live_chat_unicode_emoji_skintone_update":true,"kevlar_fallback_to_page_data_root_ve":true,"kevlar_update_youtube_sans":true,"kevlar_background_color_update":true,"desktop_keyboard_capture_keydown_killswitch":true,"kevlar_dropdown_fix":true,"polymer_warm_thumbnail_preload":true,"web_hide_autonav_keyline":true,"web_enable_history_cache_map":true,"kevlar_flexible_menu":true,"log_heartbeat_with_lifecycles":true,"enable_get_account_switcher_endpoint_on_webfe":true,"nwl_use_ytidb_partitioning":true,"kevlar_use_one_platform_for_queue_refresh":true,"desktop_touch_gestures_usage_log":true,"web_playlist_watch_panel_overflow_with_add_to":true,"kevlar_tuner_run_default_comments_delay":true,"web_always_load_chat_support":true,"disable_features_for_supex":true,"kevlar_enable_parent_tools_integration":true,"kevlar_touch_gesture_ves":true,"kevlar_fluid_touch_scroll":true,"is_mweb_wexit_main_launch":true,"kevlar_three_dot_ink":true,"kevlar_watch_gesture_pandown":true,"kevlar_hide_time_continue_url_param":true,"condition_biscotti_fetch_on_consent_cookie_html5_clients":true,"desktop_mix_use_sampled_color_for_bottom_bar_search":true,"is_part_of_any_user_engagement_experiment":true,"kevlar_op_watch_offline_fallback":true,"service_worker_subscribe_with_vapid_key":true,"kevlar_persistent_response_store":true,"kevlar_watch_next_chips_continuations_migration":true,"kevlar_clear_non_diLine truncated
setMessage({"ADDED_TO_QUEUE":"Added to queue","ADD_TO_DROPDOWN_LABEL":"Save to...","AD_BADGE_TEXT":"Ad","APPLAUD_FOR_X":"Applaud for $amount","BACK_ALT_LABEL":"Back","CANCEL":"Cancel","CHECK_CONNECTION_OR_DOWNLOADS":"Please check your connection or watch your downloaded videos.","CLEAR":"Clear","CONNECT_TO_THE_INTERNET":"Connect to the internet","CONTINUE_WATCHING":"Continue watching","DELETE":"Delete","DELETE_ALL_DOWNLOADS_PROMPT":"Delete all downloads?","DELETE_FROM_DOWNLOADS":"Remove from downloads","DESCRIPTION":"Description","DOWNLOAD":"Download","DOWNLOADED":"Downloaded","DOWNLOADING":"Downloading","DOWNLOADING_PERCENT":"Downloading... $percent%","DOWNLOADS":"Downloads","DOWNLOADS_AVAILABILITY":"Downloads remain available as long as your device has an active internet connection at least once every 30 days.","DOWNLOADS_SETTINGS":"Downloads Settings","DOWNLOAD_QUALITY":"Download Quality","DO_NOT_HAVE_DOWNLOADS":"You do not have any downloads","EDIT_AVATAR_LABEL":"Edit profile picture","EDU_GOT_IT":"Got It","ENTER_DATE_OR_EARLIER":"Enter $allowed_date or earlier","ENTER_DATE_OR_LATER":"Enter $allowed_date or later","FREEBIE_JOIN_MEMBERSHIP_EDU_TEXT":"This channel offers a membership which you can join for free with YouTube Premium","GO_TO_DOWNLOADS":"Go to downloads","GUIDE_ALT_LABEL":"Guide","IMAGE_HORIZONTAL_POSITION_LABEL":"The center of the preview is $x_percent% from the left and $y_percent% from the right.","IMAGE_VERTICAL_POSITION_LABEL":"The center of the preview is $x_percent% from the top and $y_percent% from the bottom.","INVALID_DATE_ERROR":"Invalid Date","JOIN_MEMBERSHIP_EDU_TEXT":"Get access to exclusive perks when you purchase a membership to this channel.","JOIN_MEMBERSHIP_EDU_TITLE":"Membership","KEEP_OPEN":"Keep this window open to continue","LIBRARY_GUIDE_ITEM_EDU_TEXT":"Find your history, playlists, purchases, and more","LIBRARY_GUIDE_ITEM_EDU_TITLE":"Check out your new Library","LOCAL_TIME_LABEL":"Local Time","LOGO_ALT_LABEL":"YouTube Home","MANAGE_MEMBERSHIP_EDU_TEXT":"Access your benefits and manage your membership from here.","MENTIONS_EDU_TEXT":"Go to the Help Center to see how mentions work on YouTube.","MENTIONS_EDU_TITLE":"Learn more","MINIPLAYER_CLOSE":"Close player","MINIPLAYER_COLLAPSE_LABEL":"Collapse","MINIPLAYER_EXPAND_LABEL":"Expand","NO_ANGLE_BRACKET_LABEL":"Playlist title cannot contain \u003c or \u003e","NO_DOWNLOADS":"No downloads","NO_INTERNET_CONNECTION":"No internet connection","OFFLINE_CHECK_CONNECTION":"You\u0027re offline. Check your connection.","PLAYER_LABEL_MUTE":"Mute (m)","PLAYER_LABEL_PAUSE":"Pause (k)","PLAYER_LABEL_PLAY":"Play (k)","PLAYER_LABEL_UNMUTE":"Unmute (m)","QUEUE":"Queue","QUEUE_CLEARED":"{count,plural, \u003d1{1 video in the queue removed}other{# videos in the queue removed}}","QUEUE_CLEARED_UNPLURALIZED":"Queue cleared","QUEUE_CLOSE_MINIPLAYER_CONFIRM_BODY_TEXT":"Are you sure you want to close the player?","QUEUE_CLOSE_MINIPLAYER_CONFIRM_TITLE":"Queue will be cleared","QUEUE_RECOVER_BUTTON":"Restore","QUEUE_RECOVER_MESSAGE":"Recover queue","REACH_BOTTOM_OF_IMAGE_TEXT":"You have reached the bottom of the image","REACH_LEFT_OF_IMAGE_TEXT":"You have reached the left of the image","REACH_RIGHT_OF_IMAGE_TEXT":"You have reached the right of the image","REACH_TOP_OF_IMAGE_TEXT":"You have reached the top of the image","REMEMBER_MY_SETTINGS":"Remember my settings","REPOSITION_IMAGE_HORIZONTALLY_LABEL":"Use left and right arrow keys to reposition the preview","REPOSITION_IMAGE_VERTICALLY_LABEL":"Use up and down arrow keys to reposition the preview","REQUIRED_LABEL":"Required","RETRY":"Retry","SBOX_INAPPROPRIATE_ADDITIONAL":"Provide additional details (optional)","SBOX_INAPPROPRIATE_CANCEL":"Cancel","SBOX_INAPPROPRIATE_CATEGORY":"The selected predictions are:","SBOX_INAPPROPRIATE_DANGEROUS":"Dangerous and harmful activity","SBOX_INAPPROPRIATE_EXPLICIT":"Sexually explicit","SBOX_INAPPROPRIATE_HATEFUL":"Hateful","SBOX_INAPPROPRIATE_OTHER":"Other","SBOX_INAPPROPRIATE_PROMPT":"Report search predictions","SBOX_INAPPROPRIATE_REASON":"Reason (required)","SBOX_INAPPROPRIATE_REPORT":"Report","SBOX_INAPPROPRIATE_SUBMIT":"Submit","SBOX_INAPPROPRIATE_SUGGESTIONS":"Select predictions you would like to report:","SBOX_INAPPROPRIATE_TITLE":"Report search predictions","SBOX_INAPPROPRIATE_TOAST":"Thanks for your feedback!","SBOX_INAPPROPRIATE_VIOLENT":"Violent","SBOX_PLACEHOLDER":"Search","SBOX_VOICE_OVERLAY_PLACEHOLDER":"Listening...","SHARE_LABEL":"Share","SHARE_POST_EDU_TEXT":"Now you can share posts on YouTube","SHOW_LESS":"Show less","SHOW_MORE":"Show more","SIGN_IN_LABEL":"Sign in","SUBS_FILTER_EDU_CHANNEL_TEXT":"Now showing new videos from this channel.","SUBS_FILTER_EDU_TEXT":"See new videos from each channel","SUBS_GUIDE_ITEM_EDU_TEXT":"See new videos from all of your subscriptions","TIMEZONE_FORMAT":"($utc_offset_text) $city_name","TRANSFER_FAILED":"Download failed","TRY_AGAIN_LATER":"Something went wrong. Please try again later.","UNDO":"Undo","UTC_OFFSET_FLine truncated
</script><script nonce="2ls/abv3iRvs/uVK3dQJzw">if (window.ytcsi) {window.ytcsi.tick('lpcf', null, '');}</script><script src="https://www.youtube.com/s/desktop/423319b0/jsbin/scheduler.vflset/scheduler.js" nonce="2ls/abv3iRvs/uVK3dQJzw"></script><script src="https://www.youtube.com/s/desktop/423319b0/jsbin/www-i18n-constants-en_US.vflset/www-i18n-constants.js" nonce="2ls/abv3iRvs/uVK3dQJzw"></script><script src="https://www.youtube.com/s/desktop/423319b0/jsbin/www-tampering.vflset/www-tampering.js" nonce="2ls/abv3iRvs/uVK3dQJzw"></script><script src="https://www.youtube.com/s/desktop/423319b0/jsbin/spf.vflset/spf.js" nonce="2ls/abv3iRvs/uVK3dQJzw"></script><script nonce="2ls/abv3iRvs/uVK3dQJzw">if(window["_spf_state"])window["_spf_state"].config={"assume-all-json-requests-chunked":true};
</script><script src="https://www.youtube.com/s/desktop/423319b0/jsbin/network.vflset/network.js" nonce="2ls/abv3iRvs/uVK3dQJzw"></script><script nonce="2ls/abv3iRvs/uVK3dQJzw">if (window.ytcsi) {window.ytcsi.tick('csl', null, '');}</script><link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=YouTube+Sans:wght@300..900&display=swap" nonce="3xdMccu3uRhkwS3co7Gmzg"><script name="www-roboto" nonce="2ls/abv3iRvs/uVK3dQJzw">if (document.fonts && document.fonts.load) {document.fonts.load("400 10pt Roboto", ""); document.fonts.load("500 10pt Roboto", "");}</script><link rel="stylesheet" href="https://www.youtube.com/s/desktop/423319b0/cssbin/www-onepick.css" nonce="3xdMccu3uRhkwS3co7Gmzg"><style class="global_styles" nonce="3xdMccu3uRhkwS3co7Gmzg">body{padding:0;margin:0;overflow-y:scroll}body.autoscroll{overflow-y:auto}body.no-scroll{overflow:hidden}body.no-y-scroll{overflow-y:hidden}.hidden{display:none}textarea{--paper-input-container-input_-_white-space:pre-wrap}.grecaptcha-badge{visibility:hidden}</style><style class="masthead_shell" nonce="3xdMccu3uRhkwS3co7Gmzg">ytd-masthead.shell{background:rgba(255,255,255,0.98);position:fixed;top:0;right:0;left:0;display:-ms-flex;display:-webkit-flex;display:flex;height:56px;-ms-flex-align:center;-webkit-align-items:center;align-items:center}ytd-masthead.shell #menu-icon{margin-left:16px}ytd-app>ytd-masthead.chunked{position:fixed;top:0;width:100%}ytd-masthead.shell.dark,ytd-masthead.shell.theater{background:rgba(40,40,40,0.98)}ytd-masthead.shell.full-window-mode{background:rgba(40,40,40,0.98);opacity:0;transform:translateY(calc(-100% - 5px))}ytd-masthead.shell>*:first-child{padding-left:16px}ytd-masthead.shell>*:last-child{padding-right:16px}ytd-masthead #masthead-logo{display:-ms-flex;display:-webkit-flex;display:flex}ytd-masthead #masthead-logo #country-code{margin-right:2px}ytd-masthead.shell #yt-logo-updated-svg,ytd-masthead.shell #yt-logo-red-updated-svg,ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{align-self:center;margin-left:8px;padding:0;color:black}ytd-masthead.shell #a11y-skip-nav{display:none}ytd-masthead.shell svg{width:40px;height:40px;padding:8px;margin-right:8px;box-sizing:border-box;color:#606060;fill:currentColor}ytd-masthead .external-icon{width:24px;height:24px}ytd-masthead .yt-icons-ext{fill:currentColor;color:#606060}ytd-masthead.shell.dark .yt-icons-ext ytd-masthead.shell.theater .yt-icons-ext{fill:#ffffff}ytd-masthead svg#yt-logo-svg{width:80px}ytd-masthead svg#yt-logo-red-svg{width:106.4px}ytd-masthead svg#yt-logo-updated-svg{width:90px}ytd-masthead svg#yt-logo-red-updated-svg{width:97px}@media (max-width:656px){ytd-masthead.shell>*:first-child{padding-left:8px}ytd-masthead.shell>*:last-child{padding-right:8px}ytd-masthead.shell svg{margin-right:0}ytd-masthead #masthead-logo{-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{margin-left:4px}}@media (min-width:876px){ytd-masthead #masthead-logo{width:129px}}#masthead-skeleton-icons{display:flex;flex:1;flex-direction:row;justify-content:flex-end}ytd-masthead.masthead-finish #masthead-skeleton-icons{display:none}.masthead-skeleton-icon{border-radius:50%;height:32px;width:32px;margin:0 8px;background-color:hsl(0,0%,89%)}ytd-masthead.dark .masthead-skeleton-icon{background-color:hsl(0,0%,16%)}</style><style class="masthead_custom_styles" is="custom-style" id="ext-styles" nonce="3xdMccu3uRhkwS3co7Gmzg">ytd-masthead .yt-icons-ext{color:var(--yt-spec-icon-active-other)}ytd-masthead svg#yt-logo-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-updated-svg #youtube-red-paths path{fill:#282828}ytd-masthead.dark svg#yt-logo-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead.dark svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-updated-svg #youtube-red-paths path,ytd-masthead.theater svg#yt-logo-svg #youtube-paths path,ytd-masthead.theater svg#yt-logo-red-svg #youtube-red-paths path{fill:rgb(255,255,255)}</style><style class="searchbox" nonce="3xdMccu3uRhkwS3co7Gmzg">#search-input.ytd-searchbox-spt input{-webkit-appearance:none;-webkit-font-smoothing:antialiased;background-color:transparent;border:none;box-shadow:none;color:inherit;font-family:'Roboto','Noto',sans-serif;font-size:16px;font-weight:400;line-height:24px;margin-left:4px;max-width:100%;outline:none;text-align:inherit;width:100%;-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}#search-container.ytd-searchbox-spt{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}#search-input.ytd-searchbox-spt #search::-webkit-input-placeholder{color:hsl(0,0%,53.3%)}#search-input.ytd-searchbox-spt #search::-moLine truncated
Binary file not shown.
+21
View File
@@ -0,0 +1,21 @@
<!DOCTYPE html><html style="font-size: 10px;font-family: Roboto, Arial, sans-serif;" lang="en" typography typography-spacing><head><script nonce="yqbVZQuYLHEhAPP0GDEHiw">var ytcfg={d:function(){return window.yt&&yt.config_||ytcfg.data_||(ytcfg.data_={})},get:function(k,o){return k in ytcfg.d()?ytcfg.d()[k]:o},set:function(){var a=arguments;if(a.length>1)ytcfg.d()[a[0]]=a[1];else for(var k in a[0])ytcfg.d()[k]=a[0][k]}};
window.ytcfg.set('EMERGENCY_BASE_URL', '\/error_204?t\x3djserror\x26level\x3dERROR\x26client.name\x3d1\x26client.version\x3d2.20210812.00.00');</script><script nonce="yqbVZQuYLHEhAPP0GDEHiw">(function(){window.yterr=window.yterr||true;window.unhandledErrorMessages={};window.unhandledErrorCount=0;
window.onerror=function(msg,url,line,columnNumber,error){var err;if(error)err=error;else{err=new Error;err.stack="";err.message=msg;err.fileName=url;err.lineNumber=line;if(!isNaN(columnNumber))err["columnNumber"]=columnNumber}var message=String(err.message);if(!err.message||message in window.unhandledErrorMessages||window.unhandledErrorCount>=5)return;window.unhandledErrorCount+=1;window.unhandledErrorMessages[message]=true;var img=new Image;window.emergencyTimeoutImg=img;img.onload=img.onerror=function(){delete window.emergencyTimeoutImg};
var combinedLineAndColumn=err.lineNumber;if(!isNaN(err["columnNumber"]))combinedLineAndColumn+=":"+err["columnNumber"];var stack=err.stack||"";var values={"msg":message,"type":err.name,"client.params":"unhandled window error","file":err.fileName,"line":combinedLineAndColumn,"stack":stack.substr(0,500)};var thirdPartyScript=!err.fileName||err.fileName==="<anonymous>"||stack.indexOf("extension://")>=0;var replaced=stack.replace(/https:\/\/www.youtube.com\//g,"");if(replaced.match(/https?:\/\/[^/]+\//))thirdPartyScript=
true;else if(stack.indexOf("trapProp")>=0&&stack.indexOf("trapChain")>=0)thirdPartyScript=true;else if(message.indexOf("redefine non-configurable")>=0&&message.indexOf("userAgent")>=0)thirdPartyScript=true;var baseUrl=window["ytcfg"].get("EMERGENCY_BASE_URL","https://www.youtube.com/error_204?t=jserror&level=ERROR");var unsupported=message.indexOf("window.customElements is undefined")>=0;if(thirdPartyScript||unsupported)baseUrl=baseUrl.replace("level=ERROR","level=WARNING");var parts=[baseUrl];for(var key in values){var value=
values[key];if(value)parts.push(key+"="+encodeURIComponent(value))}img.src=parts.join("&")};
(function(){function _getExtendedNativePrototype(tag){var p=this._nativePrototypes[tag];if(!p){p=Object.create(this.getNativePrototype(tag));var p$=Object.getOwnPropertyNames(window["Polymer"].Base);for(var i=0,n=void 0;i<p$.length&&(n=p$[i]);i++)if(!window["Polymer"].BaseDescriptors[n])try{p[n]=window["Polymer"].Base[n]}catch(e){throw new Error("Error while copying property: "+n+". Tag is "+tag);}try{Object.defineProperties(p,window["Polymer"].BaseDescriptors)}catch(e$0){throw new Error("Polymer define property failed for "+
Object.keys(p));}this._nativePrototypes[tag]=p}return p}function handlePolymerError(msg){window.onerror(msg,window.location.href,0,0,new Error(Array.prototype.join.call(arguments,",")))}var origPolymer=window["Polymer"];var newPolymer=function(config){if(!origPolymer._ytIntercepted&&window["Polymer"].Base){origPolymer._ytIntercepted=true;window["Polymer"].Base._getExtendedNativePrototype=_getExtendedNativePrototype;window["Polymer"].Base._error=handlePolymerError;window["Polymer"].Base._warn=handlePolymerError}return origPolymer.apply(this,
arguments)};var origDescriptor=Object.getOwnPropertyDescriptor(window,"Polymer");Object.defineProperty(window,"Polymer",{set:function(p){if(origDescriptor&&origDescriptor.set&&origDescriptor.get){origDescriptor.set(p);origPolymer=origDescriptor.get()}else origPolymer=p;if(typeof origPolymer==="function")Object.defineProperty(window,"Polymer",{value:origPolymer,configurable:true,enumerable:true,writable:true})},get:function(){return typeof origPolymer==="function"?newPolymer:origPolymer},configurable:true,
enumerable:true})})();}).call(this);
</script><script nonce="yqbVZQuYLHEhAPP0GDEHiw">window.Polymer=window.Polymer||{};window.Polymer.legacyOptimizations=true;window.Polymer.setPassiveTouchGestures=true;window.ShadyDOM={force:true,preferPerformance:true,noPatch:true};
window.ShadyCSS = {disableRuntime: true};</script><link rel="shortcut icon" href="https://www.youtube.com/s/desktop/303c978a/img/favicon.ico" type="image/x-icon"><link rel="icon" href="https://www.youtube.com/s/desktop/303c978a/img/favicon_32x32.png" sizes="32x32"><link rel="icon" href="https://www.youtube.com/s/desktop/303c978a/img/favicon_48x48.png" sizes="48x48"><link rel="icon" href="https://www.youtube.com/s/desktop/303c978a/img/favicon_96x96.png" sizes="96x96"><link rel="icon" href="https://www.youtube.com/s/desktop/303c978a/img/favicon_144x144.png" sizes="144x144"><script nonce="yqbVZQuYLHEhAPP0GDEHiw">var ytcsi={gt:function(n){n=(n||"")+"data_";return ytcsi[n]||(ytcsi[n]={tick:{},info:{}})},now:window.performance&&window.performance.timing&&window.performance.now&&window.performance.timing.navigationStart?function(){return window.performance.timing.navigationStart+window.performance.now()}:function(){return(new Date).getTime()},tick:function(l,t,n){var ticks=ytcsi.gt(n).tick;var v=t||ytcsi.now();if(ticks[l]){ticks["_"+l]=ticks["_"+l]||[ticks[l]];ticks["_"+l].push(v)}ticks[l]=v},info:function(k,
v,n){ytcsi.gt(n).info[k]=v},setStart:function(s,t,n){ytcsi.info("yt_sts",s,n);ytcsi.tick("_start",t,n)}};
(function(w,d){ytcsi.setStart("dhs",w.performance?w.performance.timing.responseStart:null);var isPrerender=(d.visibilityState||d.webkitVisibilityState)=="prerender";var vName=!d.visibilityState&&d.webkitVisibilityState?"webkitvisibilitychange":"visibilitychange";if(isPrerender){ytcsi.info("prerender",1);var startTick=function(){ytcsi.setStart("dhs");d.removeEventListener(vName,startTick)};d.addEventListener(vName,startTick,false)}if(d.addEventListener)d.addEventListener(vName,function(){ytcsi.tick("vc")},
false);function isGecko(){if(!w.navigator)return false;try{if(w.navigator.userAgentData&&w.navigator.userAgentData.brands&&w.navigator.userAgentData.brands.length){var brands=w.navigator.userAgentData.brands;for(var i=0;i<brands.length;i++)if(brands[i]&&brands[i].brand==="Firefox")return true;return false}}catch(e){setTimeout(function(){throw e;})}if(!w.navigator.userAgent)return false;var ua=w.navigator.userAgent;return ua.indexOf("Gecko")>0&&ua.toLowerCase().indexOf("webkit")<0&&ua.indexOf("Edge")<
0&&ua.indexOf("Trident")<0&&ua.indexOf("MSIE")<0}if(isGecko()){var isHidden=(d.visibilityState||d.webkitVisibilityState)=="hidden";if(isHidden)ytcsi.tick("vc")}var slt=function(el,t){setTimeout(function(){var n=ytcsi.now();el.loadTime=n;if(el.slt)el.slt()},t)};w.__ytRIL=function(el){if(!el.getAttribute("data-thumb"))if(w.requestAnimationFrame)w.requestAnimationFrame(function(){slt(el,0)});else slt(el,16)}})(window,document);
</script><link rel="preload" href="https://i.ytimg.com/generate_204" as="fetch"><link as="script" rel="preload" href="https://www.youtube.com/s/desktop/303c978a/jsbin/desktop_polymer.vflset/desktop_polymer.js" nonce="yqbVZQuYLHEhAPP0GDEHiw"><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/web-animations-next-lite.min.vflset/web-animations-next-lite.min.js" nonce="yqbVZQuYLHEhAPP0GDEHiw"></script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/custom-elements-es5-adapter.vflset/custom-elements-es5-adapter.js" nonce="yqbVZQuYLHEhAPP0GDEHiw"></script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/webcomponents-sd.vflset/webcomponents-sd.js" nonce="yqbVZQuYLHEhAPP0GDEHiw"></script><script nonce="yqbVZQuYLHEhAPP0GDEHiw">if (window.ytcsi) {window.ytcsi.tick('lpcs', null, '');}</script><script nonce="yqbVZQuYLHEhAPP0GDEHiw">(function() {window.ytplayer={};
ytcfg.set({"CLIENT_CANARY_STATE":"none","DEVICE":"cbr\u003dSafari\u0026cbrand\u003dapple\u0026cbrver\u003d14.1.1\u0026ceng\u003dWebKit\u0026cengver\u003d605.1.15\u0026cos\u003dMacintosh\u0026cosver\u003d10_15_7\u0026cplatform\u003dDESKTOP\u0026cyear\u003d2013","DISABLE_YT_IMG_DELAY_LOADING":false,"ELEMENT_POOL_DEFAULT_CAP":75,"EVENT_ID":"zUwWYbvMEZDf1gKptbzoBQ","EXPERIMENT_FLAGS":{"kevlar_persistent_response_store":true,"kevlar_no_autoscroll_on_playlist_hover":true,"enable_client_streamz_web":true,"pdg_disable_web_super_vod_explicit_click_logging":true,"ytidb_analyze_is_supported":true,"nwl_send_fast_on_unload":true,"kevlar_disable_background_prefetch":true,"kevlar_collect_battery_network_status":true,"desktop_add_to_playlist_renderer_dialog_popup":true,"kevlar_no_url_params":true,"enable_gel_log_commands":true,"web_favicon_image_update":true,"pes_enable_association_store":true,"kevlar_tuner_run_default_comments_delay":true,"cold_missing_history":true,"kevlar_home_skeleton_hide_later":true,"kevlar_watch_skeleton":true,"polymer2_polyfill_manual_flush":true,"kevlar_decorate_endpoint_with_onesie_config":true,"clear_visitor_id_in_ytconfig_before_consent":true,"enable_offer_suppression":true,"skip_endpoint_param_comparison":true,"nwl_trigger_throttle_after_reset":true,"web_gel_timeout_cap":true,"enable_web_ketchup_hero_animation":true,"pageid_as_header_web":true,"desktop_mix_use_sampled_color_for_bottom_bar_watch_next":true,"kevlar_command_url":true,"web_enable_history_cache_map":true,"decorate_autoplay_renderer":true,"kevlar_watch_drag_handles":true,"desktop_text_ads_gray_visurl":true,"desktop_fix_carousel_video_timeout":true,"web_offline_promo_via_get_player":true,"desktop_adjust_touch_target":true,"live_chat_use_punctual":true,"use_better_post_dismissals":true,"enable_auto_play_param_fix_for_masthead_ad":true,"web_playlist_watch_panel_overflow_with_add_to":true,"enable_streamline_repost_flow":true,"kevlar_watch_next_chips_continuations_migration":true,"kevlar_cache_on_ttl":true,"desktop_player_touch_gestures":true,"is_mweb_wexit_main_launch":true,"web_lifecycles":true,"kevlar_help_use_locale":true,"kevlar_macro_markers_keyboard_shortcut":true,"kevlar_collect_hover_touch_support":true,"kevlar_one_pick_add_video_to_playlist":true,"kevlar_save_queue":true,"kevlar_watch_js_panel_height":true,"kevlar_cancel_scheduled_comment_jobs_on_navigate":true,"rich_grid_mini_mode":true,"web_api_url":true,"kevlar_updated_logo_icons":true,"shared_pes_killswitch":true,"kevlar_fix_playlist_continuation":true,"screen_manager_log_servlet_ei":true,"disable_thumbnail_preloading":true,"browse_next_continuations_migration_playlist":true,"desktop_themeable_vulcan":true,"kevlar_enable_editable_playlists":true,"fill_web_player_context_config":true,"kevlar_woffle_dl_manager":true,"service_worker_subscribe_with_vapid_key":true,"kevlar_use_page_command_url":true,"desktop_animate_miniplayer":true,"player_enable_playback_playlist_change":true,"kevlar_player_cached_load_config":true,"kevlar_no_redirect_to_classic_ks":true,"kevlar_continue_playback_without_player_response":true,"enable_signals":true,"enable_nwl_cleaning_logic":true,"enable_names_handles_account_switcher":true,"kevlar_center_search_results":true,"web_use_overflow_menu_for_playlist_watch_panel":true,"kevlar_miniplayer_play_pause_on_scrim":true,"kevlar_app_initializer_cleanup":true,"kevlar_transcript_panel_refreshed_styles":true,"web_hide_autonav_headline":true,"defer_menus":true,"kevlar_fallback_to_page_data_root_ve":true,"web_enable_ad_signals_in_it_context":true,"kevlar_flexible_menu":true,"kevlar_client_side_screens":true,"enable_polymer_resin":true,"networkless_gel":true,"mdx_enable_privacy_disclosure_ui":true,"kevlar_clean_up":true,"nwl_throttling_race_fix":true,"kevlar_allow_queue_reorder":true,"enable_channel_creation_avatar_editing":true,"cache_visitor_cookie_before_consent":true,"kevlar_use_one_platform_for_queue_refresh":true,"web_prs_testing_mode_killswitch":true,"your_data_entrypoint":true,"no_cookie_before_consent":true,"kevlar_playlist_responsive":true,"enable_poll_choice_border_on_web":true,"kevlar_channels_player_handle_missing_swfconfig":true,"kevlar_service_command_check":true,"log_web_endpoint_to_layer":true,"desktop_text_ads_blue_cta_button":true,"kevlar_resolve_playlist_endpoint_as_watch_endpoint":true,"kevlar_scrollbar_rework":true,"use_document_lifecycles":true,"cache_utc_offset_minutes_in_pref_cookie":true,"should_clear_video_data_on_player_cued_unstarted":true,"kevlar_cache_on_ttl_browse":true,"kevlar_prepare_player_on_miniplayer_activation":true,"kevlar_update_youtube_sans":true,"mdx_load_cast_api_bootstrap_script":true,"enable_browser_cookie_status_monitoring":true,"kevlar_rendererstamper_event_listener":true,"kevlar_use_endpoint_for_channel_creation_form":true,"use_screen_manager_util":true,"kevlar_snap_state_refresh":true,"kevlar_topbar_logo_fallback_home":true,"enable_masthead_quartile_ping_fix":true,"trigger_nsm_validation_checks_with_nwl":true,"enaLine truncated
setMessage({"ADDED_TO_QUEUE":"Added to queue","ADD_TO_DROPDOWN_LABEL":"Save to...","AD_BADGE_TEXT":"Ad","APPLAUD_FOR_X":"Applaud for $amount","BACK_ALT_LABEL":"Back","CANCEL":"Cancel","CHECK_CONNECTION_OR_DOWNLOADS":"Please check your connection or watch your downloaded videos.","CLEAR":"Clear","CONNECT_TO_THE_INTERNET":"Connect to the internet","CONTINUE_WATCHING":"Continue watching","DELETE":"Delete","DELETE_ALL_DOWNLOADS_PROMPT":"Delete all downloads?","DELETE_FROM_DOWNLOADS":"Remove from downloads","DESCRIPTION":"Description","DOWNLOAD":"Download","DOWNLOADED":"Downloaded","DOWNLOADING":"Downloading","DOWNLOADING_PERCENT":"Downloading... $percent%","DOWNLOADS":"Downloads","DOWNLOADS_AVAILABILITY":"Downloads remain available as long as your device has an active internet connection at least once every 30 days.","DOWNLOADS_SETTINGS":"Downloads Settings","DOWNLOAD_QUALITY":"Download Quality","DO_NOT_HAVE_DOWNLOADS":"You do not have any downloads","EDIT_AVATAR_LABEL":"Edit profile picture","EDU_GOT_IT":"Got It","ENTER_DATE_OR_EARLIER":"Enter $allowed_date or earlier","ENTER_DATE_OR_LATER":"Enter $allowed_date or later","FREEBIE_JOIN_MEMBERSHIP_EDU_TEXT":"This channel offers a membership which you can join for free with YouTube Premium","GO_TO_DOWNLOADS":"Go to downloads","GUIDE_ALT_LABEL":"Guide","IMAGE_HORIZONTAL_POSITION_LABEL":"The center of the preview is $x_percent% from the left and $y_percent% from the right.","IMAGE_VERTICAL_POSITION_LABEL":"The center of the preview is $x_percent% from the top and $y_percent% from the bottom.","INVALID_DATE_ERROR":"Invalid Date","JOIN_MEMBERSHIP_EDU_TEXT":"Get access to exclusive perks when you purchase a membership to this channel.","JOIN_MEMBERSHIP_EDU_TITLE":"Membership","KEEP_OPEN":"Keep this window open to continue","LIBRARY_GUIDE_ITEM_EDU_TEXT":"Find your history, playlists, purchases, and more","LIBRARY_GUIDE_ITEM_EDU_TITLE":"Check out your new Library","LOCAL_TIME_LABEL":"Local Time","LOGO_ALT_LABEL":"YouTube Home","MANAGE_MEMBERSHIP_EDU_TEXT":"Access your benefits and manage your membership from here.","MENTIONS_EDU_TEXT":"Go to the Help Center to see how mentions work on YouTube.","MENTIONS_EDU_TITLE":"Learn more","MINIPLAYER_CLOSE":"Close player","MINIPLAYER_COLLAPSE_LABEL":"Collapse","MINIPLAYER_EXPAND_LABEL":"Expand","NO_ANGLE_BRACKET_LABEL":"Playlist title cannot contain \u003c or \u003e","NO_DOWNLOADS":"No downloads","NO_INTERNET_CONNECTION":"No internet connection","OFFLINE_CHECK_CONNECTION":"You\u0027re offline. Check your connection.","PLAYER_LABEL_MUTE":"Mute (m)","PLAYER_LABEL_PAUSE":"Pause (k)","PLAYER_LABEL_PLAY":"Play (k)","PLAYER_LABEL_UNMUTE":"Unmute (m)","QUEUE":"Queue","QUEUE_CLEARED":"{count,plural, \u003d1{1 video in the queue removed}other{# videos in the queue removed}}","QUEUE_CLEARED_UNPLURALIZED":"Queue cleared","QUEUE_CLOSE_MINIPLAYER_CONFIRM_BODY_TEXT":"Are you sure you want to close the player?","QUEUE_CLOSE_MINIPLAYER_CONFIRM_TITLE":"Queue will be cleared","QUEUE_RECOVER_BUTTON":"Restore","QUEUE_RECOVER_MESSAGE":"Recover queue","REACH_BOTTOM_OF_IMAGE_TEXT":"You have reached the bottom of the image","REACH_LEFT_OF_IMAGE_TEXT":"You have reached the left of the image","REACH_RIGHT_OF_IMAGE_TEXT":"You have reached the right of the image","REACH_TOP_OF_IMAGE_TEXT":"You have reached the top of the image","REMEMBER_MY_SETTINGS":"Remember my settings","REPOSITION_IMAGE_HORIZONTALLY_LABEL":"Use left and right arrow keys to reposition the preview","REPOSITION_IMAGE_VERTICALLY_LABEL":"Use up and down arrow keys to reposition the preview","REQUIRED_LABEL":"Required","RETRY":"Retry","SBOX_INAPPROPRIATE_ADDITIONAL":"Provide additional details (optional)","SBOX_INAPPROPRIATE_CANCEL":"Cancel","SBOX_INAPPROPRIATE_CATEGORY":"The selected predictions are:","SBOX_INAPPROPRIATE_DANGEROUS":"Dangerous and harmful activity","SBOX_INAPPROPRIATE_EXPLICIT":"Sexually explicit","SBOX_INAPPROPRIATE_HATEFUL":"Hateful","SBOX_INAPPROPRIATE_OTHER":"Other","SBOX_INAPPROPRIATE_PROMPT":"Report search predictions","SBOX_INAPPROPRIATE_REASON":"Reason (required)","SBOX_INAPPROPRIATE_REPORT":"Report","SBOX_INAPPROPRIATE_SUBMIT":"Submit","SBOX_INAPPROPRIATE_SUGGESTIONS":"Select predictions you would like to report:","SBOX_INAPPROPRIATE_TITLE":"Report search predictions","SBOX_INAPPROPRIATE_TOAST":"Thanks for your feedback!","SBOX_INAPPROPRIATE_VIOLENT":"Violent","SBOX_PLACEHOLDER":"Search","SBOX_VOICE_OVERLAY_PLACEHOLDER":"Listening...","SHARE_LABEL":"Share","SHARE_POST_EDU_TEXT":"Now you can share posts on YouTube","SHOW_LESS":"Show less","SHOW_MORE":"Show more","SIGN_IN_LABEL":"Sign in","SUBS_FILTER_EDU_CHANNEL_TEXT":"Now showing new videos from this channel.","SUBS_FILTER_EDU_TEXT":"See new videos from each channel","SUBS_GUIDE_ITEM_EDU_TEXT":"See new videos from all of your subscriptions","TIMEZONE_FORMAT":"($utc_offset_text) $city_name","TRANSFER_FAILED":"Download failed","TRY_AGAIN_LATER":"Something went wrong. Please try again later.","UNDO":"Undo","UTC_OFFSET_FLine truncated
</script><script nonce="yqbVZQuYLHEhAPP0GDEHiw">if (window.ytcsi) {window.ytcsi.tick('lpcf', null, '');}</script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/scheduler.vflset/scheduler.js" nonce="yqbVZQuYLHEhAPP0GDEHiw"></script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/www-i18n-constants-en_US.vflset/www-i18n-constants.js" nonce="yqbVZQuYLHEhAPP0GDEHiw"></script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/www-tampering.vflset/www-tampering.js" nonce="yqbVZQuYLHEhAPP0GDEHiw"></script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/spf.vflset/spf.js" nonce="yqbVZQuYLHEhAPP0GDEHiw"></script><script nonce="yqbVZQuYLHEhAPP0GDEHiw">if(window["_spf_state"])window["_spf_state"].config={"assume-all-json-requests-chunked":true};
</script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/network.vflset/network.js" nonce="yqbVZQuYLHEhAPP0GDEHiw"></script><script nonce="yqbVZQuYLHEhAPP0GDEHiw">if (window.ytcsi) {window.ytcsi.tick('csl', null, '');}</script><link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=YouTube+Sans:wght@300..900&display=swap" nonce="CTK/JQXDMViJkOGt5DbTwQ"><script name="www-roboto" nonce="yqbVZQuYLHEhAPP0GDEHiw">if (document.fonts && document.fonts.load) {document.fonts.load("400 10pt Roboto", ""); document.fonts.load("500 10pt Roboto", "");}</script><link rel="stylesheet" href="https://www.youtube.com/s/desktop/303c978a/cssbin/www-onepick.css" nonce="CTK/JQXDMViJkOGt5DbTwQ"><style class="global_styles" nonce="CTK/JQXDMViJkOGt5DbTwQ">body{padding:0;margin:0;overflow-y:scroll}body.autoscroll{overflow-y:auto}body.no-scroll{overflow:hidden}body.no-y-scroll{overflow-y:hidden}.hidden{display:none}textarea{--paper-input-container-input_-_white-space:pre-wrap}.grecaptcha-badge{visibility:hidden}</style><style class="masthead_shell" nonce="CTK/JQXDMViJkOGt5DbTwQ">ytd-masthead.shell{background:rgba(255,255,255,0.98);position:fixed;top:0;right:0;left:0;display:-ms-flex;display:-webkit-flex;display:flex;height:56px;-ms-flex-align:center;-webkit-align-items:center;align-items:center}ytd-masthead.shell #menu-icon{margin-left:16px}ytd-app>ytd-masthead.chunked{position:fixed;top:0;width:100%}ytd-masthead.shell.dark,ytd-masthead.shell.theater{background:rgba(40,40,40,0.98)}ytd-masthead.shell.full-window-mode{background:rgba(40,40,40,0.98);opacity:0;transform:translateY(calc(-100% - 5px))}ytd-masthead.shell>*:first-child{padding-left:16px}ytd-masthead.shell>*:last-child{padding-right:16px}ytd-masthead #masthead-logo{display:-ms-flex;display:-webkit-flex;display:flex}ytd-masthead #masthead-logo #country-code{margin-right:2px}ytd-masthead.shell #yt-logo-updated-svg,ytd-masthead.shell #yt-logo-red-updated-svg,ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{align-self:center;margin-left:8px;padding:0;color:black}ytd-masthead.shell #a11y-skip-nav{display:none}ytd-masthead.shell svg{width:40px;height:40px;padding:8px;margin-right:8px;box-sizing:border-box;color:#606060;fill:currentColor}ytd-masthead .external-icon{width:24px;height:24px}ytd-masthead .yt-icons-ext{fill:currentColor;color:#606060}ytd-masthead.shell.dark .yt-icons-ext ytd-masthead.shell.theater .yt-icons-ext{fill:#ffffff}ytd-masthead svg#yt-logo-svg{width:80px}ytd-masthead svg#yt-logo-red-svg{width:106.4px}ytd-masthead svg#yt-logo-updated-svg{width:90px}ytd-masthead svg#yt-logo-red-updated-svg{width:97px}@media (max-width:656px){ytd-masthead.shell>*:first-child{padding-left:8px}ytd-masthead.shell>*:last-child{padding-right:8px}ytd-masthead.shell svg{margin-right:0}ytd-masthead #masthead-logo{-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{margin-left:4px}}@media (min-width:876px){ytd-masthead #masthead-logo{width:129px}}#masthead-skeleton-icons{display:flex;flex:1;flex-direction:row;justify-content:flex-end}ytd-masthead.masthead-finish #masthead-skeleton-icons{display:none}.masthead-skeleton-icon{border-radius:50%;height:32px;width:32px;margin:0 8px;background-color:hsl(0,0%,89%)}ytd-masthead.dark .masthead-skeleton-icon{background-color:hsl(0,0%,16%)}</style><style class="masthead_custom_styles" is="custom-style" id="ext-styles" nonce="CTK/JQXDMViJkOGt5DbTwQ">ytd-masthead .yt-icons-ext{color:var(--yt-spec-icon-active-other)}ytd-masthead svg#yt-logo-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-updated-svg #youtube-red-paths path{fill:#282828}ytd-masthead.dark svg#yt-logo-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead.dark svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-updated-svg #youtube-red-paths path,ytd-masthead.theater svg#yt-logo-svg #youtube-paths path,ytd-masthead.theater svg#yt-logo-red-svg #youtube-red-paths path{fill:rgb(255,255,255)}</style><style class="searchbox" nonce="CTK/JQXDMViJkOGt5DbTwQ">#search-input.ytd-searchbox-spt input{-webkit-appearance:none;-webkit-font-smoothing:antialiased;background-color:transparent;border:none;box-shadow:none;color:inherit;font-family:'Roboto','Noto',sans-serif;font-size:16px;font-weight:400;line-height:24px;margin-left:4px;max-width:100%;outline:none;text-align:inherit;width:100%;-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}#search-container.ytd-searchbox-spt{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}#search-input.ytd-searchbox-spt #search::-webkit-input-placeholder{color:hsl(0,0%,53.3%)}#search-input.ytd-searchbox-spt #search::-moLine truncated
Binary file not shown.
+21
View File
@@ -0,0 +1,21 @@
<!DOCTYPE html><html style="font-size: 10px;font-family: Roboto, Arial, sans-serif;" lang="en" typography typography-spacing><head><script nonce="902biVpuvVhSx2rSCLh+VQ">var ytcfg={d:function(){return window.yt&&yt.config_||ytcfg.data_||(ytcfg.data_={})},get:function(k,o){return k in ytcfg.d()?ytcfg.d()[k]:o},set:function(){var a=arguments;if(a.length>1)ytcfg.d()[a[0]]=a[1];else for(var k in a[0])ytcfg.d()[k]=a[0][k]}};
window.ytcfg.set('EMERGENCY_BASE_URL', '\/error_204?t\x3djserror\x26level\x3dERROR\x26client.name\x3d1\x26client.version\x3d2.20210812.00.00');</script><script nonce="902biVpuvVhSx2rSCLh+VQ">(function(){window.yterr=window.yterr||true;window.unhandledErrorMessages={};window.unhandledErrorCount=0;
window.onerror=function(msg,url,line,columnNumber,error){var err;if(error)err=error;else{err=new Error;err.stack="";err.message=msg;err.fileName=url;err.lineNumber=line;if(!isNaN(columnNumber))err["columnNumber"]=columnNumber}var message=String(err.message);if(!err.message||message in window.unhandledErrorMessages||window.unhandledErrorCount>=5)return;window.unhandledErrorCount+=1;window.unhandledErrorMessages[message]=true;var img=new Image;window.emergencyTimeoutImg=img;img.onload=img.onerror=function(){delete window.emergencyTimeoutImg};
var combinedLineAndColumn=err.lineNumber;if(!isNaN(err["columnNumber"]))combinedLineAndColumn+=":"+err["columnNumber"];var stack=err.stack||"";var values={"msg":message,"type":err.name,"client.params":"unhandled window error","file":err.fileName,"line":combinedLineAndColumn,"stack":stack.substr(0,500)};var thirdPartyScript=!err.fileName||err.fileName==="<anonymous>"||stack.indexOf("extension://")>=0;var replaced=stack.replace(/https:\/\/www.youtube.com\//g,"");if(replaced.match(/https?:\/\/[^/]+\//))thirdPartyScript=
true;else if(stack.indexOf("trapProp")>=0&&stack.indexOf("trapChain")>=0)thirdPartyScript=true;else if(message.indexOf("redefine non-configurable")>=0&&message.indexOf("userAgent")>=0)thirdPartyScript=true;var baseUrl=window["ytcfg"].get("EMERGENCY_BASE_URL","https://www.youtube.com/error_204?t=jserror&level=ERROR");var unsupported=message.indexOf("window.customElements is undefined")>=0;if(thirdPartyScript||unsupported)baseUrl=baseUrl.replace("level=ERROR","level=WARNING");var parts=[baseUrl];for(var key in values){var value=
values[key];if(value)parts.push(key+"="+encodeURIComponent(value))}img.src=parts.join("&")};
(function(){function _getExtendedNativePrototype(tag){var p=this._nativePrototypes[tag];if(!p){p=Object.create(this.getNativePrototype(tag));var p$=Object.getOwnPropertyNames(window["Polymer"].Base);for(var i=0,n=void 0;i<p$.length&&(n=p$[i]);i++)if(!window["Polymer"].BaseDescriptors[n])try{p[n]=window["Polymer"].Base[n]}catch(e){throw new Error("Error while copying property: "+n+". Tag is "+tag);}try{Object.defineProperties(p,window["Polymer"].BaseDescriptors)}catch(e$0){throw new Error("Polymer define property failed for "+
Object.keys(p));}this._nativePrototypes[tag]=p}return p}function handlePolymerError(msg){window.onerror(msg,window.location.href,0,0,new Error(Array.prototype.join.call(arguments,",")))}var origPolymer=window["Polymer"];var newPolymer=function(config){if(!origPolymer._ytIntercepted&&window["Polymer"].Base){origPolymer._ytIntercepted=true;window["Polymer"].Base._getExtendedNativePrototype=_getExtendedNativePrototype;window["Polymer"].Base._error=handlePolymerError;window["Polymer"].Base._warn=handlePolymerError}return origPolymer.apply(this,
arguments)};var origDescriptor=Object.getOwnPropertyDescriptor(window,"Polymer");Object.defineProperty(window,"Polymer",{set:function(p){if(origDescriptor&&origDescriptor.set&&origDescriptor.get){origDescriptor.set(p);origPolymer=origDescriptor.get()}else origPolymer=p;if(typeof origPolymer==="function")Object.defineProperty(window,"Polymer",{value:origPolymer,configurable:true,enumerable:true,writable:true})},get:function(){return typeof origPolymer==="function"?newPolymer:origPolymer},configurable:true,
enumerable:true})})();}).call(this);
</script><script nonce="902biVpuvVhSx2rSCLh+VQ">window.Polymer=window.Polymer||{};window.Polymer.legacyOptimizations=true;window.Polymer.setPassiveTouchGestures=true;window.ShadyDOM={force:true,preferPerformance:true,noPatch:true};
window.ShadyCSS = {disableRuntime: true};</script><link rel="shortcut icon" href="https://www.youtube.com/s/desktop/303c978a/img/favicon.ico" type="image/x-icon"><link rel="icon" href="https://www.youtube.com/s/desktop/303c978a/img/favicon_32x32.png" sizes="32x32"><link rel="icon" href="https://www.youtube.com/s/desktop/303c978a/img/favicon_48x48.png" sizes="48x48"><link rel="icon" href="https://www.youtube.com/s/desktop/303c978a/img/favicon_96x96.png" sizes="96x96"><link rel="icon" href="https://www.youtube.com/s/desktop/303c978a/img/favicon_144x144.png" sizes="144x144"><script nonce="902biVpuvVhSx2rSCLh+VQ">var ytcsi={gt:function(n){n=(n||"")+"data_";return ytcsi[n]||(ytcsi[n]={tick:{},info:{}})},now:window.performance&&window.performance.timing&&window.performance.now&&window.performance.timing.navigationStart?function(){return window.performance.timing.navigationStart+window.performance.now()}:function(){return(new Date).getTime()},tick:function(l,t,n){var ticks=ytcsi.gt(n).tick;var v=t||ytcsi.now();if(ticks[l]){ticks["_"+l]=ticks["_"+l]||[ticks[l]];ticks["_"+l].push(v)}ticks[l]=v},info:function(k,
v,n){ytcsi.gt(n).info[k]=v},setStart:function(s,t,n){ytcsi.info("yt_sts",s,n);ytcsi.tick("_start",t,n)}};
(function(w,d){ytcsi.setStart("dhs",w.performance?w.performance.timing.responseStart:null);var isPrerender=(d.visibilityState||d.webkitVisibilityState)=="prerender";var vName=!d.visibilityState&&d.webkitVisibilityState?"webkitvisibilitychange":"visibilitychange";if(isPrerender){ytcsi.info("prerender",1);var startTick=function(){ytcsi.setStart("dhs");d.removeEventListener(vName,startTick)};d.addEventListener(vName,startTick,false)}if(d.addEventListener)d.addEventListener(vName,function(){ytcsi.tick("vc")},
false);function isGecko(){if(!w.navigator)return false;try{if(w.navigator.userAgentData&&w.navigator.userAgentData.brands&&w.navigator.userAgentData.brands.length){var brands=w.navigator.userAgentData.brands;for(var i=0;i<brands.length;i++)if(brands[i]&&brands[i].brand==="Firefox")return true;return false}}catch(e){setTimeout(function(){throw e;})}if(!w.navigator.userAgent)return false;var ua=w.navigator.userAgent;return ua.indexOf("Gecko")>0&&ua.toLowerCase().indexOf("webkit")<0&&ua.indexOf("Edge")<
0&&ua.indexOf("Trident")<0&&ua.indexOf("MSIE")<0}if(isGecko()){var isHidden=(d.visibilityState||d.webkitVisibilityState)=="hidden";if(isHidden)ytcsi.tick("vc")}var slt=function(el,t){setTimeout(function(){var n=ytcsi.now();el.loadTime=n;if(el.slt)el.slt()},t)};w.__ytRIL=function(el){if(!el.getAttribute("data-thumb"))if(w.requestAnimationFrame)w.requestAnimationFrame(function(){slt(el,0)});else slt(el,16)}})(window,document);
</script><link rel="preload" href="https://i.ytimg.com/generate_204" as="fetch"><link as="script" rel="preload" href="https://www.youtube.com/s/desktop/303c978a/jsbin/desktop_polymer.vflset/desktop_polymer.js" nonce="902biVpuvVhSx2rSCLh+VQ"><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/web-animations-next-lite.min.vflset/web-animations-next-lite.min.js" nonce="902biVpuvVhSx2rSCLh+VQ"></script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/custom-elements-es5-adapter.vflset/custom-elements-es5-adapter.js" nonce="902biVpuvVhSx2rSCLh+VQ"></script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/webcomponents-sd.vflset/webcomponents-sd.js" nonce="902biVpuvVhSx2rSCLh+VQ"></script><script nonce="902biVpuvVhSx2rSCLh+VQ">if (window.ytcsi) {window.ytcsi.tick('lpcs', null, '');}</script><script nonce="902biVpuvVhSx2rSCLh+VQ">(function() {window.ytplayer={};
ytcfg.set({"CLIENT_CANARY_STATE":"none","DEVICE":"cbr\u003dSafari\u0026cbrand\u003dapple\u0026cbrver\u003d14.1.1\u0026ceng\u003dWebKit\u0026cengver\u003d605.1.15\u0026cos\u003dMacintosh\u0026cosver\u003d10_15_7\u0026cplatform\u003dDESKTOP\u0026cyear\u003d2013","DISABLE_YT_IMG_DELAY_LOADING":false,"ELEMENT_POOL_DEFAULT_CAP":75,"EVENT_ID":"80wWYfbROdSS1gKGi6nABg","EXPERIMENT_FLAGS":{"validate_network_status":true,"kevlar_updated_logo_icons":true,"defer_overlays":true,"suppress_error_204_logging":true,"kevlar_guide_store":true,"web_dedupe_ve_grafting":true,"desktop_mix_use_sampled_color_for_bottom_bar_watch_next":true,"enable_nwl_cleaning_logic":true,"kevlar_queue_use_dedicated_list_type":true,"enable_polymer_resin":true,"flush_gel":true,"kevlar_clean_up":true,"kevlar_dropdown_fix":true,"kevlar_woffle_dl_manager":true,"cb_use_v2_filler":true,"record_app_crashed_web":true,"use_source_element_if_present_for_actions":true,"polymer2_element_pool_properties":true,"kevlar_exit_fullscreen_leaving_watch":true,"html5_pacf_enable_dai":true,"disable_features_for_supex":true,"enable_ytc_refunds_submit_form_signal_action":true,"kevlar_populate_command_on_download_button":true,"web_open_guide_items_in_new_tab":true,"kevlar_miniplayer_set_watch_next":true,"kevlar_playlist_responsive":true,"kevlar_save_queue":true,"desktop_suggest_dropdown_fix":true,"kevlar_use_page_command_url":true,"kevlar_one_pick_add_video_to_playlist":true,"kevlar_help_use_locale":true,"kevlar_op_warm_pages":true,"kevlar_flexible_menu":true,"web_dont_cancel_pending_navigation_same_url":true,"use_better_post_dismissals":true,"enable_browser_cookie_status_monitoring":true,"player_doubletap_to_seek":true,"reload_without_polymer_innertube":true,"polymer2_polyfill_manual_flush":true,"polymer_warm_thumbnail_preload":true,"serve_pdp_at_canonical_url":true,"html5_enable_video_overlay_on_inplayer_slot_for_tv":true,"kevlar_picker_ajax_migration":true,"kevlar_cancel_scheduled_comment_jobs_on_navigate":true,"enable_yto_window":true,"kevlar_cache_on_ttl_browse":true,"kevlar_entities_processor":true,"kevlar_frontend_queue_recover":true,"kevlar_js_fixes":true,"kevlar_gel_error_routing":true,"kevlar_cache_on_ttl_player":true,"web_clean_sw_logs_store":true,"enable_channel_creation_avatar_editing":true,"disable_legacy_desktop_remote_queue":true,"kevlar_player_watch_endpoint_navigation":true,"rich_grid_content_visibility_optimization":true,"player_enable_playback_playlist_change":true,"disable_child_node_auto_formatted_strings":true,"defer_menus":true,"clear_visitor_id_in_innertube_before_consent":true,"kevlar_miniplayer_queue_user_activation":true,"kevlar_no_autoscroll_on_playlist_hover":true,"kevlar_set_internal_player_size":true,"mdx_enable_privacy_disclosure_ui":true,"kevlar_prepare_player_on_miniplayer_activation":true,"desktop_player_touch_gestures":true,"element_pool_populator_auto_abort":true,"memberships_page_continuation_migrate":true,"kevlar_app_initializer_cleanup":true,"kevlar_chapters_list_view_seek_by_chapter":true,"kevlar_pandown_polyfill":true,"web_player_move_autonav_toggle":true,"desktop_themeable_vulcan":true,"kevlar_op_watch_offline_fallback":true,"enable_docked_chat_messages":true,"web_compact_video_single_line":true,"kevlar_playlist_drag_handles":true,"global_spacebar_pause":true,"kevlar_tuner_run_default_comments_delay":true,"log_web_endpoint_to_layer":true,"networkless_logging":true,"kevlar_should_maintain_stable_list":true,"deprecate_pair_servlet_enabled":true,"enable_programmed_playlist_redesign":true,"enable_auto_play_param_fix_for_masthead_ad":true,"enable_names_handles_account_switcher":true,"kevlar_enable_parent_tools_integration":true,"kevlar_watch_next_chips_continuations_migration":true,"kevlar_fix_miniplayer_logging":true,"live_chat_attestation_signal":true,"kevlar_thumbnail_fluid":true,"kevlar_enable_editable_playlists":true,"kevlar_player_response_swf_config_wrapper_killswitch":true,"disable_simple_mixed_direction_formatted_strings":true,"web_enable_history_cache_map":true,"kevlar_logged_out_topbar_menu_migration":true,"enable_mentions_in_reposts":true,"enable_servlet_errors_streamz":true,"topbar_persistent_store_fallback":true,"kevlar_autonav_miniplayer_fix":true,"kevlar_local_innertube_response":true,"kevlar_enable_reorderable_playlists":true,"web_player_touch_mode_improvements":true,"enable_signals":true,"state_machine_dynamic_events_lifecycles":true,"check_user_lact_at_prompt_shown_time_on_web":true,"kevlar_keyboard_button_focus":true,"kevlar_web_response_context_yt_config_deprecation":true,"kevlar_allow_queue_reorder":true,"kevlar_masthead_store":true,"kevlar_disable_background_prefetch":true,"kevlar_no_early_init_unpause":true,"kevlar_watch_color_update":true,"enable_offer_suppression":true,"screen_manager_log_servlet_ei":true,"kevlar_command_handler_toggle_buttons":true,"kevlar_autonav_popup_filtering":true,"kevlar_op_infra":true,"desktop_adjust_touch_target":true,"kevlar_service_command_check":true,"kevlar_macro_markers_keyboarLine truncated
setMessage({"ADDED_TO_QUEUE":"Added to queue","ADD_TO_DROPDOWN_LABEL":"Save to...","AD_BADGE_TEXT":"Ad","APPLAUD_FOR_X":"Applaud for $amount","BACK_ALT_LABEL":"Back","CANCEL":"Cancel","CHECK_CONNECTION_OR_DOWNLOADS":"Please check your connection or watch your downloaded videos.","CLEAR":"Clear","CONNECT_TO_THE_INTERNET":"Connect to the internet","CONTINUE_WATCHING":"Continue watching","DELETE":"Delete","DELETE_ALL_DOWNLOADS_PROMPT":"Delete all downloads?","DELETE_FROM_DOWNLOADS":"Remove from downloads","DESCRIPTION":"Description","DOWNLOAD":"Download","DOWNLOADED":"Downloaded","DOWNLOADING":"Downloading","DOWNLOADING_PERCENT":"Downloading... $percent%","DOWNLOADS":"Downloads","DOWNLOADS_AVAILABILITY":"Downloads remain available as long as your device has an active internet connection at least once every 30 days.","DOWNLOADS_SETTINGS":"Downloads Settings","DOWNLOAD_QUALITY":"Download Quality","DO_NOT_HAVE_DOWNLOADS":"You do not have any downloads","EDIT_AVATAR_LABEL":"Edit profile picture","EDU_GOT_IT":"Got It","ENTER_DATE_OR_EARLIER":"Enter $allowed_date or earlier","ENTER_DATE_OR_LATER":"Enter $allowed_date or later","FREEBIE_JOIN_MEMBERSHIP_EDU_TEXT":"This channel offers a membership which you can join for free with YouTube Premium","GO_TO_DOWNLOADS":"Go to downloads","GUIDE_ALT_LABEL":"Guide","IMAGE_HORIZONTAL_POSITION_LABEL":"The center of the preview is $x_percent% from the left and $y_percent% from the right.","IMAGE_VERTICAL_POSITION_LABEL":"The center of the preview is $x_percent% from the top and $y_percent% from the bottom.","INVALID_DATE_ERROR":"Invalid Date","JOIN_MEMBERSHIP_EDU_TEXT":"Get access to exclusive perks when you purchase a membership to this channel.","JOIN_MEMBERSHIP_EDU_TITLE":"Membership","KEEP_OPEN":"Keep this window open to continue","LIBRARY_GUIDE_ITEM_EDU_TEXT":"Find your history, playlists, purchases, and more","LIBRARY_GUIDE_ITEM_EDU_TITLE":"Check out your new Library","LOCAL_TIME_LABEL":"Local Time","LOGO_ALT_LABEL":"YouTube Home","MANAGE_MEMBERSHIP_EDU_TEXT":"Access your benefits and manage your membership from here.","MENTIONS_EDU_TEXT":"Go to the Help Center to see how mentions work on YouTube.","MENTIONS_EDU_TITLE":"Learn more","MINIPLAYER_CLOSE":"Close player","MINIPLAYER_COLLAPSE_LABEL":"Collapse","MINIPLAYER_EXPAND_LABEL":"Expand","NO_ANGLE_BRACKET_LABEL":"Playlist title cannot contain \u003c or \u003e","NO_DOWNLOADS":"No downloads","NO_INTERNET_CONNECTION":"No internet connection","OFFLINE_CHECK_CONNECTION":"You\u0027re offline. Check your connection.","PLAYER_LABEL_MUTE":"Mute (m)","PLAYER_LABEL_PAUSE":"Pause (k)","PLAYER_LABEL_PLAY":"Play (k)","PLAYER_LABEL_UNMUTE":"Unmute (m)","QUEUE":"Queue","QUEUE_CLEARED":"{count,plural, \u003d1{1 video in the queue removed}other{# videos in the queue removed}}","QUEUE_CLEARED_UNPLURALIZED":"Queue cleared","QUEUE_CLOSE_MINIPLAYER_CONFIRM_BODY_TEXT":"Are you sure you want to close the player?","QUEUE_CLOSE_MINIPLAYER_CONFIRM_TITLE":"Queue will be cleared","QUEUE_RECOVER_BUTTON":"Restore","QUEUE_RECOVER_MESSAGE":"Recover queue","REACH_BOTTOM_OF_IMAGE_TEXT":"You have reached the bottom of the image","REACH_LEFT_OF_IMAGE_TEXT":"You have reached the left of the image","REACH_RIGHT_OF_IMAGE_TEXT":"You have reached the right of the image","REACH_TOP_OF_IMAGE_TEXT":"You have reached the top of the image","REMEMBER_MY_SETTINGS":"Remember my settings","REPOSITION_IMAGE_HORIZONTALLY_LABEL":"Use left and right arrow keys to reposition the preview","REPOSITION_IMAGE_VERTICALLY_LABEL":"Use up and down arrow keys to reposition the preview","REQUIRED_LABEL":"Required","RETRY":"Retry","SBOX_INAPPROPRIATE_ADDITIONAL":"Provide additional details (optional)","SBOX_INAPPROPRIATE_CANCEL":"Cancel","SBOX_INAPPROPRIATE_CATEGORY":"The selected predictions are:","SBOX_INAPPROPRIATE_DANGEROUS":"Dangerous and harmful activity","SBOX_INAPPROPRIATE_EXPLICIT":"Sexually explicit","SBOX_INAPPROPRIATE_HATEFUL":"Hateful","SBOX_INAPPROPRIATE_OTHER":"Other","SBOX_INAPPROPRIATE_PROMPT":"Report search predictions","SBOX_INAPPROPRIATE_REASON":"Reason (required)","SBOX_INAPPROPRIATE_REPORT":"Report","SBOX_INAPPROPRIATE_SUBMIT":"Submit","SBOX_INAPPROPRIATE_SUGGESTIONS":"Select predictions you would like to report:","SBOX_INAPPROPRIATE_TITLE":"Report search predictions","SBOX_INAPPROPRIATE_TOAST":"Thanks for your feedback!","SBOX_INAPPROPRIATE_VIOLENT":"Violent","SBOX_PLACEHOLDER":"Search","SBOX_VOICE_OVERLAY_PLACEHOLDER":"Listening...","SHARE_LABEL":"Share","SHARE_POST_EDU_TEXT":"Now you can share posts on YouTube","SHOW_LESS":"Show less","SHOW_MORE":"Show more","SIGN_IN_LABEL":"Sign in","SUBS_FILTER_EDU_CHANNEL_TEXT":"Now showing new videos from this channel.","SUBS_FILTER_EDU_TEXT":"See new videos from each channel","SUBS_GUIDE_ITEM_EDU_TEXT":"See new videos from all of your subscriptions","TIMEZONE_FORMAT":"($utc_offset_text) $city_name","TRANSFER_FAILED":"Download failed","TRY_AGAIN_LATER":"Something went wrong. Please try again later.","UNDO":"Undo","UTC_OFFSET_FLine truncated
</script><script nonce="902biVpuvVhSx2rSCLh+VQ">if (window.ytcsi) {window.ytcsi.tick('lpcf', null, '');}</script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/scheduler.vflset/scheduler.js" nonce="902biVpuvVhSx2rSCLh+VQ"></script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/www-i18n-constants-en_US.vflset/www-i18n-constants.js" nonce="902biVpuvVhSx2rSCLh+VQ"></script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/www-tampering.vflset/www-tampering.js" nonce="902biVpuvVhSx2rSCLh+VQ"></script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/spf.vflset/spf.js" nonce="902biVpuvVhSx2rSCLh+VQ"></script><script nonce="902biVpuvVhSx2rSCLh+VQ">if(window["_spf_state"])window["_spf_state"].config={"assume-all-json-requests-chunked":true};
</script><script src="https://www.youtube.com/s/desktop/303c978a/jsbin/network.vflset/network.js" nonce="902biVpuvVhSx2rSCLh+VQ"></script><script nonce="902biVpuvVhSx2rSCLh+VQ">if (window.ytcsi) {window.ytcsi.tick('csl', null, '');}</script><link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=YouTube+Sans:wght@300..900&display=swap" nonce="jn13jZMz0jLCgFAW8DsVww"><script name="www-roboto" nonce="902biVpuvVhSx2rSCLh+VQ">if (document.fonts && document.fonts.load) {document.fonts.load("400 10pt Roboto", ""); document.fonts.load("500 10pt Roboto", "");}</script><link rel="stylesheet" href="https://www.youtube.com/s/desktop/303c978a/cssbin/www-onepick.css" nonce="jn13jZMz0jLCgFAW8DsVww"><style class="global_styles" nonce="jn13jZMz0jLCgFAW8DsVww">body{padding:0;margin:0;overflow-y:scroll}body.autoscroll{overflow-y:auto}body.no-scroll{overflow:hidden}body.no-y-scroll{overflow-y:hidden}.hidden{display:none}textarea{--paper-input-container-input_-_white-space:pre-wrap}.grecaptcha-badge{visibility:hidden}</style><style class="masthead_shell" nonce="jn13jZMz0jLCgFAW8DsVww">ytd-masthead.shell{background:rgba(255,255,255,0.98);position:fixed;top:0;right:0;left:0;display:-ms-flex;display:-webkit-flex;display:flex;height:56px;-ms-flex-align:center;-webkit-align-items:center;align-items:center}ytd-masthead.shell #menu-icon{margin-left:16px}ytd-app>ytd-masthead.chunked{position:fixed;top:0;width:100%}ytd-masthead.shell.dark,ytd-masthead.shell.theater{background:rgba(40,40,40,0.98)}ytd-masthead.shell.full-window-mode{background:rgba(40,40,40,0.98);opacity:0;transform:translateY(calc(-100% - 5px))}ytd-masthead.shell>*:first-child{padding-left:16px}ytd-masthead.shell>*:last-child{padding-right:16px}ytd-masthead #masthead-logo{display:-ms-flex;display:-webkit-flex;display:flex}ytd-masthead #masthead-logo #country-code{margin-right:2px}ytd-masthead.shell #yt-logo-updated-svg,ytd-masthead.shell #yt-logo-red-updated-svg,ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{align-self:center;margin-left:8px;padding:0;color:black}ytd-masthead.shell #a11y-skip-nav{display:none}ytd-masthead.shell svg{width:40px;height:40px;padding:8px;margin-right:8px;box-sizing:border-box;color:#606060;fill:currentColor}ytd-masthead .external-icon{width:24px;height:24px}ytd-masthead .yt-icons-ext{fill:currentColor;color:#606060}ytd-masthead.shell.dark .yt-icons-ext ytd-masthead.shell.theater .yt-icons-ext{fill:#ffffff}ytd-masthead svg#yt-logo-svg{width:80px}ytd-masthead svg#yt-logo-red-svg{width:106.4px}ytd-masthead svg#yt-logo-updated-svg{width:90px}ytd-masthead svg#yt-logo-red-updated-svg{width:97px}@media (max-width:656px){ytd-masthead.shell>*:first-child{padding-left:8px}ytd-masthead.shell>*:last-child{padding-right:8px}ytd-masthead.shell svg{margin-right:0}ytd-masthead #masthead-logo{-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{margin-left:4px}}@media (min-width:876px){ytd-masthead #masthead-logo{width:129px}}#masthead-skeleton-icons{display:flex;flex:1;flex-direction:row;justify-content:flex-end}ytd-masthead.masthead-finish #masthead-skeleton-icons{display:none}.masthead-skeleton-icon{border-radius:50%;height:32px;width:32px;margin:0 8px;background-color:hsl(0,0%,89%)}ytd-masthead.dark .masthead-skeleton-icon{background-color:hsl(0,0%,16%)}</style><style class="masthead_custom_styles" is="custom-style" id="ext-styles" nonce="jn13jZMz0jLCgFAW8DsVww">ytd-masthead .yt-icons-ext{color:var(--yt-spec-icon-active-other)}ytd-masthead svg#yt-logo-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-updated-svg #youtube-red-paths path{fill:#282828}ytd-masthead.dark svg#yt-logo-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead.dark svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-updated-svg #youtube-red-paths path,ytd-masthead.theater svg#yt-logo-svg #youtube-paths path,ytd-masthead.theater svg#yt-logo-red-svg #youtube-red-paths path{fill:rgb(255,255,255)}</style><style class="searchbox" nonce="jn13jZMz0jLCgFAW8DsVww">#search-input.ytd-searchbox-spt input{-webkit-appearance:none;-webkit-font-smoothing:antialiased;background-color:transparent;border:none;box-shadow:none;color:inherit;font-family:'Roboto','Noto',sans-serif;font-size:16px;font-weight:400;line-height:24px;margin-left:4px;max-width:100%;outline:none;text-align:inherit;width:100%;-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}#search-container.ytd-searchbox-spt{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}#search-input.ytd-searchbox-spt #search::-webkit-input-placeholder{color:hsl(0,0%,53.3%)}#search-input.ytd-searchbox-spt #search::-moLine truncated
+127
View File
@@ -0,0 +1,127 @@
#
# Copyright (c) 2021 Guy Baconniere.
#
## How to use this Makefile
#
# cd git
# mkdir ex00
# cd ex00
# make -f ../../Makefile ex00
#
hash = \#
clone:
@git clone git@vogsphere.42lausanne.ch:vogsphere/intra-uuid-6ab96e6e-8d3c-4e8c-98b0-b13b474817ad-3700999 git
tarball:
@install -d -m 0750 resources
@tar -C resources -xvf resources.tar.gz
ex00:
@rm -f z
@echo Z > z
@cat z
ex01:
@rm -f testShell00.tar
@perl -e 'print "42"x20' > testShell00
@touch -t 2106012342.00 testShell00
@chmod 0455 testShell00
@ls -l
@tar -cf testShell00.tar testShell00
@rm -f testShell00
ex02:
@rm -fr test? exo2.tar
@mkdir test0
@mkdir test2
@printf "4242" > test1
@printf "4" > test3
@printf "42" > test4
@touch -t 2106012047.00 test0
@touch -t 2106012146.00 test1
@touch -t 2106012245.00 test2
@touch -t 2106012344.00 test3
@touch -t 2106012343.00 test4
@ln test3 test5
@ln -s test0 test6
@touch -h -t 2106012220.00 test6
@chmod 0715 test0
@chmod 0714 test1
@chmod 0504 test2
@chmod 0404 test3
@chmod 0641 test4
@chmod 0404 test5
@chmod -h 0755 test6
@ls -l
@tar -cf exo2.tar *
@rm -fr test?
ex03:
@rm -f klist.txt
@klist -t || kinit -f -l 10h gbaconni@42LAUSANNE.CH
@klist > klist.txt
@cat klist.txt
ex04:
@rm -fr midLS test?
@mkdir test0
@touch -r /usr/bin/topsyscall test1
@touch -r /bin/sh test2
@touch test3
@printf "#!/bin/sh\n" > midLS
@printf "ls -mptU\n" >> midLS
@chmod +x midLS
@./midLS
@rm -fr midLS test?
@printf "ls -mptU\n" > midLS
ex05:
@rm -fr git_commit.sh
@printf "#!/bin/sh\n" > git_commit.sh
@printf "git log --pretty='%%H' --max-count=5\n" >> git_commit.sh
@chmod +x git_commit.sh
@bash git_commit.sh | cat -e
ex06:
@rm -fr git_ignore.sh .DS_Store mywork.c~
@touch .DS_Store mywork.c~
@printf "#!/bin/sh\n" > git_ignore.sh
@printf "git ls-files --exclude-standard --ignored --others\n" >> git_ignore.sh
@chmod +x git_ignore.sh
@cd .. && bash ex06/git_ignore.sh | cat -e
@rm -fr .DS_Store mywork.c~
ex07:
@cp ../../resources/* .
@cp a b
@echo "Enter b"
@patch < sw.diff
@rm -f a sw.diff
ex08:
@rm -f clean test? ?test
@touch -r /bin/sh "test$(hash)"
@touch "$(hash)test"
@touch "test~"
@touch "test0"
@printf "#!/bin/sh\n" > clean
@printf "find . -type f \( -name '*~' -o -name '#*#' \) -print -delete\n" >> clean
@chmod +x clean
@./clean
@ls -l
@rm -f clean test? ?test
@printf "find . -type f \( -name '*~' -o -name '#*#' \) -print -delete\n" >> clean
ex09:
@rm -f ft_magic test?
@touch -r /bin/sh "test0"
@perl -e 'print "\0"x41 . "42"' > "test1"
@printf "41\tstring\t42\t42 file\n" > ft_magic
@file -m ft_magic *
@rm -f test?
all: clone
Binary file not shown.
Submodule C_Piscine_Shell_00/git added at c34d7f6d55.
Submodule C_Piscine_Shell_00/git_old added at 50ee51f097.
+21
View File
@@ -0,0 +1,21 @@
<!DOCTYPE html><html style="font-size: 10px;font-family: Roboto, Arial, sans-serif;" lang="en" typography typography-spacing><head><script nonce="fpFLtiOvfWt2QiJnCO/MVg">var ytcfg={d:function(){return window.yt&&yt.config_||ytcfg.data_||(ytcfg.data_={})},get:function(k,o){return k in ytcfg.d()?ytcfg.d()[k]:o},set:function(){var a=arguments;if(a.length>1)ytcfg.d()[a[0]]=a[1];else for(var k in a[0])ytcfg.d()[k]=a[0][k]}};
window.ytcfg.set('EMERGENCY_BASE_URL', '\/error_204?t\x3djserror\x26level\x3dERROR\x26client.name\x3d1\x26client.version\x3d2.20210729.00.00');</script><script nonce="fpFLtiOvfWt2QiJnCO/MVg">(function(){window.yterr=window.yterr||true;window.unhandledErrorMessages={};window.unhandledErrorCount=0;
window.onerror=function(msg,url,line,columnNumber,error){var err;if(error)err=error;else{err=new Error;err.stack="";err.message=msg;err.fileName=url;err.lineNumber=line;if(!isNaN(columnNumber))err["columnNumber"]=columnNumber}var message=String(err.message);if(!err.message||message in window.unhandledErrorMessages||window.unhandledErrorCount>=5)return;window.unhandledErrorCount+=1;window.unhandledErrorMessages[message]=true;var img=new Image;window.emergencyTimeoutImg=img;img.onload=img.onerror=function(){delete window.emergencyTimeoutImg};
var combinedLineAndColumn=err.lineNumber;if(!isNaN(err["columnNumber"]))combinedLineAndColumn+=":"+err["columnNumber"];var stack=err.stack||"";var values={"msg":message,"type":err.name,"client.params":"unhandled window error","file":err.fileName,"line":combinedLineAndColumn,"stack":stack.substr(0,500)};var thirdPartyScript=!err.fileName||err.fileName==="<anonymous>"||stack.indexOf("extension://")>=0;var replaced=stack.replace(/https:\/\/www.youtube.com\//g,"");if(replaced.match(/https?:\/\/[^/]+\//))thirdPartyScript=
true;else if(stack.indexOf("trapProp")>=0&&stack.indexOf("trapChain")>=0)thirdPartyScript=true;else if(message.indexOf("redefine non-configurable")>=0&&message.indexOf("userAgent")>=0)thirdPartyScript=true;var baseUrl=window["ytcfg"].get("EMERGENCY_BASE_URL","https://www.youtube.com/error_204?t=jserror&level=ERROR");var unsupported=message.indexOf("window.customElements is undefined")>=0;if(thirdPartyScript||unsupported)baseUrl=baseUrl.replace("level=ERROR","level=WARNING");var parts=[baseUrl];for(var key in values){var value=
values[key];if(value)parts.push(key+"="+encodeURIComponent(value))}img.src=parts.join("&")};
(function(){function _getExtendedNativePrototype(tag){var p=this._nativePrototypes[tag];if(!p){p=Object.create(this.getNativePrototype(tag));var p$=Object.getOwnPropertyNames(window["Polymer"].Base);for(var i=0,n=undefined;i<p$.length&&(n=p$[i]);i++)if(!window["Polymer"].BaseDescriptors[n])try{p[n]=window["Polymer"].Base[n]}catch(e){throw new Error("Error while copying property: "+n+". Tag is "+tag);}try{Object.defineProperties(p,window["Polymer"].BaseDescriptors)}catch(e$0){throw new Error("Polymer define property failed for "+
Object.keys(p));}this._nativePrototypes[tag]=p}return p}function handlePolymerError(msg){window.onerror(msg,window.location.href,0,0,new Error(Array.prototype.join.call(arguments,",")))}var origPolymer=window["Polymer"];var newPolymer=function(config){if(!origPolymer._ytIntercepted&&window["Polymer"].Base){origPolymer._ytIntercepted=true;window["Polymer"].Base._getExtendedNativePrototype=_getExtendedNativePrototype;window["Polymer"].Base._error=handlePolymerError;window["Polymer"].Base._warn=handlePolymerError}return origPolymer.apply(this,
arguments)};var origDescriptor=Object.getOwnPropertyDescriptor(window,"Polymer");Object.defineProperty(window,"Polymer",{set:function(p){if(origDescriptor&&origDescriptor.set&&origDescriptor.get){origDescriptor.set(p);origPolymer=origDescriptor.get()}else origPolymer=p;if(typeof origPolymer==="function")Object.defineProperty(window,"Polymer",{value:origPolymer,configurable:true,enumerable:true,writable:true})},get:function(){return typeof origPolymer==="function"?newPolymer:origPolymer},configurable:true,
enumerable:true})})();}).call(this);
</script><script nonce="fpFLtiOvfWt2QiJnCO/MVg">window.Polymer=window.Polymer||{};window.Polymer.legacyOptimizations=true;window.Polymer.setPassiveTouchGestures=true;window.ShadyDOM={force:true,preferPerformance:true,noPatch:true};
window.ShadyCSS = {disableRuntime: true};</script><link rel="shortcut icon" href="https://www.youtube.com/s/desktop/0c58a82c/img/favicon.ico" type="image/x-icon"><link rel="icon" href="https://www.youtube.com/s/desktop/0c58a82c/img/favicon_32x32.png" sizes="32x32"><link rel="icon" href="https://www.youtube.com/s/desktop/0c58a82c/img/favicon_48x48.png" sizes="48x48"><link rel="icon" href="https://www.youtube.com/s/desktop/0c58a82c/img/favicon_96x96.png" sizes="96x96"><link rel="icon" href="https://www.youtube.com/s/desktop/0c58a82c/img/favicon_144x144.png" sizes="144x144"><script nonce="fpFLtiOvfWt2QiJnCO/MVg">var ytcsi={gt:function(n){n=(n||"")+"data_";return ytcsi[n]||(ytcsi[n]={tick:{},info:{}})},now:window.performance&&window.performance.timing&&window.performance.now&&window.performance.timing.navigationStart?function(){return window.performance.timing.navigationStart+window.performance.now()}:function(){return(new Date).getTime()},tick:function(l,t,n){var ticks=ytcsi.gt(n).tick;var v=t||ytcsi.now();if(ticks[l]){ticks["_"+l]=ticks["_"+l]||[ticks[l]];ticks["_"+l].push(v)}ticks[l]=v},info:function(k,
v,n){ytcsi.gt(n).info[k]=v},setStart:function(s,t,n){ytcsi.info("yt_sts",s,n);ytcsi.tick("_start",t,n)}};
(function(w,d){ytcsi.setStart("dhs",w.performance?w.performance.timing.responseStart:null);var isPrerender=(d.visibilityState||d.webkitVisibilityState)=="prerender";var vName=!d.visibilityState&&d.webkitVisibilityState?"webkitvisibilitychange":"visibilitychange";if(isPrerender){ytcsi.info("prerender",1);var startTick=function(){ytcsi.setStart("dhs");d.removeEventListener(vName,startTick)};d.addEventListener(vName,startTick,false)}if(d.addEventListener)d.addEventListener(vName,function(){ytcsi.tick("vc")},
false);function isGecko(){if(!w.navigator)return false;try{if(w.navigator.userAgentData&&w.navigator.userAgentData.brands&&w.navigator.userAgentData.brands.length){var brands=w.navigator.userAgentData.brands;for(var i=0;i<brands.length;i++)if(brands[i]&&brands[i].brand==="Firefox")return true;return false}}catch(e){setTimeout(function(){throw e;})}if(!w.navigator.userAgent)return false;var ua=w.navigator.userAgent;return ua.indexOf("Gecko")>0&&ua.toLowerCase().indexOf("webkit")<0&&ua.indexOf("Edge")<
0&&ua.indexOf("Trident")<0&&ua.indexOf("MSIE")<0}if(isGecko()){var isHidden=(d.visibilityState||d.webkitVisibilityState)=="hidden";if(isHidden)ytcsi.tick("vc")}var slt=function(el,t){setTimeout(function(){var n=ytcsi.now();el.loadTime=n;if(el.slt)el.slt()},t)};w.__ytRIL=function(el){if(!el.getAttribute("data-thumb"))if(w.requestAnimationFrame)w.requestAnimationFrame(function(){slt(el,0)});else slt(el,16)}})(window,document);
</script><link rel="preload" href="https://i.ytimg.com/generate_204" as="fetch"><link as="script" rel="preload" href="https://www.youtube.com/s/desktop/0c58a82c/jsbin/desktop_polymer_ambiguate_properties.vflset/desktop_polymer_ambiguate_properties.js" nonce="fpFLtiOvfWt2QiJnCO/MVg"><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/web-animations-next-lite.min.vflset/web-animations-next-lite.min.js" nonce="fpFLtiOvfWt2QiJnCO/MVg"></script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/custom-elements-es5-adapter.vflset/custom-elements-es5-adapter.js" nonce="fpFLtiOvfWt2QiJnCO/MVg"></script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/webcomponents-sd.vflset/webcomponents-sd.js" nonce="fpFLtiOvfWt2QiJnCO/MVg"></script><script nonce="fpFLtiOvfWt2QiJnCO/MVg">if (window.ytcsi) {window.ytcsi.tick('lpcs', null, '');}</script><script nonce="fpFLtiOvfWt2QiJnCO/MVg">(function() {window.ytplayer={};
ytcfg.set({"CLIENT_CANARY_STATE":"none","DEVICE":"cbr\u003dSafari\u0026cbrand\u003dapple\u0026cbrver\u003d14.1.1\u0026ceng\u003dWebKit\u0026cengver\u003d605.1.15\u0026cos\u003dMacintosh\u0026cosver\u003d10_15_7\u0026cplatform\u003dDESKTOP\u0026cyear\u003d2013","DISABLE_YT_IMG_DELAY_LOADING":false,"ELEMENT_POOL_DEFAULT_CAP":75,"EVENT_ID":"tbkHYczOJNSD8gOhkbWYBQ","EXPERIMENT_FLAGS":{"enable_service_ajax_csn":true,"kevlar_watch_increased_width_threshold":true,"enable_button_behavior_reuse":true,"ytidb_fetch_datasync_ids_for_data_cleanup":true,"enable_gel_log_commands":true,"enable_streamline_repost_flow":true,"enable_offer_suppression":true,"kevlar_use_response_ttl_to_invalidate_cache":true,"warm_op_csn_cleanup":true,"kevlar_resolve_playlist_endpoint_as_watch_endpoint":true,"live_chat_use_fetch_command":true,"kevlar_copy_playlist":true,"is_mweb_wexit_main_launch":true,"kevlar_op_warm_pages":true,"enable_nwl_cleaning_logic":true,"endpoint_handler_logging_cleanup_killswitch":true,"should_clear_video_data_on_player_cued_unstarted":true,"disable_simple_mixed_direction_formatted_strings":true,"kevlar_player_playlist_use_local_index":true,"botguard_periodic_refresh":true,"polymer_bad_build_labels":true,"kevlar_player_watch_endpoint_navigation":true,"nwl_sw_health_payloads":true,"kevlar_logged_out_topbar_menu_migration":true,"disable_child_node_auto_formatted_strings":true,"kevlar_enable_slis":true,"web_use_cache_for_image_fallback":true,"ytidb_analyze_is_supported":true,"config_age_report_killswitch":true,"kevlar_ctrl_tap_fix":true,"kevlar_collect_hover_touch_support":true,"kevlar_updated_logo_icons":true,"allow_skip_networkless":true,"enable_yto_window":true,"kevlar_entities_processor":true,"kevlar_set_internal_player_size":true,"kevlar_watch_gesture_pandown":true,"enable_share_panel_page_as_screen_layer":true,"kevlar_frontend_queue_recover":true,"kevlar_voice_logging_fix":true,"enable_ytc_self_serve_refunds":true,"web_player_touch_mode_improvements":true,"kevlar_channels_player_handle_missing_swfconfig":true,"enable_client_sli_logging":true,"kevlar_fix_playlist_continuation":true,"kevlar_one_pick_add_video_to_playlist":true,"web_always_load_chat_support":true,"kevlar_miniplayer_play_pause_on_scrim":true,"enable_microformat_data":true,"service_worker_subscribe_with_vapid_key":true,"kevlar_masthead_store":true,"kevlar_tuner_should_defer_detach":true,"enable_call_to_action_clarification_renderer_bottom_section_conditions":true,"web_use_overflow_menu_for_playlist_watch_panel":true,"enable_web_ketchup_hero_animation":true,"pdg_disable_web_super_vod_explicit_click_logging":true,"enable_signals":true,"kevlar_persistent_response_store":true,"networkless_logging":true,"player_allow_autonav_after_playlist":true,"kevlar_touch_gesture_ves":true,"polymer2_polyfill_manual_flush":true,"enable_browser_cookie_status_monitoring":true,"kevlar_passive_event_listeners":true,"kevlar_enable_reorderable_playlists":true,"pes_enable_association_store":true,"kevlar_local_innertube_response":true,"web_enable_ad_signals_in_it_context":true,"kevlar_use_ytd_player":true,"kevlar_update_topbar_logo_on_create":true,"kevlar_no_url_params":true,"enable_business_email_reveal_servlet_migration":true,"suppress_error_204_logging":true,"kevlar_use_one_platform_for_queue_refresh":true,"serve_pdp_at_canonical_url":true,"kevlar_client_side_filler_data":true,"networkless_gel":true,"web_log_player_watch_next_ticks":true,"kevlar_cache_on_ttl":true,"decorate_autoplay_renderer":true,"mdx_enable_privacy_disclosure_ui":true,"log_final_payload":true,"web_open_guide_items_in_new_tab":true,"kevlar_transcript_engagement_panel":true,"web_inline_player_disable_scrubbing":true,"spf_kevlar_assume_chunked":true,"kevlar_three_dot_ink":true,"gfeedback_for_signed_out_users_enabled":true,"kevlar_droppable_prefetchable_requests":true,"use_screen_manager_util":true,"kevlar_frontend_video_list_actions":true,"kevlar_autofocus_menu_on_keyboard_nav":true,"kevlar_watch_js_panel_height":true,"kevlar_disable_html_imports":true,"kevlar_queue_use_dedicated_list_type":true,"global_spacebar_pause":true,"desktop_search_prominent_thumbs":true,"enable_names_handles_account_switcher":true,"kevlar_autonav_popup_filtering":true,"kevlar_allow_playlist_reorder":true,"pdg_use_generic_buy_flow_api_path":true,"web_player_move_autonav_toggle":true,"desktop_add_to_playlist_renderer_dialog_popup":true,"kevlar_help_use_locale":true,"kevlar_include_query_in_search_endpoint":true,"kevlar_save_queue":true,"cold_missing_history":true,"live_chat_attestation_signal":true,"kevlar_clean_up":true,"kevlar_playlist_responsive":true,"kevlar_guide_lock_scrollbar":true,"desktop_player_touch_gestures":true,"kevlar_no_redirect_to_classic_ks":true,"desktop_enable_wcr_multi_stage_canary":true,"polymer_warm_thumbnail_preload":true,"kevlar_voice_search":true,"kevlar_mix_handle_first_endpoint_different":true,"kevlar_typography_spacing_update":true,"kevlar_inlined_html_templates_polymer_flags":true,"fill_web_player_context_cLine truncated
setMessage({"ADDED_TO_QUEUE":"Added to queue","ADD_TO_DROPDOWN_LABEL":"Save to...","AD_BADGE_TEXT":"Ad","APPLAUD_FOR_X":"Applaud for $amount","BACK_ALT_LABEL":"Back","CANCEL":"Cancel","CHECK_CONNECTION_OR_DOWNLOADS":"Please check your connection or watch your downloaded videos.","CLEAR":"Clear","CONNECT_TO_THE_INTERNET":"Connect to the internet","CONTINUE_WATCHING":"Continue watching","DELETE":"Delete","DELETE_ALL_DOWNLOADS_PROMPT":"Delete all downloads?","DELETE_FROM_DOWNLOADS":"Remove from downloads","DESCRIPTION":"Description","DOWNLOAD":"Download","DOWNLOADED":"Downloaded","DOWNLOADING":"Downloading","DOWNLOADING_PERCENT":"Downloading... $percent%","DOWNLOADS":"Downloads","DOWNLOADS_AVAILABILITY":"Downloads remain available as long as your device has an active internet connection at least once every 30 days.","DOWNLOADS_SETTINGS":"Downloads Settings","DOWNLOAD_QUALITY":"Download Quality","DO_NOT_HAVE_DOWNLOADS":"You do not have any downloads","EDIT_AVATAR_LABEL":"Edit profile picture","EDU_GOT_IT":"Got It","ENTER_DATE_OR_EARLIER":"Enter $allowed_date or earlier","ENTER_DATE_OR_LATER":"Enter $allowed_date or later","FREEBIE_JOIN_MEMBERSHIP_EDU_TEXT":"This channel offers a membership which you can join for free with YouTube Premium","GO_TO_DOWNLOADS":"Go to downloads","GUIDE_ALT_LABEL":"Guide","IMAGE_HORIZONTAL_POSITION_LABEL":"The center of the preview is $x_percent% from the left and $y_percent% from the right.","IMAGE_VERTICAL_POSITION_LABEL":"The center of the preview is $x_percent% from the top and $y_percent% from the bottom.","INVALID_DATE_ERROR":"Invalid Date","JOIN_MEMBERSHIP_EDU_TEXT":"Get access to exclusive perks when you purchase a membership to this channel.","JOIN_MEMBERSHIP_EDU_TITLE":"Membership","KEEP_OPEN":"Keep this window open to continue","LIBRARY_GUIDE_ITEM_EDU_TEXT":"Find your history, playlists, purchases, and more","LIBRARY_GUIDE_ITEM_EDU_TITLE":"Check out your new Library","LOCAL_TIME_LABEL":"Local Time","LOGO_ALT_LABEL":"YouTube Home","MANAGE_MEMBERSHIP_EDU_TEXT":"Access your benefits and manage your membership from here.","MENTIONS_EDU_TEXT":"Go to the Help Center to see how mentions work on YouTube.","MENTIONS_EDU_TITLE":"Learn more","MINIPLAYER_CLOSE":"Close player","MINIPLAYER_COLLAPSE_LABEL":"Collapse","MINIPLAYER_EXPAND_LABEL":"Expand","NO_ANGLE_BRACKET_LABEL":"Playlist title cannot contain \u003c or \u003e","NO_DOWNLOADS":"No downloads","NO_INTERNET_CONNECTION":"No internet connection","OFFLINE_CHECK_CONNECTION":"You\u0027re offline. Check your connection.","PLAYER_LABEL_MUTE":"Mute (m)","PLAYER_LABEL_PAUSE":"Pause (k)","PLAYER_LABEL_PLAY":"Play (k)","PLAYER_LABEL_UNMUTE":"Unmute (m)","QUEUE":"Queue","QUEUE_CLEARED":"{count,plural, \u003d1{1 video in the queue removed}other{# videos in the queue removed}}","QUEUE_CLEARED_UNPLURALIZED":"Queue cleared","QUEUE_CLOSE_MINIPLAYER_CONFIRM_BODY_TEXT":"Are you sure you want to close the player?","QUEUE_CLOSE_MINIPLAYER_CONFIRM_TITLE":"Queue will be cleared","QUEUE_RECOVER_BUTTON":"Restore","QUEUE_RECOVER_MESSAGE":"Recover queue","REACH_BOTTOM_OF_IMAGE_TEXT":"You have reached the bottom of the image","REACH_LEFT_OF_IMAGE_TEXT":"You have reached the left of the image","REACH_RIGHT_OF_IMAGE_TEXT":"You have reached the right of the image","REACH_TOP_OF_IMAGE_TEXT":"You have reached the top of the image","REMEMBER_MY_SETTINGS":"Remember my settings","REPOSITION_IMAGE_HORIZONTALLY_LABEL":"Use left and right arrow keys to reposition the preview","REPOSITION_IMAGE_VERTICALLY_LABEL":"Use up and down arrow keys to reposition the preview","REQUIRED_LABEL":"Required","RETRY":"Retry","SBOX_INAPPROPRIATE_ADDITIONAL":"Provide additional details (optional)","SBOX_INAPPROPRIATE_CANCEL":"Cancel","SBOX_INAPPROPRIATE_CATEGORY":"The selected predictions are:","SBOX_INAPPROPRIATE_DANGEROUS":"Dangerous and harmful activity","SBOX_INAPPROPRIATE_EXPLICIT":"Sexually explicit","SBOX_INAPPROPRIATE_HATEFUL":"Hateful","SBOX_INAPPROPRIATE_OTHER":"Other","SBOX_INAPPROPRIATE_PROMPT":"Report search predictions","SBOX_INAPPROPRIATE_REASON":"Reason (required)","SBOX_INAPPROPRIATE_REPORT":"Report","SBOX_INAPPROPRIATE_SUBMIT":"Submit","SBOX_INAPPROPRIATE_SUGGESTIONS":"Select predictions you would like to report:","SBOX_INAPPROPRIATE_TITLE":"Report search predictions","SBOX_INAPPROPRIATE_TOAST":"Thanks for your feedback!","SBOX_INAPPROPRIATE_VIOLENT":"Violent","SBOX_PLACEHOLDER":"Search","SBOX_VOICE_OVERLAY_PLACEHOLDER":"Listening...","SHARE_LABEL":"Share","SHARE_POST_EDU_TEXT":"Now you can share posts on YouTube","SHOW_LESS":"Show less","SHOW_MORE":"Show more","SIGN_IN_LABEL":"Sign in","SUBS_FILTER_EDU_CHANNEL_TEXT":"Now showing new videos from this channel.","SUBS_FILTER_EDU_TEXT":"See new videos from each channel","SUBS_GUIDE_ITEM_EDU_TEXT":"See new videos from all of your subscriptions","TIMEZONE_FORMAT":"($utc_offset_text) $city_name","TRANSFER_FAILED":"Download failed","TRY_AGAIN_LATER":"Something went wrong. Please try again later.","UNDO":"Undo","UTC_OFFSET_FLine truncated
</script><script nonce="fpFLtiOvfWt2QiJnCO/MVg">if (window.ytcsi) {window.ytcsi.tick('lpcf', null, '');}</script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/scheduler.vflset/scheduler.js" nonce="fpFLtiOvfWt2QiJnCO/MVg"></script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/www-i18n-constants-en_US.vflset/www-i18n-constants.js" nonce="fpFLtiOvfWt2QiJnCO/MVg"></script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/www-tampering.vflset/www-tampering.js" nonce="fpFLtiOvfWt2QiJnCO/MVg"></script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/spf.vflset/spf.js" nonce="fpFLtiOvfWt2QiJnCO/MVg"></script><script nonce="fpFLtiOvfWt2QiJnCO/MVg">if(window["_spf_state"])window["_spf_state"].config={"assume-all-json-requests-chunked":true};
</script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/network.vflset/network.js" nonce="fpFLtiOvfWt2QiJnCO/MVg"></script><script nonce="fpFLtiOvfWt2QiJnCO/MVg">if (window.ytcsi) {window.ytcsi.tick('csl', null, '');}</script><link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=YouTube+Sans:wght@300..900&display=swap" nonce="dLyqvMryaz3Tb3lI3S4VCw"><script name="www-roboto" nonce="fpFLtiOvfWt2QiJnCO/MVg">if (document.fonts && document.fonts.load) {document.fonts.load("400 10pt Roboto", ""); document.fonts.load("500 10pt Roboto", "");}</script><link rel="stylesheet" href="https://www.youtube.com/s/desktop/0c58a82c/cssbin/www-onepick.css" nonce="dLyqvMryaz3Tb3lI3S4VCw"><style class="global_styles" nonce="dLyqvMryaz3Tb3lI3S4VCw">body{padding:0;margin:0;overflow-y:scroll}body.autoscroll{overflow-y:auto}body.no-scroll{overflow:hidden}body.no-y-scroll{overflow-y:hidden}.hidden{display:none}textarea{--paper-input-container-input_-_white-space:pre-wrap}.grecaptcha-badge{visibility:hidden}</style><style class="masthead_shell" nonce="dLyqvMryaz3Tb3lI3S4VCw">ytd-masthead.shell{background:rgba(255,255,255,0.98);position:fixed;top:0;right:0;left:0;display:-ms-flex;display:-webkit-flex;display:flex;height:56px;-ms-flex-align:center;-webkit-align-items:center;align-items:center}ytd-masthead.shell #menu-icon{margin-left:16px}ytd-app>ytd-masthead.chunked{position:fixed;top:0;width:100%}ytd-masthead.shell.dark,ytd-masthead.shell.theater{background:rgba(40,40,40,0.98)}ytd-masthead.shell.full-window-mode{background:rgba(40,40,40,0.98);opacity:0;transform:translateY(calc(-100% - 5px))}ytd-masthead.shell>*:first-child{padding-left:16px}ytd-masthead.shell>*:last-child{padding-right:16px}ytd-masthead #masthead-logo{display:-ms-flex;display:-webkit-flex;display:flex}ytd-masthead #masthead-logo #country-code{margin-right:2px}ytd-masthead.shell #yt-logo-updated-svg,ytd-masthead.shell #yt-logo-red-updated-svg,ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{align-self:center;margin-left:8px;padding:0;color:black}ytd-masthead.shell #a11y-skip-nav{display:none}ytd-masthead.shell svg{width:40px;height:40px;padding:8px;margin-right:8px;box-sizing:border-box;color:#606060;fill:currentColor}ytd-masthead .external-icon{width:24px;height:24px}ytd-masthead .yt-icons-ext{fill:currentColor;color:#606060}ytd-masthead.shell.dark .yt-icons-ext ytd-masthead.shell.theater .yt-icons-ext{fill:#ffffff}ytd-masthead svg#yt-logo-svg{width:80px}ytd-masthead svg#yt-logo-red-svg{width:106.4px}ytd-masthead svg#yt-logo-updated-svg{width:90px}ytd-masthead svg#yt-logo-red-updated-svg{width:97px}@media (max-width:656px){ytd-masthead.shell>*:first-child{padding-left:8px}ytd-masthead.shell>*:last-child{padding-right:8px}ytd-masthead.shell svg{margin-right:0}ytd-masthead #masthead-logo{-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{margin-left:4px}}@media (min-width:876px){ytd-masthead #masthead-logo{width:129px}}#masthead-skeleton-icons{display:flex;flex:1;flex-direction:row;justify-content:flex-end}ytd-masthead.masthead-finish #masthead-skeleton-icons{display:none}.masthead-skeleton-icon{border-radius:50%;height:32px;width:32px;margin:0 8px;background-color:hsl(0,0%,89%)}ytd-masthead.dark .masthead-skeleton-icon{background-color:hsl(0,0%,16%)}</style><style class="masthead_custom_styles" is="custom-style" id="ext-styles" nonce="dLyqvMryaz3Tb3lI3S4VCw">ytd-masthead .yt-icons-ext{color:var(--yt-spec-icon-active-other)}ytd-masthead svg#yt-logo-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-updated-svg #youtube-red-paths path{fill:#282828}ytd-masthead.dark svg#yt-logo-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead.dark svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-updated-svg #youtube-red-paths path,ytd-masthead.theater svg#yt-logo-svg #youtube-paths path,ytd-masthead.theater svg#yt-logo-red-svg #youtube-red-paths path{fill:rgb(255,255,255)}</style><style class="searchbox" nonce="dLyqvMryaz3Tb3lI3S4VCw">#search-input.ytd-searchbox-spt input{-webkit-appearance:none;-webkit-font-smoothing:antialiased;background-color:transparent;border:none;box-shadow:none;color:inherit;font-family:'Roboto','Noto',sans-serif;font-size:16px;font-weight:400;line-height:24px;margin-left:4px;max-width:100%;outline:none;text-align:inherit;width:100%;-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}#search-container.ytd-searchbox-spt{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}#search-input.ytd-searchbox-spt #search::-webkit-input-placeholder{color:hsl(0,0%,53.3%)}#search-input.ytd-searchbox-spt #search::-moLine truncated
Binary file not shown.
+9
View File
@@ -0,0 +1,9 @@
STARWARS
Episode IV, A NEW HOPE It is a period of civil war.
Rebel spaceships, striking from a hidden base, have won their first victory against the evil Galactic Empire.
During the battle, Rebel spies managed to steal secret plans to the Empire's ultimate weapon, the DEATH STAR,
an armored space station with enough power to destroy an entire planet.
Pursued by the Empire's sinister agents, Princess Leia races home aboard her starship, custodian of the stolen plans that can save her people and restore freedom to the galaxy...
+18
View File
@@ -0,0 +1,18 @@
1,2c1,8
< STARWARS
< Episode IV, A NEW HOPE It is a period of civil war.
---
> Episode V, A NEW H0PE It is a period of civil war
> Rebel spaceships, striking from a hidden base, have won their first victory against the evil Galactic Empire.
> During the battle, Rebel spies managed to steal secret plans to the Empire's ultimate weapon, the STAR DEATH, an armored space station with enough power to destroy an entire planet.
>
>
> Pursued by the Empire's sinister agents,
> Princess Mehdi races home aboard her starship, custodian of the stolen plans that can save her people and restore the dictatorship to the galaxie..
>
4,6d9
< Rebel spaceships, striking from a hidden base, have won their first victory against the evil Galactic Empire.
< During the battle, Rebel spies managed to steal secret plans to the Empire's ultimate weapon, the DEATH STAR,
< an armored space station with enough power to destroy an entire planet.
8d10
< Pursued by the Empire's sinister agents, Princess Leia races home aboard her starship, custodian of the stolen plans that can save her people and restore freedom to the galaxy...
Binary file not shown.
+1
View File
@@ -0,0 +1 @@
test3
+1
View File
@@ -0,0 +1 @@
4242
+1
View File
@@ -0,0 +1 @@
4
+1
View File
@@ -0,0 +1 @@
42
+1
View File
@@ -0,0 +1 @@
4
+1
View File
@@ -0,0 +1 @@
test0
+81
View File
@@ -0,0 +1,81 @@
#
# Copyright (c) 2021 Guy Baconniere.
#
## How to use this Makefile
#
# cd git
# mkdir ex01
# cd ex01
# make -f ../../Makefile ex01
#
marvin = "\"\\\?\$$\*\'MaRViN\'\*\$$\?\\\""
clone:
@git clone git@vogsphere.42lausanne.ch:vogsphere/intra-uuid-a2e8ee6f-787d-4ee8-9eb4-359821770152-3701046 git
ex01:
@rm -f print_groups.sh
@printf "#!/bin/sh\n" > print_groups.sh
@printf "id -Gn \$$FT_USER | tr ' ' ','\n" >> print_groups.sh
@chmod +x print_groups.sh
@FT_USER=daemon ./print_groups.sh | cat -e
ex02:
@rm -f find_sh.sh file?.sh
@touch file1.sh file2.sh file3.sh
@printf "#!/bin/sh\n" > find_sh.sh
@printf "find . -type f -name '*.sh' -exec basename '{}' .sh \;\n" >> find_sh.sh
@chmod +x ./find_sh.sh
@./find_sh.sh | cat -e
@rm -f file?.sh
ex03:
@rm -f count_files.sh file*
@touch file{1..40}
@printf "#!/bin/sh\n" > count_files.sh
@printf "find . \( -type f -o -type d \) | wc -l | tr -d ' '\n" >> count_files.sh
@chmod +x ./count_files.sh
@./count_files.sh | cat -e
@rm -f file*
ex04:
@rm -f MAC.sh
@printf "#!/bin/sh\n" > MAC.sh
@printf "ifconfig | grep -oE 'ether .*' | cut -c7-23\n" >> MAC.sh
@chmod +x ./MAC.sh
@./MAC.sh | cat -e
ex05:
@rm -f -- *MaRV*
@printf "42" > "$(marvin)"
@touch -t 10021221.00 "$(marvin)"
@chmod 0614 "$(marvin)"
@ls -lRA *MaRV* | cat -e
ex06:
@rm -f skip.sh file*
@touch file{1..8}
@printf "#!/bin/sh\n" > skip.sh
@printf "ls -l | awk '{ if ((NR + 1) %% 2 == 0) print \$$0 }'\n" >> skip.sh
@chmod +x ./skip.sh
@./skip.sh | cat -e
@rm -f file*
ex07:
@rm -f r_dwssap.sh
@printf "#!/bin/sh\n" > r_dwssap.sh
@printf "grep -v '^#' /etc/passwd | awk -F ':' '/^FT_LINE1/,/^FT_LINE2/ { n++; login=\$$1; rev=\"rev <<<\"login; rev | getline revlogin; close(rev); print ((n > 1) && ((n+1) %% 2 == 0))? revlogin:login }' | sort -rh | tr '\\\\n' ' ' | sed 's/ $$/./; s/ /, /g;'\n" >> r_dwssap.sh
@chmod +x ./r_dwssap.sh
@./r_dwssap.sh | cat -e
ex08:
@rm -f add_chelou.sh
@printf "#!/bin/sh\n" > add_chelou.sh
@printf "echo Trop chelou de jouer avec tr et de jouer cet escape game.\n" >> add_chelou.sh
@chmod +x ./add_chelou.sh
@./add_chelou.sh | cat -e
all: clone
Binary file not shown.
Submodule C_Piscine_Shell_01/git added at 29fde0bf4e.
Submodule C_Piscine_Shell_01/git_old added at e9d3fc51d7.
+21
View File
@@ -0,0 +1,21 @@
<!DOCTYPE html><html style="font-size: 10px;font-family: Roboto, Arial, sans-serif;" lang="en" typography typography-spacing><head><script nonce="aChr4NU6MpClew1GqPNdbA">var ytcfg={d:function(){return window.yt&&yt.config_||ytcfg.data_||(ytcfg.data_={})},get:function(k,o){return k in ytcfg.d()?ytcfg.d()[k]:o},set:function(){var a=arguments;if(a.length>1)ytcfg.d()[a[0]]=a[1];else for(var k in a[0])ytcfg.d()[k]=a[0][k]}};
window.ytcfg.set('EMERGENCY_BASE_URL', '\/error_204?t\x3djserror\x26level\x3dERROR\x26client.name\x3d1\x26client.version\x3d2.20210729.00.00');</script><script nonce="aChr4NU6MpClew1GqPNdbA">(function(){window.yterr=window.yterr||true;window.unhandledErrorMessages={};window.unhandledErrorCount=0;
window.onerror=function(msg,url,line,columnNumber,error){var err;if(error)err=error;else{err=new Error;err.stack="";err.message=msg;err.fileName=url;err.lineNumber=line;if(!isNaN(columnNumber))err["columnNumber"]=columnNumber}var message=String(err.message);if(!err.message||message in window.unhandledErrorMessages||window.unhandledErrorCount>=5)return;window.unhandledErrorCount+=1;window.unhandledErrorMessages[message]=true;var img=new Image;window.emergencyTimeoutImg=img;img.onload=img.onerror=function(){delete window.emergencyTimeoutImg};
var combinedLineAndColumn=err.lineNumber;if(!isNaN(err["columnNumber"]))combinedLineAndColumn+=":"+err["columnNumber"];var stack=err.stack||"";var values={"msg":message,"type":err.name,"client.params":"unhandled window error","file":err.fileName,"line":combinedLineAndColumn,"stack":stack.substr(0,500)};var thirdPartyScript=!err.fileName||err.fileName==="<anonymous>"||stack.indexOf("extension://")>=0;var replaced=stack.replace(/https:\/\/www.youtube.com\//g,"");if(replaced.match(/https?:\/\/[^/]+\//))thirdPartyScript=
true;else if(stack.indexOf("trapProp")>=0&&stack.indexOf("trapChain")>=0)thirdPartyScript=true;else if(message.indexOf("redefine non-configurable")>=0&&message.indexOf("userAgent")>=0)thirdPartyScript=true;var baseUrl=window["ytcfg"].get("EMERGENCY_BASE_URL","https://www.youtube.com/error_204?t=jserror&level=ERROR");var unsupported=message.indexOf("window.customElements is undefined")>=0;if(thirdPartyScript||unsupported)baseUrl=baseUrl.replace("level=ERROR","level=WARNING");var parts=[baseUrl];for(var key in values){var value=
values[key];if(value)parts.push(key+"="+encodeURIComponent(value))}img.src=parts.join("&")};
(function(){function _getExtendedNativePrototype(tag){var p=this._nativePrototypes[tag];if(!p){p=Object.create(this.getNativePrototype(tag));var p$=Object.getOwnPropertyNames(window["Polymer"].Base);for(var i=0,n=undefined;i<p$.length&&(n=p$[i]);i++)if(!window["Polymer"].BaseDescriptors[n])try{p[n]=window["Polymer"].Base[n]}catch(e){throw new Error("Error while copying property: "+n+". Tag is "+tag);}try{Object.defineProperties(p,window["Polymer"].BaseDescriptors)}catch(e$0){throw new Error("Polymer define property failed for "+
Object.keys(p));}this._nativePrototypes[tag]=p}return p}function handlePolymerError(msg){window.onerror(msg,window.location.href,0,0,new Error(Array.prototype.join.call(arguments,",")))}var origPolymer=window["Polymer"];var newPolymer=function(config){if(!origPolymer._ytIntercepted&&window["Polymer"].Base){origPolymer._ytIntercepted=true;window["Polymer"].Base._getExtendedNativePrototype=_getExtendedNativePrototype;window["Polymer"].Base._error=handlePolymerError;window["Polymer"].Base._warn=handlePolymerError}return origPolymer.apply(this,
arguments)};var origDescriptor=Object.getOwnPropertyDescriptor(window,"Polymer");Object.defineProperty(window,"Polymer",{set:function(p){if(origDescriptor&&origDescriptor.set&&origDescriptor.get){origDescriptor.set(p);origPolymer=origDescriptor.get()}else origPolymer=p;if(typeof origPolymer==="function")Object.defineProperty(window,"Polymer",{value:origPolymer,configurable:true,enumerable:true,writable:true})},get:function(){return typeof origPolymer==="function"?newPolymer:origPolymer},configurable:true,
enumerable:true})})();}).call(this);
</script><script nonce="aChr4NU6MpClew1GqPNdbA">window.Polymer=window.Polymer||{};window.Polymer.legacyOptimizations=true;window.Polymer.setPassiveTouchGestures=true;window.ShadyDOM={force:true,preferPerformance:true,noPatch:true};
window.ShadyCSS = {disableRuntime: true};</script><link rel="shortcut icon" href="https://www.youtube.com/s/desktop/0c58a82c/img/favicon.ico" type="image/x-icon"><link rel="icon" href="https://www.youtube.com/s/desktop/0c58a82c/img/favicon_32x32.png" sizes="32x32"><link rel="icon" href="https://www.youtube.com/s/desktop/0c58a82c/img/favicon_48x48.png" sizes="48x48"><link rel="icon" href="https://www.youtube.com/s/desktop/0c58a82c/img/favicon_96x96.png" sizes="96x96"><link rel="icon" href="https://www.youtube.com/s/desktop/0c58a82c/img/favicon_144x144.png" sizes="144x144"><script nonce="aChr4NU6MpClew1GqPNdbA">var ytcsi={gt:function(n){n=(n||"")+"data_";return ytcsi[n]||(ytcsi[n]={tick:{},info:{}})},now:window.performance&&window.performance.timing&&window.performance.now&&window.performance.timing.navigationStart?function(){return window.performance.timing.navigationStart+window.performance.now()}:function(){return(new Date).getTime()},tick:function(l,t,n){var ticks=ytcsi.gt(n).tick;var v=t||ytcsi.now();if(ticks[l]){ticks["_"+l]=ticks["_"+l]||[ticks[l]];ticks["_"+l].push(v)}ticks[l]=v},info:function(k,
v,n){ytcsi.gt(n).info[k]=v},setStart:function(s,t,n){ytcsi.info("yt_sts",s,n);ytcsi.tick("_start",t,n)}};
(function(w,d){ytcsi.setStart("dhs",w.performance?w.performance.timing.responseStart:null);var isPrerender=(d.visibilityState||d.webkitVisibilityState)=="prerender";var vName=!d.visibilityState&&d.webkitVisibilityState?"webkitvisibilitychange":"visibilitychange";if(isPrerender){ytcsi.info("prerender",1);var startTick=function(){ytcsi.setStart("dhs");d.removeEventListener(vName,startTick)};d.addEventListener(vName,startTick,false)}if(d.addEventListener)d.addEventListener(vName,function(){ytcsi.tick("vc")},
false);function isGecko(){if(!w.navigator)return false;try{if(w.navigator.userAgentData&&w.navigator.userAgentData.brands&&w.navigator.userAgentData.brands.length){var brands=w.navigator.userAgentData.brands;for(var i=0;i<brands.length;i++)if(brands[i]&&brands[i].brand==="Firefox")return true;return false}}catch(e){setTimeout(function(){throw e;})}if(!w.navigator.userAgent)return false;var ua=w.navigator.userAgent;return ua.indexOf("Gecko")>0&&ua.toLowerCase().indexOf("webkit")<0&&ua.indexOf("Edge")<
0&&ua.indexOf("Trident")<0&&ua.indexOf("MSIE")<0}if(isGecko()){var isHidden=(d.visibilityState||d.webkitVisibilityState)=="hidden";if(isHidden)ytcsi.tick("vc")}var slt=function(el,t){setTimeout(function(){var n=ytcsi.now();el.loadTime=n;if(el.slt)el.slt()},t)};w.__ytRIL=function(el){if(!el.getAttribute("data-thumb"))if(w.requestAnimationFrame)w.requestAnimationFrame(function(){slt(el,0)});else slt(el,16)}})(window,document);
</script><link rel="preload" href="https://i.ytimg.com/generate_204" as="fetch"><link as="script" rel="preload" href="https://www.youtube.com/s/desktop/0c58a82c/jsbin/desktop_polymer_ambiguate_properties.vflset/desktop_polymer_ambiguate_properties.js" nonce="aChr4NU6MpClew1GqPNdbA"><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/web-animations-next-lite.min.vflset/web-animations-next-lite.min.js" nonce="aChr4NU6MpClew1GqPNdbA"></script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/custom-elements-es5-adapter.vflset/custom-elements-es5-adapter.js" nonce="aChr4NU6MpClew1GqPNdbA"></script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/webcomponents-sd.vflset/webcomponents-sd.js" nonce="aChr4NU6MpClew1GqPNdbA"></script><script nonce="aChr4NU6MpClew1GqPNdbA">if (window.ytcsi) {window.ytcsi.tick('lpcs', null, '');}</script><script nonce="aChr4NU6MpClew1GqPNdbA">(function() {window.ytplayer={};
ytcfg.set({"CLIENT_CANARY_STATE":"none","DEVICE":"cbr\u003dSafari\u0026cbrand\u003dapple\u0026cbrver\u003d14.1.1\u0026ceng\u003dWebKit\u0026cengver\u003d605.1.15\u0026cos\u003dMacintosh\u0026cosver\u003d10_15_7\u0026cplatform\u003dDESKTOP\u0026cyear\u003d2013","DISABLE_YT_IMG_DELAY_LOADING":false,"ELEMENT_POOL_DEFAULT_CAP":75,"EVENT_ID":"vroHYeb1NtXK8gOv9bCIDQ","EXPERIMENT_FLAGS":{"kevlar_transcript_panel_refreshed_styles":true,"kevlar_enable_slis":true,"validate_network_status":true,"live_chat_increased_min_height":true,"kevlar_disable_html_imports":true,"kevlar_droppable_prefetchable_requests":true,"kevlar_watch_skeleton":true,"kevlar_home_skeleton":true,"kevlar_player_watch_endpoint_navigation":true,"nwl_sw_health_payloads":true,"reload_without_polymer_innertube":true,"kevlar_gel_error_routing":true,"desktop_sparkles_light_cta_button":true,"web_yt_config_context":true,"desktop_mix_use_sampled_color_for_bottom_bar_search":true,"kevlar_playlist_responsive":true,"fill_web_player_context_config":true,"kevlar_channels_player_handle_missing_swfconfig":true,"kevlar_queue_use_update_api":true,"kevlar_use_response_ttl_to_invalidate_cache":true,"kevlar_cache_on_ttl_browse":true,"flush_gel":true,"enable_call_to_action_clarification_renderer_bottom_section_conditions":true,"kevlar_player_playlist_use_local_index":true,"web_player_enable_ipp":true,"global_spacebar_pause":true,"desktop_add_to_playlist_renderer_dialog_popup":true,"kevlar_center_search_results":true,"kevlar_rendererstamper_event_listener":true,"enable_mentions_in_reposts":true,"is_mweb_wexit_main_launch":true,"kevlar_larger_three_dot_tap":true,"kevlar_miniplayer_queue_user_activation":true,"kevlar_op_watch_offline_fallback":true,"mdx_load_cast_api_bootstrap_script":true,"kevlar_keyboard_button_focus":true,"web_open_guide_items_in_new_tab":true,"service_worker_subscribe_with_vapid_key":true,"nwl_use_ytidb_partitioning":true,"kevlar_exit_fullscreen_leaving_watch":true,"web_hide_autonav_headline":true,"desktop_persistent_menu":true,"kevlar_woffle_dl_manager":true,"check_user_lact_at_prompt_shown_time_on_web":true,"nwl_throttling_race_fix":true,"kevlar_include_query_in_search_endpoint":true,"live_chat_unicode_emoji_skintone_update":true,"desktop_adjust_touch_target":true,"enable_topic_channel_tabs":true,"desktop_player_touch_gestures":true,"enable_button_behavior_reuse":true,"enable_gel_log_commands":true,"kevlar_thumbnail_fluid":true,"live_chat_use_punctual":true,"kevlar_fallback_to_page_data_root_ve":true,"kevlar_frontend_queue_recover":true,"pdg_use_generic_buy_flow_api_path":true,"kevlar_watch_navigation_clear_autoplay_count_session_data":true,"live_chat_show_ongoing_poll_results_in_banner":true,"config_age_report_killswitch":true,"player_enable_playback_playlist_change":true,"warm_op_csn_cleanup":true,"kevlar_client_side_filler_data":true,"kevlar_pandown_polyfill":true,"desktop_mix_use_sampled_color_for_bottom_bar_watch_next":true,"kevlar_hide_pp_url_param":true,"kevlar_clear_non_displayable_url_params":true,"log_heartbeat_with_lifecycles":true,"botguard_periodic_refresh":true,"kevlar_client_save_subs_preferences":true,"disable_thumbnail_preloading":true,"kevlar_prefetch":true,"desktop_touch_gestures_usage_log":true,"web_player_move_autonav_toggle":true,"enable_yto_window":true,"kevlar_frontend_video_list_actions":true,"kevlar_use_player_response_for_updates":true,"kevlar_no_autoscroll_on_playlist_hover":true,"kevlar_player_disable_rvs_update":true,"kevlar_autonav_popup_filtering":true,"is_part_of_any_user_engagement_experiment":true,"web_use_cache_for_image_fallback":true,"kevlar_disable_background_prefetch":true,"enable_masthead_quartile_ping_fix":true,"rich_grid_content_visibility_optimization":true,"kevlar_updated_logo_icons":true,"kevlar_ctrl_tap_fix":true,"ytidb_fetch_datasync_ids_for_data_cleanup":true,"memberships_page_continuation_migrate":true,"web_offline_promo_via_get_player":true,"kevlar_autonav_miniplayer_fix":true,"enable_offer_suppression":true,"desktop_fix_carousel_video_timeout":true,"kevlar_home_skeleton_hide_later":true,"web_player_touch_mode_improvements":true,"enable_auto_play_param_fix_for_masthead_ad":true,"kevlar_hide_time_continue_url_param":true,"kevlar_mealbar_above_player":true,"kevlar_miniplayer_set_watch_next":true,"kevlar_local_innertube_response":true,"disable_simple_mixed_direction_formatted_strings":true,"kevlar_op_warm_pages":true,"kevlar_variable_youtube_sans":true,"mdx_enable_privacy_disclosure_ui":true,"kevlar_no_early_init_unpause":true,"kevlar_voice_logging_fix":true,"kevlar_scrollbar_rework":true,"enable_servlet_streamz":true,"kevlar_log_initial_screen":true,"screen_manager_log_servlet_ei":true,"defer_rendering_outside_visible_area":true,"kevlar_autofocus_menu_on_keyboard_nav":true,"searchbox_reporting":true,"enable_microformat_data":true,"enable_web_poster_hover_animation":true,"kevlar_themed_standardized_scrollbar":true,"web_autonav_allow_off_by_default":true,"enable_streamline_repost_flow":true,"web_compactLine truncated
setMessage({"ADDED_TO_QUEUE":"Added to queue","ADD_TO_DROPDOWN_LABEL":"Save to...","AD_BADGE_TEXT":"Ad","APPLAUD_FOR_X":"Applaud for $amount","BACK_ALT_LABEL":"Back","CANCEL":"Cancel","CHECK_CONNECTION_OR_DOWNLOADS":"Please check your connection or watch your downloaded videos.","CLEAR":"Clear","CONNECT_TO_THE_INTERNET":"Connect to the internet","CONTINUE_WATCHING":"Continue watching","DELETE":"Delete","DELETE_ALL_DOWNLOADS_PROMPT":"Delete all downloads?","DELETE_FROM_DOWNLOADS":"Remove from downloads","DESCRIPTION":"Description","DOWNLOAD":"Download","DOWNLOADED":"Downloaded","DOWNLOADING":"Downloading","DOWNLOADING_PERCENT":"Downloading... $percent%","DOWNLOADS":"Downloads","DOWNLOADS_AVAILABILITY":"Downloads remain available as long as your device has an active internet connection at least once every 30 days.","DOWNLOADS_SETTINGS":"Downloads Settings","DOWNLOAD_QUALITY":"Download Quality","DO_NOT_HAVE_DOWNLOADS":"You do not have any downloads","EDIT_AVATAR_LABEL":"Edit profile picture","EDU_GOT_IT":"Got It","ENTER_DATE_OR_EARLIER":"Enter $allowed_date or earlier","ENTER_DATE_OR_LATER":"Enter $allowed_date or later","FREEBIE_JOIN_MEMBERSHIP_EDU_TEXT":"This channel offers a membership which you can join for free with YouTube Premium","GO_TO_DOWNLOADS":"Go to downloads","GUIDE_ALT_LABEL":"Guide","IMAGE_HORIZONTAL_POSITION_LABEL":"The center of the preview is $x_percent% from the left and $y_percent% from the right.","IMAGE_VERTICAL_POSITION_LABEL":"The center of the preview is $x_percent% from the top and $y_percent% from the bottom.","INVALID_DATE_ERROR":"Invalid Date","JOIN_MEMBERSHIP_EDU_TEXT":"Get access to exclusive perks when you purchase a membership to this channel.","JOIN_MEMBERSHIP_EDU_TITLE":"Membership","KEEP_OPEN":"Keep this window open to continue","LIBRARY_GUIDE_ITEM_EDU_TEXT":"Find your history, playlists, purchases, and more","LIBRARY_GUIDE_ITEM_EDU_TITLE":"Check out your new Library","LOCAL_TIME_LABEL":"Local Time","LOGO_ALT_LABEL":"YouTube Home","MANAGE_MEMBERSHIP_EDU_TEXT":"Access your benefits and manage your membership from here.","MENTIONS_EDU_TEXT":"Go to the Help Center to see how mentions work on YouTube.","MENTIONS_EDU_TITLE":"Learn more","MINIPLAYER_CLOSE":"Close player","MINIPLAYER_COLLAPSE_LABEL":"Collapse","MINIPLAYER_EXPAND_LABEL":"Expand","NO_ANGLE_BRACKET_LABEL":"Playlist title cannot contain \u003c or \u003e","NO_DOWNLOADS":"No downloads","NO_INTERNET_CONNECTION":"No internet connection","OFFLINE_CHECK_CONNECTION":"You\u0027re offline. Check your connection.","PLAYER_LABEL_MUTE":"Mute (m)","PLAYER_LABEL_PAUSE":"Pause (k)","PLAYER_LABEL_PLAY":"Play (k)","PLAYER_LABEL_UNMUTE":"Unmute (m)","QUEUE":"Queue","QUEUE_CLEARED":"{count,plural, \u003d1{1 video in the queue removed}other{# videos in the queue removed}}","QUEUE_CLEARED_UNPLURALIZED":"Queue cleared","QUEUE_CLOSE_MINIPLAYER_CONFIRM_BODY_TEXT":"Are you sure you want to close the player?","QUEUE_CLOSE_MINIPLAYER_CONFIRM_TITLE":"Queue will be cleared","QUEUE_RECOVER_BUTTON":"Restore","QUEUE_RECOVER_MESSAGE":"Recover queue","REACH_BOTTOM_OF_IMAGE_TEXT":"You have reached the bottom of the image","REACH_LEFT_OF_IMAGE_TEXT":"You have reached the left of the image","REACH_RIGHT_OF_IMAGE_TEXT":"You have reached the right of the image","REACH_TOP_OF_IMAGE_TEXT":"You have reached the top of the image","REMEMBER_MY_SETTINGS":"Remember my settings","REPOSITION_IMAGE_HORIZONTALLY_LABEL":"Use left and right arrow keys to reposition the preview","REPOSITION_IMAGE_VERTICALLY_LABEL":"Use up and down arrow keys to reposition the preview","REQUIRED_LABEL":"Required","RETRY":"Retry","SBOX_INAPPROPRIATE_ADDITIONAL":"Provide additional details (optional)","SBOX_INAPPROPRIATE_CANCEL":"Cancel","SBOX_INAPPROPRIATE_CATEGORY":"The selected predictions are:","SBOX_INAPPROPRIATE_DANGEROUS":"Dangerous and harmful activity","SBOX_INAPPROPRIATE_EXPLICIT":"Sexually explicit","SBOX_INAPPROPRIATE_HATEFUL":"Hateful","SBOX_INAPPROPRIATE_OTHER":"Other","SBOX_INAPPROPRIATE_PROMPT":"Report search predictions","SBOX_INAPPROPRIATE_REASON":"Reason (required)","SBOX_INAPPROPRIATE_REPORT":"Report","SBOX_INAPPROPRIATE_SUBMIT":"Submit","SBOX_INAPPROPRIATE_SUGGESTIONS":"Select predictions you would like to report:","SBOX_INAPPROPRIATE_TITLE":"Report search predictions","SBOX_INAPPROPRIATE_TOAST":"Thanks for your feedback!","SBOX_INAPPROPRIATE_VIOLENT":"Violent","SBOX_PLACEHOLDER":"Search","SBOX_VOICE_OVERLAY_PLACEHOLDER":"Listening...","SHARE_LABEL":"Share","SHARE_POST_EDU_TEXT":"Now you can share posts on YouTube","SHOW_LESS":"Show less","SHOW_MORE":"Show more","SIGN_IN_LABEL":"Sign in","SUBS_FILTER_EDU_CHANNEL_TEXT":"Now showing new videos from this channel.","SUBS_FILTER_EDU_TEXT":"See new videos from each channel","SUBS_GUIDE_ITEM_EDU_TEXT":"See new videos from all of your subscriptions","TIMEZONE_FORMAT":"($utc_offset_text) $city_name","TRANSFER_FAILED":"Download failed","TRY_AGAIN_LATER":"Something went wrong. Please try again later.","UNDO":"Undo","UTC_OFFSET_FLine truncated
</script><script nonce="aChr4NU6MpClew1GqPNdbA">if (window.ytcsi) {window.ytcsi.tick('lpcf', null, '');}</script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/scheduler.vflset/scheduler.js" nonce="aChr4NU6MpClew1GqPNdbA"></script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/www-i18n-constants-en_US.vflset/www-i18n-constants.js" nonce="aChr4NU6MpClew1GqPNdbA"></script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/www-tampering.vflset/www-tampering.js" nonce="aChr4NU6MpClew1GqPNdbA"></script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/spf.vflset/spf.js" nonce="aChr4NU6MpClew1GqPNdbA"></script><script nonce="aChr4NU6MpClew1GqPNdbA">if(window["_spf_state"])window["_spf_state"].config={"assume-all-json-requests-chunked":true};
</script><script src="https://www.youtube.com/s/desktop/0c58a82c/jsbin/network.vflset/network.js" nonce="aChr4NU6MpClew1GqPNdbA"></script><script nonce="aChr4NU6MpClew1GqPNdbA">if (window.ytcsi) {window.ytcsi.tick('csl', null, '');}</script><link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=YouTube+Sans:wght@300..900&display=swap" nonce="JJUiP9gRByQ/c177/6iuyg"><script name="www-roboto" nonce="aChr4NU6MpClew1GqPNdbA">if (document.fonts && document.fonts.load) {document.fonts.load("400 10pt Roboto", ""); document.fonts.load("500 10pt Roboto", "");}</script><link rel="stylesheet" href="https://www.youtube.com/s/desktop/0c58a82c/cssbin/www-onepick.css" nonce="JJUiP9gRByQ/c177/6iuyg"><style class="global_styles" nonce="JJUiP9gRByQ/c177/6iuyg">body{padding:0;margin:0;overflow-y:scroll}body.autoscroll{overflow-y:auto}body.no-scroll{overflow:hidden}body.no-y-scroll{overflow-y:hidden}.hidden{display:none}textarea{--paper-input-container-input_-_white-space:pre-wrap}.grecaptcha-badge{visibility:hidden}</style><style class="masthead_shell" nonce="JJUiP9gRByQ/c177/6iuyg">ytd-masthead.shell{background:rgba(255,255,255,0.98);position:fixed;top:0;right:0;left:0;display:-ms-flex;display:-webkit-flex;display:flex;height:56px;-ms-flex-align:center;-webkit-align-items:center;align-items:center}ytd-masthead.shell #menu-icon{margin-left:16px}ytd-app>ytd-masthead.chunked{position:fixed;top:0;width:100%}ytd-masthead.shell.dark,ytd-masthead.shell.theater{background:rgba(40,40,40,0.98)}ytd-masthead.shell.full-window-mode{background:rgba(40,40,40,0.98);opacity:0;transform:translateY(calc(-100% - 5px))}ytd-masthead.shell>*:first-child{padding-left:16px}ytd-masthead.shell>*:last-child{padding-right:16px}ytd-masthead #masthead-logo{display:-ms-flex;display:-webkit-flex;display:flex}ytd-masthead #masthead-logo #country-code{margin-right:2px}ytd-masthead.shell #yt-logo-updated-svg,ytd-masthead.shell #yt-logo-red-updated-svg,ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{align-self:center;margin-left:8px;padding:0;color:black}ytd-masthead.shell #a11y-skip-nav{display:none}ytd-masthead.shell svg{width:40px;height:40px;padding:8px;margin-right:8px;box-sizing:border-box;color:#606060;fill:currentColor}ytd-masthead .external-icon{width:24px;height:24px}ytd-masthead .yt-icons-ext{fill:currentColor;color:#606060}ytd-masthead.shell.dark .yt-icons-ext ytd-masthead.shell.theater .yt-icons-ext{fill:#ffffff}ytd-masthead svg#yt-logo-svg{width:80px}ytd-masthead svg#yt-logo-red-svg{width:106.4px}ytd-masthead svg#yt-logo-updated-svg{width:90px}ytd-masthead svg#yt-logo-red-updated-svg{width:97px}@media (max-width:656px){ytd-masthead.shell>*:first-child{padding-left:8px}ytd-masthead.shell>*:last-child{padding-right:8px}ytd-masthead.shell svg{margin-right:0}ytd-masthead #masthead-logo{-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}ytd-masthead.shell #yt-logo-svg,ytd-masthead.shell #yt-logo-red-svg{margin-left:4px}}@media (min-width:876px){ytd-masthead #masthead-logo{width:129px}}#masthead-skeleton-icons{display:flex;flex:1;flex-direction:row;justify-content:flex-end}ytd-masthead.masthead-finish #masthead-skeleton-icons{display:none}.masthead-skeleton-icon{border-radius:50%;height:32px;width:32px;margin:0 8px;background-color:hsl(0,0%,89%)}ytd-masthead.dark .masthead-skeleton-icon{background-color:hsl(0,0%,16%)}</style><style class="masthead_custom_styles" is="custom-style" id="ext-styles" nonce="JJUiP9gRByQ/c177/6iuyg">ytd-masthead .yt-icons-ext{color:var(--yt-spec-icon-active-other)}ytd-masthead svg#yt-logo-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead svg#yt-logo-red-updated-svg #youtube-red-paths path{fill:#282828}ytd-masthead.dark svg#yt-logo-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-svg #youtube-red-paths path,ytd-masthead.dark svg#yt-logo-updated-svg #youtube-paths path,ytd-masthead.dark svg#yt-logo-red-updated-svg #youtube-red-paths path,ytd-masthead.theater svg#yt-logo-svg #youtube-paths path,ytd-masthead.theater svg#yt-logo-red-svg #youtube-red-paths path{fill:rgb(255,255,255)}</style><style class="searchbox" nonce="JJUiP9gRByQ/c177/6iuyg">#search-input.ytd-searchbox-spt input{-webkit-appearance:none;-webkit-font-smoothing:antialiased;background-color:transparent;border:none;box-shadow:none;color:inherit;font-family:'Roboto','Noto',sans-serif;font-size:16px;font-weight:400;line-height:24px;margin-left:4px;max-width:100%;outline:none;text-align:inherit;width:100%;-ms-flex:1 1 0.000000001px;-webkit-flex:1;flex:1;-webkit-flex-basis:0.000000001px;flex-basis:0.000000001px}#search-container.ytd-searchbox-spt{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}#search-input.ytd-searchbox-spt #search::-webkit-input-placeholder{color:hsl(0,0%,53.3%)}#search-input.ytd-searchbox-spt #search::-moLine truncated