├── .DS_Store ├── README.md └── docs ├── .DS_Store ├── .github ├── .DS_Store └── workflows │ └── jekyll-gh-pages.yml ├── SEEAvatar_files ├── ad_status.js ├── base.js ├── bibtex.txt ├── cast_sender(1).js ├── cast_sender.js ├── embed.js ├── fetch-polyfill.js ├── remote.js ├── style.css ├── tUR9jtOhcuN8qeoeXnRQGExMe9QeBdn6F7LXrdB4oNs.js ├── www-embed-player.js └── www-player.css ├── animations ├── .DS_Store ├── avatar_compare.mp4 ├── avatar_mov.mp4 ├── batman.mp4 ├── beethoven.mp4 ├── bruce.mp4 ├── bruce_light1.mp4 ├── bruce_motion1.mp4 ├── elsa.mp4 ├── hillary.mp4 ├── jack.mp4 ├── joker.mp4 ├── joker_light1.mp4 ├── joker_motion1.mp4 ├── lincoln.mp4 ├── mozart.mp4 ├── obama.mp4 ├── open.mp4 ├── spiderman.mp4 ├── spiderman_light1.mp4 ├── spiderman_motion1.mp4 ├── strange.mp4 └── vincent.mp4 ├── figs ├── .DS_Store ├── method.jpg └── open.jpg └── index.html /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yoxu515/SEEAvatar/9e2a1c2f9114234341cf3f4eb91f224685c4cda9/.DS_Store -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 🧐SEEAvatar: Photorealistic Text-to-3D Avatar Generation with Constrained Geometry and Appearance 2 | 3 | [![Static Badge](https://img.shields.io/badge/Arxiv-red)](https://arxiv.org/abs/2312.08889) [![Static Badge](https://img.shields.io/badge/Project%20Page-blue) 4 | ](https://yoxu515.github.io/SEEAvatar/) 5 | -------------------------------------------------------------------------------- /docs/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yoxu515/SEEAvatar/9e2a1c2f9114234341cf3f4eb91f224685c4cda9/docs/.DS_Store -------------------------------------------------------------------------------- /docs/.github/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yoxu515/SEEAvatar/9e2a1c2f9114234341cf3f4eb91f224685c4cda9/docs/.github/.DS_Store -------------------------------------------------------------------------------- /docs/.github/workflows/jekyll-gh-pages.yml: -------------------------------------------------------------------------------- 1 | # Sample workflow for building and deploying a Jekyll site to GitHub Pages 2 | name: Deploy Jekyll with GitHub Pages dependencies preinstalled 3 | 4 | on: 5 | # Runs on pushes targeting the default branch 6 | push: 7 | branches: ["main"] 8 | 9 | # Allows you to run this workflow manually from the Actions tab 10 | workflow_dispatch: 11 | 12 | # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages 13 | permissions: 14 | contents: read 15 | pages: write 16 | id-token: write 17 | 18 | # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. 19 | # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. 20 | concurrency: 21 | group: "pages" 22 | cancel-in-progress: false 23 | 24 | jobs: 25 | # Build job 26 | build: 27 | runs-on: ubuntu-latest 28 | steps: 29 | - name: Checkout 30 | uses: actions/checkout@v3 31 | - name: Setup Pages 32 | uses: actions/configure-pages@v3 33 | - name: Build with Jekyll 34 | uses: actions/jekyll-build-pages@v1 35 | with: 36 | source: ./ 37 | destination: ./_site 38 | - name: Upload artifact 39 | uses: actions/upload-pages-artifact@v2 40 | 41 | # Deployment job 42 | deploy: 43 | environment: 44 | name: github-pages 45 | url: ${{ steps.deployment.outputs.page_url }} 46 | runs-on: ubuntu-latest 47 | needs: build 48 | steps: 49 | - name: Deploy to GitHub Pages 50 | id: deployment 51 | uses: actions/deploy-pages@v2 52 | -------------------------------------------------------------------------------- /docs/SEEAvatar_files/ad_status.js: -------------------------------------------------------------------------------- 1 | window.google_ad_status = 1; 2 | -------------------------------------------------------------------------------- /docs/SEEAvatar_files/bibtex.txt: -------------------------------------------------------------------------------- 1 | @article{ruiz2022dreambooth, 2 | title={DreamBooth: Fine Tuning Text-to-image Diffusion Models for Subject-Driven Generation}, 3 | author={Ruiz, Nataniel and Li, Yuanzhen and Jampani, Varun and Pritch, Yael and Rubinstein, Michael and Aberman, Kfir}, 4 | booktitle={arXiv preprint arxiv:2208.12242}, 5 | year={2022} 6 | } 7 | -------------------------------------------------------------------------------- /docs/SEEAvatar_files/cast_sender(1).js: -------------------------------------------------------------------------------- 1 | (function(){/* 2 | 3 | Copyright The Closure Library Authors. 4 | SPDX-License-Identifier: Apache-2.0 5 | */ 6 | 'use strict';var f,aa=function(a){var b=0;return function(){return b>>0)+"_",d=0,e=function(h){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new b(c+(h||"")+"_"+d++,h)};return e}); 9 | da("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;c>>0),ma=0,na=function(a, 13 | b,c){return a.call.apply(a.bind,arguments)},oa=function(a,b,c){if(!a)throw Error();if(2/g,xa=/"/g,ya=/'/g,za=/\x00/g,Aa=/[\x00&<>"']/;function Ba(){var a=r.navigator;return a&&(a=a.userAgent)?a:""}function B(a){return-1!=Ba().indexOf(a)};var Ca={},C=function(a,b,c){this.g=c===Ca?a:""};C.prototype.toString=function(){return this.g.toString()};var Da=function(a){if(a instanceof C&&a.constructor===C)return a.g;ra("expected object of type SafeHtml, got '"+a+"' of type "+la(a));return"type_error:SafeHtml"},Ea=new C(r.trustedTypes&&r.trustedTypes.emptyHTML||"",0,Ca);var Fa={MATH:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0},Ga=function(a){var b=!1,c;return function(){b||(c=a(),b=!0);return c}}(function(){if("undefined"===typeof document)return!1;var a=document.createElement("div"),b=document.createElement("div");b.appendChild(document.createElement("div"));a.appendChild(b);if(!a.firstChild)return!1;b=a.firstChild.firstChild;a.innerHTML=Da(Ea);return!b.parentElement});var Ia=function(a){var b={"&":"&","<":"<",">":">",""":'"'};var c=r.document.createElement("div");return a.replace(Ha,function(d,e){var h=b[d];if(h)return h;"#"==e.charAt(0)&&(e=Number("0"+e.slice(1)),isNaN(e)||(h=String.fromCharCode(e)));if(!h){h=d+" ";if(void 0===A){e=null;var k=r.trustedTypes;if(k&&k.createPolicy){try{e=k.createPolicy("goog#html",{createHTML:y,createScript:y,createScriptURL:y})}catch(l){r.console&&r.console.error(l.message)}A=e}else A=e}h=(e=A)?e.createHTML(h):h; 19 | h=new C(h,null,Ca);if(c.tagName&&Fa[c.tagName.toUpperCase()])throw Error("goog.dom.safe.setInnerHtml cannot be used to set content of "+c.tagName+".");if(Ga())for(;c.lastChild;)c.removeChild(c.lastChild);c.innerHTML=Da(h);h=c.firstChild.nodeValue.slice(0,-1)}return b[d]=h})},Ja=function(a){return a.replace(/&([^;]+);/g,function(b,c){switch(c){case "amp":return"&";case "lt":return"<";case "gt":return">";case "quot":return'"';default:return"#"!=c.charAt(0)||(c=Number("0"+c.slice(1)),isNaN(c))?b:String.fromCharCode(c)}})}, 20 | Ha=/&([^;\s<&]+);?/g;chrome.cast.Xa=function(a,b,c,d,e){this.sessionRequest=a;this.sessionListener=b;this.receiverListener=c;this.autoJoinPolicy=d||chrome.cast.ja.TAB_AND_ORIGIN_SCOPED;this.defaultActionPolicy=e||chrome.cast.ma.CREATE_SESSION;this.customDialLaunchCallback=null;this.invisibleSender=!1;this.additionalSessionRequests=[]};x("chrome.cast.ApiConfig",chrome.cast.Xa);chrome.cast.ib=function(a,b){this.appName=a;this.launchParameter=b||null};x("chrome.cast.DialRequest",chrome.cast.ib); 21 | chrome.cast.gb=function(a,b,c){this.receiver=a;this.appState=b;this.extraData=c||null};x("chrome.cast.DialLaunchData",chrome.cast.gb);chrome.cast.hb=function(a,b){this.doLaunch=a;this.launchParameter=b||null};x("chrome.cast.DialLaunchResponse",chrome.cast.hb); 22 | chrome.cast.Hb=function(a,b,c,d,e){c=void 0===c?chrome.cast.timeout.requestSession:c;this.appId=a;this.capabilities=Array.isArray(b)?b:[];this.requestSessionTimeout=c;this.dialRequest=this.language=null;this.androidReceiverCompatible=void 0===d?!1:d;this.credentialsData=void 0===e?null:e};x("chrome.cast.SessionRequest",chrome.cast.Hb); 23 | chrome.cast.Ab=function(a,b,c,d){this.label=a;a=b;Aa.test(a)&&(-1!=a.indexOf("&")&&(a=a.replace(ua,"&")),-1!=a.indexOf("<")&&(a=a.replace(va,"<")),-1!=a.indexOf(">")&&(a=a.replace(wa,">")),-1!=a.indexOf('"')&&(a=a.replace(xa,""")),-1!=a.indexOf("'")&&(a=a.replace(ya,"'")),-1!=a.indexOf("\x00")&&(a=a.replace(za,"�")));this.friendlyName=a;this.capabilities=c||[];this.volume=d||null;this.receiverType=chrome.cast.Aa.CAST;this.displayStatus=this.isActiveInput=null}; 24 | x("chrome.cast.Receiver",chrome.cast.Ab);chrome.cast.Cb=function(a,b){this.statusText=a;this.appImages=b;this.showStop=null};x("chrome.cast.ReceiverDisplayStatus",chrome.cast.Cb);chrome.cast.Da=function(){this.requestSession=6E4;this.getDialAppInfo=this.sendCustomMessage=this.setReceiverVolume=this.stopSession=this.leaveSession=3E3};x("chrome.cast.Timeout",chrome.cast.Da);chrome.cast.timeout=new chrome.cast.Da;x("chrome.cast.timeout",chrome.cast.timeout);chrome.cast.Wa="auto-join"; 25 | chrome.cast.ub="cast-session_";chrome.cast.media.nb={SDR:"sdr",HDR:"hdr",DV:"dv"};x("chrome.cast.media.HdrType",chrome.cast.media.nb);chrome.cast.media.ob={AAC:"aac",AC3:"ac3",MP3:"mp3",TS:"ts",TS_AAC:"ts_aac",E_AC3:"e_ac3",FMP4:"fmp4"};x("chrome.cast.media.HlsSegmentFormat",chrome.cast.media.ob);chrome.cast.media.pb={MPEG2_TS:"mpeg2_ts",FMP4:"fmp4"};x("chrome.cast.media.HlsVideoSegmentFormat",chrome.cast.media.pb);chrome.cast.media.sb={PAUSE:"pause",SEEK:"seek",STREAM_VOLUME:"stream_volume",STREAM_MUTE:"stream_mute"}; 26 | x("chrome.cast.media.MediaCommand",chrome.cast.media.sb);chrome.cast.media.yb={ALBUM:"ALBUM",PLAYLIST:"PLAYLIST",AUDIOBOOK:"AUDIOBOOK",RADIO_STATION:"RADIO_STATION",PODCAST_SERIES:"PODCAST_SERIES",TV_SERIES:"TV_SERIES",VIDEO_PLAYLIST:"VIDEO_PLAYLIST",LIVE_TV:"LIVE_TV",MOVIE:"MOVIE"};x("chrome.cast.media.QueueType",chrome.cast.media.yb);chrome.cast.media.W={GENERIC_CONTAINER:0,AUDIOBOOK_CONTAINER:1};x("chrome.cast.media.ContainerType",chrome.cast.media.W); 27 | chrome.cast.media.G={GENERIC:0,MOVIE:1,TV_SHOW:2,MUSIC_TRACK:3,PHOTO:4,AUDIOBOOK_CHAPTER:5};x("chrome.cast.media.MetadataType",chrome.cast.media.G);chrome.cast.media.F={IDLE:"IDLE",PLAYING:"PLAYING",PAUSED:"PAUSED",BUFFERING:"BUFFERING"};x("chrome.cast.media.PlayerState",chrome.cast.media.F);chrome.cast.media.X={OFF:"REPEAT_OFF",ALL:"REPEAT_ALL",SINGLE:"REPEAT_SINGLE",ALL_AND_SHUFFLE:"REPEAT_ALL_AND_SHUFFLE"};x("chrome.cast.media.RepeatMode",chrome.cast.media.X); 28 | chrome.cast.media.Db={PLAYBACK_START:"PLAYBACK_START",PLAYBACK_PAUSE:"PLAYBACK_PAUSE"};x("chrome.cast.media.ResumeState",chrome.cast.media.Db);chrome.cast.media.Ca={BUFFERED:"BUFFERED",LIVE:"LIVE",OTHER:"OTHER"};x("chrome.cast.media.StreamType",chrome.cast.media.Ca);chrome.cast.media.qb={CANCELLED:"CANCELLED",INTERRUPTED:"INTERRUPTED",FINISHED:"FINISHED",ERROR:"ERROR"};x("chrome.cast.media.IdleReason",chrome.cast.media.qb);chrome.cast.media.Pb={TEXT:"TEXT",AUDIO:"AUDIO",VIDEO:"VIDEO"}; 29 | x("chrome.cast.media.TrackType",chrome.cast.media.Pb);chrome.cast.media.Mb={SUBTITLES:"SUBTITLES",CAPTIONS:"CAPTIONS",DESCRIPTIONS:"DESCRIPTIONS",CHAPTERS:"CHAPTERS",METADATA:"METADATA"};x("chrome.cast.media.TextTrackType",chrome.cast.media.Mb);chrome.cast.media.Ib={NONE:"NONE",OUTLINE:"OUTLINE",DROP_SHADOW:"DROP_SHADOW",RAISED:"RAISED",DEPRESSED:"DEPRESSED"};x("chrome.cast.media.TextTrackEdgeType",chrome.cast.media.Ib);chrome.cast.media.Nb={NONE:"NONE",NORMAL:"NORMAL",ROUNDED_CORNERS:"ROUNDED_CORNERS"}; 30 | x("chrome.cast.media.TextTrackWindowType",chrome.cast.media.Nb);chrome.cast.media.Jb={SANS_SERIF:"SANS_SERIF",MONOSPACED_SANS_SERIF:"MONOSPACED_SANS_SERIF",SERIF:"SERIF",MONOSPACED_SERIF:"MONOSPACED_SERIF",CASUAL:"CASUAL",CURSIVE:"CURSIVE",SMALL_CAPITALS:"SMALL_CAPITALS"};x("chrome.cast.media.TextTrackFontGenericFamily",chrome.cast.media.Jb);chrome.cast.media.Kb={NORMAL:"NORMAL",BOLD:"BOLD",BOLD_ITALIC:"BOLD_ITALIC",ITALIC:"ITALIC"};x("chrome.cast.media.TextTrackFontStyle",chrome.cast.media.Kb); 31 | chrome.cast.media.Qb={LIKE:"LIKE",DISLIKE:"DISLIKE",FOLLOW:"FOLLOW",UNFOLLOW:"UNFOLLOW"};x("chrome.cast.media.UserAction",chrome.cast.media.Qb);chrome.cast.media.oa=function(){this.customData=null};x("chrome.cast.media.GetStatusRequest",chrome.cast.media.oa);chrome.cast.media.sa=function(){this.customData=null};x("chrome.cast.media.PauseRequest",chrome.cast.media.sa);chrome.cast.media.ua=function(){this.customData=null};x("chrome.cast.media.PlayRequest",chrome.cast.media.ua);chrome.cast.media.Eb=function(){this.customData=this.resumeState=this.currentTime=null};x("chrome.cast.media.SeekRequest",chrome.cast.media.Eb); 32 | chrome.cast.media.Ba=function(){this.customData=null};x("chrome.cast.media.StopRequest",chrome.cast.media.Ba);chrome.cast.media.Vb=function(a){this.volume=a;this.customData=null};x("chrome.cast.media.VolumeRequest",chrome.cast.media.Vb); 33 | chrome.cast.media.rb=function(a){this.type="LOAD";this.requestId=0;this.sessionId=null;this.media=a;this.activeTrackIds=null;this.autoplay=!0;this.atvCredentialsType=this.atvCredentials=this.credentialsType=this.credentials=void 0;this.customData=this.currentTime=null;this.queueData=this.playbackRate=void 0};x("chrome.cast.media.LoadRequest",chrome.cast.media.rb);chrome.cast.media.vb=function(a){this.type="PRECACHE";this.requestId=0;this.precacheData=a}; 34 | chrome.cast.media.jb=function(a,b){this.requestId=0;this.activeTrackIds=a||null;this.textTrackStyle=b||null};x("chrome.cast.media.EditTracksInfoRequest",chrome.cast.media.jb);chrome.cast.media.V=function(a){this.containerType=a=void 0===a?chrome.cast.media.W.GENERIC_CONTAINER:a;this.containerDuration=this.containerImages=this.sections=this.title=void 0};x("chrome.cast.media.ContainerMetadata",chrome.cast.media.V); 35 | chrome.cast.media.MediaMetadata=function(a){this.metadataType=this.type=a;this.queueItemId=this.sectionStartTimeInContainer=this.sectionStartAbsoluteTime=this.sectionStartTimeInMedia=this.sectionDuration=void 0};x("chrome.cast.media.MediaMetadata",chrome.cast.media.MediaMetadata);chrome.cast.media.na=function(){chrome.cast.media.MediaMetadata.call(this,chrome.cast.media.G.GENERIC);this.releaseDate=this.releaseYear=this.images=this.subtitle=this.title=void 0};q(chrome.cast.media.na,chrome.cast.media.MediaMetadata); 36 | x("chrome.cast.media.GenericMediaMetadata",chrome.cast.media.na);chrome.cast.media.qa=function(){chrome.cast.media.MediaMetadata.call(this,chrome.cast.media.G.MOVIE);this.releaseDate=this.releaseYear=this.images=this.subtitle=this.studio=this.title=void 0};q(chrome.cast.media.qa,chrome.cast.media.MediaMetadata);x("chrome.cast.media.MovieMediaMetadata",chrome.cast.media.qa); 37 | chrome.cast.media.Ea=function(){chrome.cast.media.MediaMetadata.call(this,chrome.cast.media.G.TV_SHOW);this.originalAirdate=this.releaseYear=this.images=this.episode=this.episodeNumber=this.season=this.seasonNumber=this.episodeTitle=this.title=this.seriesTitle=void 0};q(chrome.cast.media.Ea,chrome.cast.media.MediaMetadata);x("chrome.cast.media.TvShowMediaMetadata",chrome.cast.media.Ea); 38 | chrome.cast.media.ra=function(){chrome.cast.media.MediaMetadata.call(this,chrome.cast.media.G.MUSIC_TRACK);this.releaseDate=this.releaseYear=this.images=this.discNumber=this.trackNumber=this.artistName=this.songName=this.composer=this.artist=this.albumArtist=this.title=this.albumName=void 0};q(chrome.cast.media.ra,chrome.cast.media.MediaMetadata);x("chrome.cast.media.MusicTrackMediaMetadata",chrome.cast.media.ra); 39 | chrome.cast.media.ta=function(){chrome.cast.media.MediaMetadata.call(this,chrome.cast.media.G.PHOTO);this.creationDateTime=this.height=this.width=this.longitude=this.latitude=this.images=this.location=this.artist=this.title=void 0};q(chrome.cast.media.ta,chrome.cast.media.MediaMetadata);x("chrome.cast.media.PhotoMediaMetadata",chrome.cast.media.ta); 40 | chrome.cast.media.ia=function(){chrome.cast.media.V.call(this,chrome.cast.media.W.AUDIOBOOK_CONTAINER);this.releaseDate=this.publisher=this.narrators=this.authors=void 0};q(chrome.cast.media.ia,chrome.cast.media.V);x("chrome.cast.media.AudiobookContainerMetadata",chrome.cast.media.ia);chrome.cast.media.ha=function(){chrome.cast.media.MediaMetadata.call(this,chrome.cast.media.G.AUDIOBOOK_CHAPTER);this.images=this.subtitle=this.bookTitle=this.chapterNumber=this.title=this.chapterTitle=void 0}; 41 | q(chrome.cast.media.ha,chrome.cast.media.MediaMetadata);x("chrome.cast.media.AudiobookChapterMediaMetadata",chrome.cast.media.ha); 42 | chrome.cast.media.tb=function(a,b){this.contentId=a;this.contentUrl=void 0;this.streamType=chrome.cast.media.Ca.BUFFERED;this.contentType=b;this.metadata=null;this.atvEntity=this.entity=void 0;this.duration=null;this.startAbsoluteTime=void 0;this.customData=this.textTrackStyle=this.tracks=null;this.userActionStates=this.hlsVideoSegmentFormat=this.hlsSegmentFormat=this.vmapAdsRequest=this.breakClips=this.breaks=void 0};x("chrome.cast.media.MediaInfo",chrome.cast.media.tb); 43 | chrome.cast.media.wa=function(a){this.itemId=null;this.media=a;this.autoplay=!0;this.startTime=0;this.playbackDuration=null;this.preloadTime=0;this.customData=this.activeTrackIds=null};x("chrome.cast.media.QueueItem",chrome.cast.media.wa);chrome.cast.media.eb="CC1AD845";x("chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID",chrome.cast.media.eb);chrome.cast.media.timeout={};chrome.cast.media.timeout.load=0;x("chrome.cast.media.timeout.load",chrome.cast.media.timeout.load); 44 | chrome.cast.media.timeout.T=0;x("chrome.cast.media.timeout.getStatus",chrome.cast.media.timeout.T);chrome.cast.media.timeout.play=0;x("chrome.cast.media.timeout.play",chrome.cast.media.timeout.play);chrome.cast.media.timeout.pause=0;x("chrome.cast.media.timeout.pause",chrome.cast.media.timeout.pause);chrome.cast.media.timeout.seek=0;x("chrome.cast.media.timeout.seek",chrome.cast.media.timeout.seek);chrome.cast.media.timeout.stop=0;x("chrome.cast.media.timeout.stop",chrome.cast.media.timeout.stop); 45 | chrome.cast.media.timeout.U=0;x("chrome.cast.media.timeout.setVolume",chrome.cast.media.timeout.U);chrome.cast.media.timeout.S=0;x("chrome.cast.media.timeout.editTracksInfo",chrome.cast.media.timeout.S);chrome.cast.media.timeout.v=0;x("chrome.cast.media.timeout.queue",chrome.cast.media.timeout.v);chrome.cast.media.Ob=function(a,b){this.trackId=a;this.trackContentType=this.trackContentId=null;this.type=b;this.customData=this.subtype=this.language=this.name=null};x("chrome.cast.media.Track",chrome.cast.media.Ob); 46 | chrome.cast.media.Lb=function(){this.customData=this.fontStyle=this.fontGenericFamily=this.fontFamily=this.fontScale=this.windowRoundedCornerRadius=this.windowColor=this.windowType=this.edgeColor=this.edgeType=this.backgroundColor=this.foregroundColor=null};x("chrome.cast.media.TextTrackStyle",chrome.cast.media.Lb);chrome.cast.media.xb=function(a){this.type="QUEUE_LOAD";this.sessionId=this.requestId=null;this.items=a;this.startIndex=0;this.repeatMode=chrome.cast.media.X.OFF;this.customData=null}; 47 | x("chrome.cast.media.QueueLoadRequest",chrome.cast.media.xb);chrome.cast.media.va=function(a){this.type="QUEUE_INSERT";this.sessionId=this.requestId=null;this.items=a;this.customData=this.insertBefore=null};x("chrome.cast.media.QueueInsertItemsRequest",chrome.cast.media.va);chrome.cast.media.zb=function(a){this.type="QUEUE_UPDATE";this.sessionId=this.requestId=null;this.items=a;this.customData=null};x("chrome.cast.media.QueueUpdateItemsRequest",chrome.cast.media.zb); 48 | chrome.cast.media.P=function(){this.type="QUEUE_UPDATE";this.customData=this.jump=this.currentItemId=this.sessionId=this.requestId=null};x("chrome.cast.media.QueueJumpRequest",chrome.cast.media.P);chrome.cast.media.za=function(){this.type="QUEUE_UPDATE";this.customData=this.repeatMode=this.sessionId=this.requestId=null};x("chrome.cast.media.QueueSetPropertiesRequest",chrome.cast.media.za); 49 | chrome.cast.media.xa=function(a){this.type="QUEUE_REMOVE";this.sessionId=this.requestId=null;this.itemIds=a;this.customData=null};x("chrome.cast.media.QueueRemoveItemsRequest",chrome.cast.media.xa);chrome.cast.media.ya=function(a){this.type="QUEUE_REORDER";this.sessionId=this.requestId=null;this.itemIds=a;this.customData=this.insertBefore=null};x("chrome.cast.media.QueueReorderItemsRequest",chrome.cast.media.ya); 50 | chrome.cast.media.Ya=function(a,b,c){this.id=a;this.breakClipIds=b;this.position=c;this.duration=void 0;this.isWatched=!1;this.isEmbedded=void 0};x("chrome.cast.media.Break",chrome.cast.media.Ya);chrome.cast.media.Za=function(a){this.id=a;this.vastAdsRequest=this.customData=this.hlsSegmentFormat=this.clickThroughUrl=this.posterUrl=this.whenSkippable=this.duration=this.title=this.contentType=this.contentUrl=this.contentId=void 0};x("chrome.cast.media.BreakClip",chrome.cast.media.Za); 51 | chrome.cast.media.Sb=function(){this.adsResponse=this.adTagUrl=void 0};x("chrome.cast.media.VastAdsRequest",chrome.cast.media.Sb);chrome.cast.media.ab=function(){this.whenSkippable=this.breakClipId=this.breakId=this.currentBreakClipTime=this.currentBreakTime=void 0};x("chrome.cast.media.BreakStatus",chrome.cast.media.ab);chrome.cast.media.pa=function(a,b,c,d){this.start=a;this.end=b;this.isMovingWindow=c;this.isLiveDone=d};x("chrome.cast.media.LiveSeekableRange",chrome.cast.media.pa); 52 | chrome.cast.media.wb=function(a,b,c,d,e,h,k){this.id=a;this.queueType=this.entity=void 0;this.name=b;this.description=c;this.repeatMode=d;this.shuffle=!1;this.items=e;this.startIndex=h;this.startTime=k;this.containerMetadata=void 0};x("chrome.cast.media.QueueData",chrome.cast.media.wb);chrome.cast.media.Rb=function(a){this.userAction=a;this.customData=void 0};x("chrome.cast.media.UserActionState",chrome.cast.media.Rb);chrome.cast.media.Tb=function(a,b,c){this.width=a;this.height=b;this.hdrType=c}; 53 | x("chrome.cast.media.VideoInformation",chrome.cast.media.Tb);chrome.cast.media.h=function(a,b){this.sessionId=a;this.mediaSessionId=b;this.media=null;this.videoInfo=this.queueData=void 0;this.playbackRate=1;this.playerState=chrome.cast.media.F.IDLE;this.currentTime=0;this.g=-1;this.supportedMediaCommands=[];this.volume=new chrome.cast.Volume;this.items=this.preloadedItemId=this.loadingItemId=this.currentItemId=this.customData=this.activeTrackIds=this.idleReason=null;this.repeatMode=chrome.cast.media.X.OFF;this.breakStatus=void 0;this.l=!1;this.i=[];this.liveSeekableRange= 54 | void 0};f=chrome.cast.media.h.prototype;f.T=function(a,b,c){a||(a=new chrome.cast.media.oa);D.o(this,"MEDIA_GET_STATUS",a,b,c,chrome.cast.media.timeout.T)};f.play=function(a,b,c){this.Ka(D,a,b,c)};f.Ka=function(a,b,c,d){b||(b=new chrome.cast.media.ua);a.o(this,"PLAY",b,c,d,chrome.cast.media.timeout.play)};f.pause=function(a,b,c){this.Ja(D,a,b,c)};f.Ja=function(a,b,c,d){b||(b=new chrome.cast.media.sa);a.o(this,"PAUSE",b,c,d,chrome.cast.media.timeout.pause)}; 55 | f.seek=function(a,b,c){D.o(this,"SEEK",a,b,c,chrome.cast.media.timeout.seek)};f.stop=function(a,b,c){a||(a=new chrome.cast.media.Ba);D.o(this,"STOP_MEDIA",a,b,c,chrome.cast.media.timeout.stop)};f.U=function(a,b,c){D.o(this,"MEDIA_SET_VOLUME",a,b,c,chrome.cast.media.timeout.U)};f.S=function(a,b,c){D.o(this,"EDIT_TRACKS_INFO",a,b,c,chrome.cast.media.timeout.S)};f.mc=function(a,b,c){D.o(this,"QUEUE_INSERT",a,b,c,chrome.cast.media.timeout.v)}; 56 | f.lc=function(a,b,c){D.o(this,"QUEUE_INSERT",new chrome.cast.media.va([a]),b,c,chrome.cast.media.timeout.v)};f.wc=function(a,b,c){D.o(this,"QUEUE_UPDATE",a,b,c,chrome.cast.media.timeout.v)};f.rc=function(a,b){var c=new chrome.cast.media.P;c.jump=-1;D.o(this,"QUEUE_UPDATE",c,a,b,chrome.cast.media.timeout.v)};f.qc=function(a,b){var c=new chrome.cast.media.P;c.jump=1;D.o(this,"QUEUE_UPDATE",c,a,b,chrome.cast.media.timeout.v)}; 57 | f.nc=function(a,b,c){if(!(0>Ka(this,a))){var d=new chrome.cast.media.P;d.currentItemId=a;D.o(this,"QUEUE_UPDATE",d,b,c,chrome.cast.media.timeout.v)}};f.vc=function(a,b,c){var d=new chrome.cast.media.za;d.repeatMode=a;D.o(this,"QUEUE_UPDATE",d,b,c,chrome.cast.media.timeout.v)};f.tc=function(a,b,c){D.o(this,"QUEUE_REMOVE",a,b,c,chrome.cast.media.timeout.v)};f.sc=function(a,b,c){0>Ka(this,a)||D.o(this,"QUEUE_REMOVE",new chrome.cast.media.xa([a]),b,c,chrome.cast.media.timeout.v)}; 58 | f.uc=function(a,b,c){D.o(this,"QUEUE_REORDER",a,b,c,chrome.cast.media.timeout.v)};f.pc=function(a,b,c,d){var e=Ka(this,a);if(!(0>e))if(0>b)d&&d(new chrome.cast.Error(chrome.cast.C.INVALID_PARAMETER));else if(e==b)c&&c();else{var h=null;b=b>e?b+1:b;bthis.media.duration&&-1!=this.media.duration&&(a=this.media.duration);0>a&&(a=0);return a}return this.currentTime};f.cc=function(){if(this.breakStatus&&void 0!==this.breakStatus.currentBreakTime)return this.playerState==chrome.cast.media.F.PLAYING&&0<=this.g?this.breakStatus.currentBreakTime+(Date.now()-this.g)/1E3:this.breakStatus.currentBreakTime}; 60 | f.bc=function(){if(this.breakStatus&&void 0!==this.breakStatus.currentBreakClipTime)return this.playerState==chrome.cast.media.F.PLAYING&&0<=this.g?this.breakStatus.currentBreakClipTime+(Date.now()-this.g)/1E3:this.breakStatus.currentBreakClipTime}; 61 | f.dc=function(){if(this.liveSeekableRange&&void 0!==this.liveSeekableRange.start&&void 0!==this.liveSeekableRange.end){if(this.playerState==chrome.cast.media.F.PLAYING&&0<=this.g){var a=(Date.now()-this.g)/1E3,b=new chrome.cast.media.pa;b.isMovingWindow=this.liveSeekableRange.isMovingWindow;b.isLiveDone=this.liveSeekableRange.isLiveDone;b.start=b.isMovingWindow?this.liveSeekableRange.start+a:this.liveSeekableRange.start;b.end=b.isLiveDone?this.liveSeekableRange.end:this.liveSeekableRange.end+a;return b}return this.liveSeekableRange}}; 62 | f.aa=function(a){this.M(D,a)};f.M=function(a,b){a.Xb(this,b)};f.da=function(a){this.O(D,a)};f.O=function(a,b){D.yc(this,b)};var Ka=function(a,b){return ta(a.items,function(c){return c.itemId==b})};x("chrome.cast.media.Media",chrome.cast.media.h);chrome.cast.media.h.prototype.removeUpdateListenerWithContext=chrome.cast.media.h.prototype.O;chrome.cast.media.h.prototype.removeUpdateListener=chrome.cast.media.h.prototype.da;chrome.cast.media.h.prototype.addUpdateListenerWithContext=chrome.cast.media.h.prototype.M; 63 | chrome.cast.media.h.prototype.addUpdateListener=chrome.cast.media.h.prototype.aa;chrome.cast.media.h.prototype.getEstimatedLiveSeekableRange=chrome.cast.media.h.prototype.dc;chrome.cast.media.h.prototype.getEstimatedBreakClipTime=chrome.cast.media.h.prototype.bc;chrome.cast.media.h.prototype.getEstimatedBreakTime=chrome.cast.media.h.prototype.cc;chrome.cast.media.h.prototype.getEstimatedTime=chrome.cast.media.h.prototype.ec;chrome.cast.media.h.prototype.supportsCommand=chrome.cast.media.h.prototype.Hc; 64 | chrome.cast.media.h.prototype.queueMoveItemToNewIndex=chrome.cast.media.h.prototype.pc;chrome.cast.media.h.prototype.queueReorderItems=chrome.cast.media.h.prototype.uc;chrome.cast.media.h.prototype.queueRemoveItem=chrome.cast.media.h.prototype.sc;chrome.cast.media.h.prototype.queueRemoveItems=chrome.cast.media.h.prototype.tc;chrome.cast.media.h.prototype.queueSetRepeatMode=chrome.cast.media.h.prototype.vc;chrome.cast.media.h.prototype.queueJumpToItem=chrome.cast.media.h.prototype.nc; 65 | chrome.cast.media.h.prototype.queueNext=chrome.cast.media.h.prototype.qc;chrome.cast.media.h.prototype.queuePrev=chrome.cast.media.h.prototype.rc;chrome.cast.media.h.prototype.queueUpdateItems=chrome.cast.media.h.prototype.wc;chrome.cast.media.h.prototype.queueAppendItem=chrome.cast.media.h.prototype.lc;chrome.cast.media.h.prototype.queueInsertItems=chrome.cast.media.h.prototype.mc;chrome.cast.media.h.prototype.editTracksInfo=chrome.cast.media.h.prototype.S; 66 | chrome.cast.media.h.prototype.setVolume=chrome.cast.media.h.prototype.U;chrome.cast.media.h.prototype.stop=chrome.cast.media.h.prototype.stop;chrome.cast.media.h.prototype.seek=chrome.cast.media.h.prototype.seek;chrome.cast.media.h.prototype.pauseWithContext=chrome.cast.media.h.prototype.Ja;chrome.cast.media.h.prototype.pause=chrome.cast.media.h.prototype.pause;chrome.cast.media.h.prototype.playWithContext=chrome.cast.media.h.prototype.Ka;chrome.cast.media.h.prototype.play=chrome.cast.media.h.prototype.play; 67 | chrome.cast.media.h.prototype.getStatus=chrome.cast.media.h.prototype.T;var D=null;var La=function(a,b,c){this.sessionId=a;this.namespaceName=b;this.message=c};var Ma=function(a,b){this.type="SET_VOLUME";this.requestId=0;this.volume=a;this.expectedVolume=b||null};var Na=function(a){this.type="STOP";this.requestId=0;this.sessionId=a||null};chrome.cast.j=function(a,b,c,d,e){this.sessionId=a;this.appId=b;this.displayName=c;this.statusText=null;this.appImages=d;this.receiver=e;this.senderApps=[];this.namespaces=[];this.media=[];this.status=chrome.cast.L.CONNECTED;this.transportId=""};f=chrome.cast.j.prototype;f.Fc=function(a,b,c){this.Sa(D,a,b,c)};f.Sa=function(a,b,c,d){b=new Ma(new chrome.cast.Volume(b,null),this.receiver.volume);a.setReceiverVolume(this.sessionId,b,c,d)};f.Ec=function(a,b,c){this.Ra(D,a,b,c)}; 68 | f.Ra=function(a,b,c,d){a=new Ma(new chrome.cast.Volume(null,b),this.receiver.volume);D.setReceiverVolume(this.sessionId,a,c,d)};f.getDialAppInfo=function(a,b){this.Ia(D,a,b)};f.Ia=function(a,b,c){a.getDialAppInfo(b,c)};f.hc=function(a,b){D.leaveSession(this.sessionId,a,b)};f.stop=function(a,b){this.Ua(D,a,b)};f.Ua=function(a,b,c){a.Oa(new Na(this.sessionId),b,c,chrome.cast.timeout.stopSession)};f.sendMessage=function(a,b,c,d){this.Qa(D,a,b,c,d)}; 69 | f.Qa=function(a,b,c,d,e){a.Bc(new La(this.sessionId,b,c),d,e)};f.aa=function(a){this.M(D,a)};f.M=function(a,b){a.Zb(this.sessionId,b)};f.da=function(a){this.O(D,a)};f.O=function(a,b){a.Ac(this.sessionId,b)};f.Yb=function(a,b){this.Ga(D,a,b)};f.Ga=function(a,b,c){a.Wb(this.sessionId,b,c)};f.Y=function(a){this.Fa(D,a)};f.Fa=function(a,b){a.Y(this.sessionId,b)};f.ba=function(a){this.La(D,a)};f.La=function(a,b){a.ba(this.sessionId,b)};f.zc=function(a,b){this.Ma(D,a,b)}; 70 | f.Ma=function(a,b,c){a.xc(this.sessionId,b,c)};f.ic=function(a,b,c){a.sessionId=this.sessionId;D.Pa(a,"LOAD",b,c)};f.oc=function(a,b,c){a.sessionId=this.sessionId;D.Pa(a,"QUEUE_LOAD",b,c)};x("chrome.cast.Session",chrome.cast.j);chrome.cast.j.prototype.queueLoad=chrome.cast.j.prototype.oc;chrome.cast.j.prototype.loadMedia=chrome.cast.j.prototype.ic;chrome.cast.j.prototype.removeMessageListenerWithContext=chrome.cast.j.prototype.Ma;chrome.cast.j.prototype.removeMessageListener=chrome.cast.j.prototype.zc; 71 | chrome.cast.j.prototype.removeMediaListenerWithContext=chrome.cast.j.prototype.La;chrome.cast.j.prototype.removeMediaListener=chrome.cast.j.prototype.ba;chrome.cast.j.prototype.addMediaListenerWithContext=chrome.cast.j.prototype.Fa;chrome.cast.j.prototype.addMediaListener=chrome.cast.j.prototype.Y;chrome.cast.j.prototype.addMessageListenerWithContext=chrome.cast.j.prototype.Ga;chrome.cast.j.prototype.addMessageListener=chrome.cast.j.prototype.Yb; 72 | chrome.cast.j.prototype.removeUpdateListenerWithContext=chrome.cast.j.prototype.O;chrome.cast.j.prototype.removeUpdateListener=chrome.cast.j.prototype.da;chrome.cast.j.prototype.addUpdateListenerWithContext=chrome.cast.j.prototype.M;chrome.cast.j.prototype.addUpdateListener=chrome.cast.j.prototype.aa;chrome.cast.j.prototype.sendMessageWithContext=chrome.cast.j.prototype.Qa;chrome.cast.j.prototype.sendMessage=chrome.cast.j.prototype.sendMessage;chrome.cast.j.prototype.stopWithContext=chrome.cast.j.prototype.Ua; 73 | chrome.cast.j.prototype.stop=chrome.cast.j.prototype.stop;chrome.cast.j.prototype.leave=chrome.cast.j.prototype.hc;chrome.cast.j.prototype.getDialAppInfoWithContext=chrome.cast.j.prototype.Ia;chrome.cast.j.prototype.getDialAppInfo=chrome.cast.j.prototype.getDialAppInfo;chrome.cast.j.prototype.setReceiverMutedWithContext=chrome.cast.j.prototype.Ra;chrome.cast.j.prototype.setReceiverMuted=chrome.cast.j.prototype.Ec;chrome.cast.j.prototype.setReceiverVolumeLevelWithContext=chrome.cast.j.prototype.Sa; 74 | chrome.cast.j.prototype.setReceiverVolumeLevel=chrome.cast.j.prototype.Fc;var Oa=function(a,b){this.g=a[r.Symbol.iterator]();this.i=b};Oa.prototype[Symbol.iterator]=function(){return this};Oa.prototype.next=function(){var a=this.g.next();return{value:a.done?void 0:this.i.call(void 0,a.value),done:a.done}};var Pa=function(a,b){return new Oa(a,b)};var Qa=Object.freeze||function(a){return a};var E=function(){};E.prototype.next=function(){return Ra};var Ra=Qa({done:!0,value:void 0});E.prototype.s=function(){return this};var Sa=function(a){if(a instanceof E)return a;if("function"==typeof a.s)return a.s(!1);if(t(a)){var b=0,c=new E;c.next=function(){for(;;){if(b>=a.length)return Ra;if(b in a)return{value:a[b++],done:!1};b++}};return c}throw Error("Not implemented");},F=function(a,b){if(t(a))sa(a,b);else for(a=Sa(a);;){var c=a.next();if(c.done)break;b.call(void 0,c.value,void 0,a)}};var Ta=function(a){if(a instanceof G||a instanceof H||a instanceof I)return a;if("function"==typeof a.next)return new G(function(){return a});if("function"==typeof a[Symbol.iterator])return new G(function(){return a[Symbol.iterator]()});if("function"==typeof a.s)return new G(function(){return a.s()});throw Error("Not an iterator or iterable.");},G=function(a){this.g=a};G.prototype.s=function(){return new H(this.g())};G.prototype[Symbol.iterator]=function(){return new I(this.g())};G.prototype.i=function(){return new I(this.g())}; 75 | var H=function(a){this.g=a};q(H,E);H.prototype.next=function(){return this.g.next()};H.prototype[Symbol.iterator]=function(){return new I(this.g)};H.prototype.i=function(){return new I(this.g)};var I=function(a){G.call(this,function(){return a});this.l=a};q(I,G);I.prototype.next=function(){return this.l.next()};var J=function(a,b){this.i={};this.g=[];this.l=this.size=0;var c=arguments.length;if(12*a.size&&K(a),!0):!1},K=function(a){if(a.size!=a.g.length){for(var b=0,c=0;b=d.g.length)return Ra;var h=d.g[b++];return{value:a?h:d.i[h],done:!1}};return e};var L=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)};var Va=function(a,b){this.requestId=a;this.m=b;this.Va=null};Va.prototype.i=function(){};var Wa=function(){this.g=new J},Xa=function(a,b){a.g.set(b.requestId,b);b.Va=setTimeout(function(){M(a.g,b.requestId);b.i()},b.m)},Ya=function(a,b){var c=a.g.get(b);if(!c)return null;clearTimeout(c.Va);M(a.g,b);return c};var N=function(a,b,c,d){Va.call(this,a,d||6E5);this.l=b;this.g=c};q(N,Va);N.prototype.i=function(){this.g(new chrome.cast.Error(chrome.cast.C.TIMEOUT))};var O=function(a,b,c,d){this.type=a;this.message=b;this.sequenceNumber=void 0!==c?c:-1;this.timeoutMillis=d||0;this.clientId=""};var P=function(a){this.l=a;this.i=String(Date.now())+String(Math.floor(1E5*Math.random()));this.g=null},Za=function(a,b){if(!a.g)return"No active session";b.clientId=a.i;b=JSON.stringify(b);if(32768>=8);b[c++]=e}a=void 0;void 0===a&&(a=0);if(!S)for(S={},c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),d=["+/=","+/","-_=","-_.","-_"],e=0;5>e;e++){var h=c.concat(d[e].split(""));ob[e]=h;for(var k=0;k>2];p=a[(p&3)<<4|v>>4];v=a[(v&15)<<2|l>>6];l=a[l&63];c[e++]=""+k+p+v+l}k=0;l=d;switch(b.length-h){case 2:k=b[h+1],l=a[(k&15)<<2]||d;case 1:b=b[h],c[e]=""+a[b>>2]+a[(b&3)<<4|k>>4]+l+d}b=c.join("")}return b};var rb=function(a){if(a.N&&"function"==typeof a.N)return a.N();if("undefined"!==typeof Map&&a instanceof Map||"undefined"!==typeof Set&&a instanceof Set)return Array.from(a.values());if("string"===typeof a)return a.split("");if(t(a)){for(var b=[],c=a.length,d=0;d"}else d=void 0===c?"undefined":null===c?"null":typeof c;w("Argument is not a %s (or a non-Element, non-Location mock); got: %s","HTMLScriptElement",d)}a instanceof A&&a.constructor===A?d=a.g:(d=typeof a,w("expected object of type TrustedResourceUrl, got '"+a+"' of type "+("object"!= 10 | d?d:a?Array.isArray(a)?"array":d:"null")),d="type_error:TrustedResourceUrl");c.src=d;(d=c.ownerDocument&&c.ownerDocument.defaultView)&&d!=m?d=q(d.document):(null===p&&(p=q(m.document)),d=p);d&&c.setAttribute("nonce",d);(document.head||document.documentElement).appendChild(c)},I=function(){var a=B(),b=[];if(1=c)return 0;if(1<=c)return 1;for(var d=0,e=1,f=0,h=0;8>h;h++){f=g.yo(a,c);var l=(g.yo(a,c+1E-6)-f)/1E-6;if(1E-6>Math.abs(f-b))return c;if(1E-6>Math.abs(l))break;else fh;h++)fc.Xt;c={Xt:c.Xt}, 7 | c.Xt++){var d=new g.X({F:"a",L:"ytp-suggestion-link",T:{href:"{{link}}",target:a.J,"aria-label":"{{aria_label}}"},S:[{F:"div",L:"ytp-suggestion-image",S:[{F:"div",T:{"data-is-live":"{{is_live}}"},L:"ytp-suggestion-duration",Z:"{{duration}}"}]},{F:"div",L:"ytp-suggestion-title",T:{title:"{{hover_title}}"},Z:"{{title}}"},{F:"div",L:"ytp-suggestion-author",Z:"{{views_or_author}}"}]});g.M(this,d);d.xa(this.suggestions.element);var e=d.ya("ytp-suggestion-link");g.yl(e,"transitionDelay",c.Xt/20+"s");this.C.P(e, 8 | "click",function(f){return function(h){var l=b.suggestionData[f.Xt],m=l.sessionData;g.AO(h,b.api,b.J,m||void 0)&&b.api.Gl(l.videoId,m,l.playlistId)}}(c)); 9 | this.u.push(d)}g.M(this,this.next);this.next.xa(this.element);this.next.Na("click",this.jU,this);this.C.P(this.api,"videodatachange",this.onVideoDataChange);this.resize(this.api.Za().getPlayerSize());this.onVideoDataChange();this.show()},e6=function(a){return a.suggestionData.length*(a.tileWidth+a.B)},n4a=function(a){a.next.element.style.bottom=a.D+"px"; 10 | a.previous.element.style.bottom=a.D+"px";var b=a.j,c=a.containerWidth-e6(a);g.N(a.element,"ytp-scroll-min",0<=b);g.N(a.element,"ytp-scroll-max",b<=c)},o4a=function(a){for(var b=0;ba.Yt;a={Yt:a.Yt},a.Yt++){var d=new g.X({F:"a",L:"ytp-suggestion-link",T:{href:"{{link}}",target:b.J,"aria-label":"{{aria_label}}"},S:[{F:"div",L:"ytp-suggestion-image"},{F:"div",L:"ytp-suggestion-overlay",T:{style:"{{blink_rendering_hack}}","aria-hidden":"{{aria_hidden}}"},S:[{F:"div",L:"ytp-suggestion-title",Z:"{{title}}"},{F:"div",L:"ytp-suggestion-author", 33 | Z:"{{author_and_views}}"},{F:"div",T:{"data-is-live":"{{is_live}}"},L:"ytp-suggestion-duration",Z:"{{duration}}"}]}]});g.M(this,d);d.xa(this.suggestions.element);var e=d.ya("ytp-suggestion-link");g.yl(e,"transitionDelay",a.Yt/20+"s");this.j.P(e,"click",function(f){return function(h){var l=f.Yt;if(1E3>(0,g.U)()-c.W)g.Gx(h),document.activeElement.blur();else{l=c.suggestionData[l];var m=l.sessionData;g.AO(h,c.api,c.J,m||void 0)&&c.api.Gl(l.videoId,m,l.playlistId)}}}(a)); 34 | this.B.push(d)}g.M(this,this.next);this.next.xa(this.element);this.next.Na("click",this.lU,this);b=new g.X({F:"button",Ca:["ytp-button","ytp-collapse"],T:{"aria-label":"Hide more videos"},S:[g.bFa()]});g.M(this,b);b.xa(this.element);b.Na("click",this.k0,this);g.M(this,this.expandButton);this.expandButton.xa(this.element);this.expandButton.Na("click",this.l0,this);this.j.P(this.api,"appresize",this.xb);this.j.P(this.api,"fullscreentoggled",this.Eo);this.j.P(this.api,"presentingplayerstatechange",this.bd); 35 | this.j.P(this.api,"videodatachange",this.onVideoDataChange);this.xb(this.api.Za().getPlayerSize());this.onVideoDataChange()},k6=function(a){var b=a.I.Qf()?32:16; 36 | b=a.V/2+b;a.next.element.style.bottom=b+"px";a.previous.element.style.bottom=b+"px";b=a.u;var c=a.containerWidth-a.suggestionData.length*(a.tileWidth+8);g.N(a.element,"ytp-scroll-min",0<=b);g.N(a.element,"ytp-scroll-max",b<=c)},v4a=function(a){for(var b=0;bb&&this.delay.start()};g.u(m4a,g.X);g.k=m4a.prototype;g.k.hide=function(){this.I=!0;g.X.prototype.hide.call(this)}; 45 | g.k.show=function(){this.I=!1;g.X.prototype.show.call(this)}; 46 | g.k.isHidden=function(){return this.I}; 47 | g.k.jU=function(){this.scrollTo(this.j-this.containerWidth)}; 48 | g.k.kU=function(){this.scrollTo(this.j+this.containerWidth)}; 49 | g.k.resize=function(a,b){var c=this.api.R(),d=16/9,e=650<=a.width,f=480>a.width||290>a.height,h=Math.min(this.suggestionData.length,this.u.length);if(150>=Math.min(a.width,a.height)||0===h||!c.Mc)this.hide();else{var l;if(e){var m=l=28;this.B=16}else this.B=m=l=8;if(f){var n=6;e=14;var p=12;f=24;c=12}else n=8,e=18,p=16,f=36,c=16;a=a.width-(48+l+m);l=Math.ceil(a/150);l=Math.min(3,l);l=a/l-this.B;m=Math.floor(l/d);b&&m+100>b&&50l||g.xN(this.api)?this.hide():this.show();for(b=0;bl?"none":""}h=e+n+p+4;this.D=h+c+(m-f)/2;this.suggestions.element.style.height=m+h+"px";this.tileWidth=l;this.containerWidth=a;this.j=0;e6(this);this.suggestions.element.scrollLeft= 51 | -0;n4a(this)}}; 52 | g.k.onVideoDataChange=function(){var a=this.api.getVideoData(),b=this.api.R();this.J=a.C?!1:b.u;a.suggestions?this.suggestionData=g.wm(a.suggestions,function(c){return c&&!c.playlistId}):this.suggestionData.length=0; 53 | o4a(this);a.C?this.title.update({title:g.HJ("More videos from $DNI_RELATED_CHANNEL",{DNI_RELATED_CHANNEL:a.author})}):this.title.update({title:"More videos on YouTube"})}; 54 | g.k.scrollTo=function(a){a=g.Cg(a,this.containerWidth-e6(this),0);this.N.start(this.j,a,1E3);this.j=a;n4a(this)};g.u(f6,g.FO);f6.prototype.show=function(){g.FO.prototype.show.call(this);q4a(this,this.api.Za().getPlayerSize())}; 55 | f6.prototype.resize=function(a){g.FO.prototype.resize.call(this,a);this.j&&(q4a(this,a),g.N(this.element,"related-on-error-overlay-visible",!this.j.isHidden()))}; 56 | f6.prototype.u=function(a){g.FO.prototype.u.call(this,a);var b=this.api.getVideoData();if(b.fK||b.playerErrorMessageRenderer)(a=b.fK)?s4a(this,a):b.playerErrorMessageRenderer&&s4a(this,b.playerErrorMessageRenderer);else{var c;a.Vk&&(b.Vt?r4a(b.Vt)?c=g.AA(b.Vt):c=g.GO(g.zA(b.Vt)):c=g.GO(a.Vk),this.Sd(c,"subreason"))}};g.u(g6,g.X);g6.prototype.wh=function(){this.api.zb().isCued()||(this.hide(),this.api.Ta(this.element,!1))}; 57 | g6.prototype.j=function(){var a=this.api.getVideoData(),b=this.api.R(),c=this.api.getVideoData().C,d=b.Nc,e=!b.Mc,f=this.u.Dg(),h=g.XF(b);b=b.B;d||f||c||e||h||b||!a.videoId?(this.hide(),this.api.Ta(this.element,!1)):(a=t4a(this),this.Ja("url",a),this.show())}; 58 | g6.prototype.onClick=function(a){var b=t4a(this);g.BO(b,this.api,a);this.api.qb(this.element)}; 59 | g6.prototype.show=function(){this.api.zb().isCued()&&(g.X.prototype.show.call(this),this.api.Nm(this.element)&&this.api.Ta(this.element,!0))};g.u(h6,g.X);h6.prototype.wh=function(){var a=this.api.zb();!this.api.cg()||g.W(a,2)&&g.uN(this.api)||g.W(a,64)?(this.api.Ta(this.j,!1),this.api.Ta(this.forwardButton,!1),this.hide()):(this.show(),this.api.Ta(this.j,!0),this.api.Ta(this.forwardButton,!0))}; 60 | h6.prototype.u=function(){this.api.seekBy(-10*this.api.getPlaybackRate());this.api.qb(this.j)}; 61 | h6.prototype.B=function(){this.api.seekBy(10*this.api.getPlaybackRate());this.api.qb(this.forwardButton)};g.u(i6,g.X);i6.prototype.u=function(){var a=this.api.zb(),b=this.api.getVideoData();this.api.R().K("embeds_enable_muted_autoplay")&&b.mutedAutoplay&&(g.W(a,2)&&!this.tb?(this.show(),this.j.show(),a=this.api.getVideoData(),this.Ja("text",a.cN),g.N(this.element,"ytp-muted-autoplay-show-end-panel",!0),this.api.Ta(this.element,this.tb),this.api.Ka("onMutedAutoplayEnds")):this.hide())}; 62 | i6.prototype.onClick=function(){var a=this.api.getVideoData(),b=this.api.getCurrentTime();a.mutedAutoplay=!1;a.endSeconds=NaN;g.KH(a);this.api.loadVideoById(a.videoId,b);this.api.qb(this.element);this.hide()};g.u(j6,g.X);j6.prototype.j=function(){var a=this.api.zb(),b=this.api.getVideoData();this.api.R().K("embeds_enable_muted_autoplay")&&b.mutedAutoplay&&!g.W(a,2)?this.tb||(g.X.prototype.show.call(this),this.B.start(),this.api.Ta(this.element,this.tb)):this.hide()}; 63 | j6.prototype.u=function(){g.N(this.element,"ytp-muted-autoplay-hide-watermark",!0)}; 64 | j6.prototype.onClick=function(){var a=this.api.getVideoData(),b=this.api.getCurrentTime();a.mutedAutoplay=!1;a.endSeconds=NaN;g.KH(a);this.api.loadVideoById(a.videoId,b);this.api.qb(this.element)};g.u(u4a,g.X);g.k=u4a.prototype;g.k.hide=function(){g.jo(this.api.getRootNode(),"ytp-expand-pause-overlay");g.X.prototype.hide.call(this)}; 65 | g.k.k0=function(){this.D=!0;g.jo(this.api.getRootNode(),"ytp-expand-pause-overlay");this.expandButton.focus()}; 66 | g.k.l0=function(){this.D=!1;g.ho(this.api.getRootNode(),"ytp-expand-pause-overlay");this.focus()}; 67 | g.k.lU=function(){this.scrollTo(this.u-this.containerWidth)}; 68 | g.k.mU=function(){this.scrollTo(this.u+this.containerWidth)}; 69 | g.k.Eo=function(){this.xb(this.api.Za().getPlayerSize())}; 70 | g.k.bd=function(a){if(!(g.W(a.state,1)||g.W(a.state,16)||g.W(a.state,32))){var b=!this.api.R().K("embeds_disable_pauseoverlay_on_autoplay_blocked_killswitch")&&g.W(a.state,1024);!g.W(a.state,4)||g.W(a.state,2)||b?this.C.hide():this.suggestionData.length&&(this.D||(g.ho(this.api.getRootNode(),"ytp-expand-pause-overlay"),k6(this)),this.C.show(),this.W=(0,g.U)())}}; 71 | g.k.xb=function(a){var b=16/9,c=this.I.Qf();a=a.width-(c?112:58);c=Math.ceil(a/(c?320:192));c=(a-8*c)/c;b=Math.floor(c/b);for(var d=0;da.width)&&!this.u||!a&&this.u){var b=new g.X(l4a()),c=this.ya("ytp-watermark");g.N(c,"ytp-watermark-small",a);g.oh(c);b.xa(c);this.u=a}};g.u(x4a,g.bO);g.k=x4a.prototype;g.k.xj=function(){return!1}; 80 | g.k.create=function(){var a=this.G.R(),b=g.qN(this.G),c,d=null==(c=this.G.getVideoData())?void 0:c.clientPlaybackNonce;d&&g.$A("cpn",d);!a.Mc||a.B||b.mz()||(this.B=new u4a(this.G,b),g.M(this,this.B),g.AN(this.G,this.B.element,4));a.K("embeds_enable_muted_autoplay")&&(this.u=new j6(this.G),g.M(this,this.u),g.AN(this.G,this.u.element,4),this.I=new i6(this.G),g.M(this,this.I),g.AN(this.G,this.I.element,4));if(a.Nc||this.u)this.watermark=new w4a(this.G),g.M(this,this.watermark),g.AN(this.G,this.watermark.element, 81 | 8);this.C=new g6(this.G,b);g.M(this,this.C);g.AN(this.G,this.C.element,8);a.isMobile&&(this.D=new h6(this.G),g.M(this,this.D),g.AN(this.G,this.D.element,4));this.j.P(this.G,"appresize",this.xb);this.j.P(this.G,"presentingplayerstatechange",this.wh);this.j.P(this.G,"videodatachange",this.onVideoDataChange);this.j.P(this.G,"onMutedAutoplayStarts",this.onMutedAutoplayStarts);this.j.P(this.G,"onAdStart",this.onAdStart);this.j.P(this.G,"onAdComplete",this.onAdComplete);this.j.P(this.G,"onAdSkip",this.onAdSkip); 82 | this.j.P(this.G,"onAdStateChange",this.onAdStateChange);this.Sb(this.G.zb());this.player.rf("embed")}; 83 | g.k.xb=function(){var a=this.G.Za().getPlayerSize();this.vf&&this.vf.resize(a)}; 84 | g.k.wh=function(a){this.Sb(a.state)}; 85 | g.k.Sb=function(a){g.W(a,128)?(this.vf||(this.vf=new f6(this.G),g.M(this,this.vf),g.AN(this.G,this.vf.element,4)),this.vf.u(a.getData()),this.vf.show(),g.ho(this.G.getRootNode(),"ytp-embed-error")):this.vf&&(this.vf.dispose(),this.vf=null,g.jo(this.G.getRootNode(),"ytp-embed-error"))}; 86 | g.k.onMutedAutoplayStarts=function(){this.G.getVideoData().mutedAutoplay&&this.u&&this.watermark&&this.watermark.xa(this.u.bottomButtons,0)}; 87 | g.k.onVideoDataChange=function(){var a=this.G.getVideoData();this.watermark&&this.u&&!a.mutedAutoplay&&g.sh(this.u.element,this.watermark.element)&&g.AN(this.G,this.watermark.element,8);this.G.R().B&&this.B&&this.B.detach()}; 88 | g.k.onAdStart=function(){l6(this,"EMBEDS_AD_EVENT_TYPE_AD_STARTED")}; 89 | g.k.onAdComplete=function(){l6(this,"EMBEDS_AD_EVENT_TYPE_AD_COMPLETED")}; 90 | g.k.onAdSkip=function(){l6(this,"EMBEDS_AD_EVENT_TYPE_AD_SKIPPED")}; 91 | g.k.onAdStateChange=function(a){2===a&&l6(this,"EMBEDS_AD_EVENT_TYPE_AD_PAUSED")};g.aO("embed",x4a);})(_yt_player); 92 | -------------------------------------------------------------------------------- /docs/SEEAvatar_files/fetch-polyfill.js: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Copyright (c) 2014-2016 GitHub, Inc. 4 | SPDX-License-Identifier: MIT 5 | */ 6 | (function(self){if(self.fetch)return;var support={searchParams:"URLSearchParams"in self,iterable:"Symbol"in self&&"iterator"in Symbol,blob:"FileReader"in self&&"Blob"in self&&function(){try{new Blob;return true}catch(e){return false}}(),formData:"FormData"in self,arrayBuffer:"ArrayBuffer"in self};if(support.arrayBuffer){var viewClasses=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]", 7 | "[object Float32Array]","[object Float64Array]"];var isDataView=function(obj){return obj&&DataView.prototype.isPrototypeOf(obj)};var isArrayBufferView=ArrayBuffer.isView||function(obj){return obj&&viewClasses.indexOf(Object.prototype.toString.call(obj))>-1}}function normalizeName(name){if(typeof name!=="string")name=String(name);if(/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(name))throw new TypeError("Invalid character in header field name");return name.toLowerCase()}function normalizeValue(value){if(typeof value!== 8 | "string")value=String(value);return value}function iteratorFor(items){var iterator={next:function(){var value=items.shift();return{done:value===undefined,value:value}}};if(support.iterable)iterator[Symbol.iterator]=function(){return iterator};return iterator}function Headers(headers){this.map={};if(headers instanceof Headers)headers.forEach(function(value,name){this.append(name,value)},this);else if(headers)Object.getOwnPropertyNames(headers).forEach(function(name){this.append(name,headers[name])}, 9 | this)}Headers.prototype.append=function(name,value){name=normalizeName(name);value=normalizeValue(value);var list=this.map[name];if(!list){list=[];this.map[name]=list}list.push(value)};Headers.prototype["delete"]=function(name){delete this.map[normalizeName(name)]};Headers.prototype.get=function(name){var values=this.map[normalizeName(name)];return values?values[0]:null};Headers.prototype.getAll=function(name){return this.map[normalizeName(name)]||[]};Headers.prototype.has=function(name){return this.map.hasOwnProperty(normalizeName(name))}; 10 | Headers.prototype.set=function(name,value){this.map[normalizeName(name)]=[normalizeValue(value)]};Headers.prototype.forEach=function(callback,thisArg){Object.getOwnPropertyNames(this.map).forEach(function(name){this.map[name].forEach(function(value){callback.call(thisArg,value,name,this)},this)},this)};Headers.prototype.keys=function(){var items=[];this.forEach(function(value,name){items.push(name)});return iteratorFor(items)};Headers.prototype.values=function(){var items=[];this.forEach(function(value){items.push(value)}); 11 | return iteratorFor(items)};Headers.prototype.entries=function(){var items=[];this.forEach(function(value,name){items.push([name,value])});return iteratorFor(items)};if(support.iterable)Headers.prototype[Symbol.iterator]=Headers.prototype.entries;function consumed(body){if(body.bodyUsed)return Promise.reject(new TypeError("Already read"));body.bodyUsed=true}function fileReaderReady(reader){return new Promise(function(resolve,reject){reader.onload=function(){resolve(reader.result)};reader.onerror=function(){reject(reader.error)}})} 12 | function readBlobAsArrayBuffer(blob){var reader=new FileReader;var promise=fileReaderReady(reader);reader.readAsArrayBuffer(blob);return promise}function readBlobAsText(blob){var reader=new FileReader;var promise=fileReaderReady(reader);reader.readAsText(blob);return promise}function readArrayBufferAsText(buf){var view=new Uint8Array(buf);var chars=new Array(view.length);for(var i=0;i-1?upcased:method}function Request(input,options){options=options||{};var body=options.body;if(typeof input==="string")this.url=input;else{if(input.bodyUsed)throw new TypeError("Already read"); 18 | this.url=input.url;this.credentials=input.credentials;if(!options.headers)this.headers=new Headers(input.headers);this.method=input.method;this.mode=input.mode;if(!body&&input._bodyInit!=null){body=input._bodyInit;input.bodyUsed=true}}this.credentials=options.credentials||this.credentials||"omit";if(options.headers||!this.headers)this.headers=new Headers(options.headers);this.method=normalizeMethod(options.method||this.method||"GET");this.mode=options.mode||this.mode||null;this.referrer=null;if((this.method=== 19 | "GET"||this.method==="HEAD")&&body)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(body)}Request.prototype.clone=function(){return new Request(this,{body:this._bodyInit})};function decode(body){var form=new FormData;body.trim().split("&").forEach(function(bytes){if(bytes){var split=bytes.split("=");var name=split.shift().replace(/\+/g," ");var value=split.join("=").replace(/\+/g," ");form.append(decodeURIComponent(name),decodeURIComponent(value))}});return form}function parseHeaders(rawHeaders){var headers= 20 | new Headers;rawHeaders.split("\r\n").forEach(function(line){var parts=line.split(":");var key=parts.shift().trim();if(key){var value=parts.join(":").trim();headers.append(key,value)}});return headers}Body.call(Request.prototype);function Response(bodyInit,options){if(!options)options={};this.type="default";this.status="status"in options?options.status:200;this.ok=this.status>=200&&this.status<300;this.statusText="statusText"in options?options.statusText:"OK";this.headers=new Headers(options.headers); 21 | this.url=options.url||"";this._initBody(bodyInit)}Body.call(Response.prototype);Response.prototype.clone=function(){return new Response(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Headers(this.headers),url:this.url})};Response.error=function(){var response=new Response(null,{status:0,statusText:""});response.type="error";return response};var redirectStatuses=[301,302,303,307,308];Response.redirect=function(url,status){if(redirectStatuses.indexOf(status)===-1)throw new RangeError("Invalid status code"); 22 | return new Response(null,{status:status,headers:{location:url}})};self.Headers=Headers;self.Request=Request;self.Response=Response;self.fetch=function(input,init){return new Promise(function(resolve,reject){var request=new Request(input,init);var xhr=new XMLHttpRequest;xhr.onload=function(){var options={status:xhr.status,statusText:xhr.statusText,headers:parseHeaders(xhr.getAllResponseHeaders()||"")};options.url="responseURL"in xhr?xhr.responseURL:options.headers.get("X-Request-URL");var body="response"in 23 | xhr?xhr.response:xhr.responseText;resolve(new Response(body,options))};xhr.onerror=function(){reject(new TypeError("Network request failed"))};xhr.ontimeout=function(){reject(new TypeError("Network request failed"))};xhr.open(request.method,request.url,true);if(request.credentials==="include")xhr.withCredentials=true;if("responseType"in xhr&&support.blob)xhr.responseType="blob";request.headers.forEach(function(value,name){xhr.setRequestHeader(name,value)});xhr.send(typeof request._bodyInit==="undefined"? 24 | null:request._bodyInit)})};self.fetch.polyfill=true})(typeof self!=="undefined"?self:this); 25 | -------------------------------------------------------------------------------- /docs/SEEAvatar_files/style.css: -------------------------------------------------------------------------------- 1 | /* CSS Document */ 2 | @import url(https://fonts.googleapis.com/css?family=Open+Sans); 3 | 4 | body { 5 | font-family: 'Open-Sans', sans-serif; 6 | font-weight: 300; 7 | background-color: #fff; 8 | } 9 | .content { 10 | width: 1000px; 11 | padding: 25px 50px; 12 | margin: 25px auto; 13 | background-color: white; 14 | box-shadow: 0px 0px 10px #999; 15 | border-radius: 15px; 16 | font-family: "Google Sans"; 17 | } 18 | .contentblock { 19 | width: 950px; 20 | margin: 0 auto; 21 | padding: 0; 22 | border-spacing: 25px 0; 23 | } 24 | .contentblock td { 25 | background-color: #fff; 26 | padding: 25px 50px; 27 | vertical-align: top; 28 | box-shadow: 0px 0px 10px #999; 29 | border-radius: 15px; 30 | } 31 | a, a:visited { 32 | color: #224b8d; 33 | font-weight: 300; 34 | } 35 | #authors { 36 | text-align: center; 37 | margin-bottom: 20px; 38 | font-size: 24px; 39 | } 40 | #conference { 41 | text-align: center; 42 | margin-bottom: 20px; 43 | font-style: italic; 44 | } 45 | #authors a { 46 | margin: 0 10px; 47 | } 48 | h1 { 49 | text-align: center; 50 | font-size: 35px; 51 | font-weight: 300; 52 | } 53 | h2 { 54 | font-size: 30px; 55 | font-weight: 300; 56 | } 57 | code { 58 | display: block; 59 | padding: 10px; 60 | margin: 10px 10px; 61 | } 62 | p { 63 | line-height: 25px; 64 | text-align: justify; 65 | } 66 | p code { 67 | display: inline; 68 | padding: 0; 69 | margin: 0; 70 | } 71 | #teasers { 72 | margin: 0 auto; 73 | } 74 | #teasers td { 75 | margin: 0 auto; 76 | text-align: center; 77 | padding: 5px; 78 | } 79 | #teasers img { 80 | width: 250px; 81 | } 82 | #results img { 83 | width: 133px; 84 | } 85 | #seeintodark { 86 | margin: 0 auto; 87 | } 88 | #sift { 89 | margin: 0 auto; 90 | } 91 | #sift img { 92 | width: 250px; 93 | } 94 | .downloadpaper { 95 | padding-left: 20px; 96 | float: right; 97 | text-align: center; 98 | } 99 | .downloadpaper a { 100 | font-weight: bold; 101 | text-align: center; 102 | } 103 | .teaser-img { 104 | width: 80%; 105 | display: block; 106 | margin-left: auto; 107 | margin-right: auto; 108 | } 109 | .teaser-gif { 110 | display: block; 111 | margin-left: auto; 112 | margin-right: auto; 113 | } 114 | .summary-img { 115 | width: 100%; 116 | display: block; 117 | margin-left: auto; 118 | margin-right: auto; 119 | } 120 | .video-iframe { 121 | width: 1000; 122 | height: 800; 123 | margin: auto; 124 | display: block; 125 | } 126 | .container { 127 | display: flex; 128 | align-items: center; 129 | justify-content: center 130 | } 131 | .image { 132 | flex-basis: 40% 133 | } 134 | .text { 135 | font-size: 20px; 136 | padding-left: 20px; 137 | } 138 | .center { 139 | margin-left: auto; 140 | margin-right: auto; 141 | } 142 | .boxshadow { 143 | border: 1px solid; 144 | padding: 10px; 145 | box-shadow: 2px 2px 5px #888888; 146 | } 147 | .spacertr { 148 | height: 8px; 149 | } 150 | .spacertd { 151 | width: 40px; 152 | } 153 | 154 | .row::after { 155 | content: ""; 156 | clear: both; 157 | display: block; 158 | } 159 | 160 | .col { 161 | float: left; 162 | width: 33.33%; 163 | box-sizing: border-box; 164 | padding: 2px; 165 | } 166 | 167 | .col-gallery { 168 | float: left; 169 | width: 25%; 170 | box-sizing: border-box; 171 | padding: 2px; 172 | position: relative; 173 | } 174 | 175 | .small_col-gallery { 176 | float: left; 177 | width: 12.5%; 178 | box-sizing: border-box; 179 | padding: 2px; 180 | position: relative; 181 | 182 | } 183 | .example-img { 184 | width: 100%; 185 | } 186 | 187 | .clickplay { 188 | width: 100%; 189 | } 190 | 191 | .info-button { 192 | position: absolute; 193 | right: 3px; 194 | bottom: 3px; 195 | z-index: 2; 196 | background-color: rgba(0.5, 0.5, 0.5, 0.2); /* 半透明黑色背景 */ 197 | border: none; 198 | width: 3px; 199 | 200 | /* 其他样式,如背景色、边框等 */ 201 | } 202 | 203 | .info-text { 204 | position: absolute; 205 | bottom: 10px; 206 | right: 10px; 207 | z-index: 2; 208 | background-color: rgba(0, 0, 0, 0.5); /* 半透明黑色背景 */ 209 | color: white; /* 白色文本 */ 210 | padding: 10px; /* 添加一些内边距 */ 211 | border-radius: 5px; /* 圆角边框 */ 212 | font-size: 10px; 213 | } -------------------------------------------------------------------------------- /docs/SEEAvatar_files/tUR9jtOhcuN8qeoeXnRQGExMe9QeBdn6F7LXrdB4oNs.js: -------------------------------------------------------------------------------- 1 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjogMywic291cmNlcyI6WyIiXSwic291cmNlc0NvbnRlbnQiOlsiICJdLCJuYW1lcyI6WyJjbG9zdXJlRHluYW1pY0J1dHRvbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEifQ== 2 | (function(){function X(q){return q}var y=function(q,W,P,V,M){if((V=(M=P,m.trustedTypes),!V)||!V.createPolicy)return M;try{M=V.createPolicy(W,{createHTML:C,createScript:C,createScriptURL:C})}catch(K){if(m.console)m.console[q](K.message)}return M},m=this||self,C=function(q){return X.call(this,q)};(0,eval)(function(q,W){return(W=y("error","ad",null))&&1===q.eval(W.createScript("1"))?function(P){return W.createScript(P)}:function(P){return""+P}}(m)(Array(7824*Math.random()|0).join("\n")+['//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjogMywic291cmNlcyI6WyIiXSwic291cmNlc0NvbnRlbnQiOlsiICJdLCJuYW1lcyI6WyJjbG9zdXJlRHluYW1pY0J1dHRvbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEifQ==', 3 | '(function(){var qQ=function(V,P,q,M){return q+4>>1=q&&(M=Math.floor(this.ba+(this.X()-this.u))),M},WR=function(V,P,q,M,X,m,W,C,K,y){if((X-((X+5^22)=X&&w.call(this,q,M||n.sm(),P),1)^2)=X)a:{for(C=q;C>4||(q.Vb(function(O){X=O},P,M),y=X),V)&&(y=Math.floor(this.X())),V)&&q.g.splice(P,P,M),V-4&15)){if(!(m=(PR.call(this,M),q))){for(X=this.constructor;X;){if(W=MQ(108,X,12),C=X1[W])break;X=(K=Object.getPrototypeOf(X.prototype))&&K.constructor}m=C?"function"===typeof C.sm?C.sm():new C:null}this.Y=m}return(V|24)==V&&(this.K=h.document||document),y},L=function(V,P,q,M,X,m,W,C,K,y,O,u,U,J){if(((V&46)==((9<=(V<<2&15)&&9>(V>>1&14)&&(this.G=P),V-2>>4)||(P.eC=void 0,P.sm=function(){return P.eC?P.eC:P.eC=new P}),V)&&(U=function(r){return P.call(U.src,U.listener,r)},P=mS,J=U),V-4)&5||(G.call(this,P?P.type:""),this.relatedTarget=this.currentTarget=this.target=null,this.button=this.screenY=this.screenX=this.clientY=this.clientX=this.offsetY=this.offsetX=0,this.key="",this.charCode=this.keyCode=0,this.metaKey=this.shiftKey=this.altKey=this.ctrlKey=false,this.state=null,this.pointerId=0,this.pointerType="",this.O=null,P&&(m=this.type=P.type,X=P.changedTouches&&P.changedTouches.length?P.changedTouches[0]:null,this.target=P.target||P.srcElement,this.currentTarget=q,M=P.relatedTarget,M||("mouseover"==m?M=P.fromElement:"mouseout"==m&&(M=P.toElement)),this.relatedTarget=M,X?(this.clientX=void 0!==X.clientX?X.clientX:X.pageX,this.clientY=void 0!==X.clientY?X.clientY:X.pageY,this.screenX=X.screenX||0,this.screenY=X.screenY||0):(this.offsetX=P.offsetX,this.offsetY=P.offsetY,this.clientX=void 0!==P.clientX?P.clientX:P.pageX,this.clientY=void 0!==P.clientY?P.clientY:P.pageY,this.screenX=P.screenX||0,this.screenY=P.screenY||0),this.button=P.button,this.keyCode=P.keyCode||0,this.key=P.key||"",this.charCode=P.charCode||("keypress"==m?P.keyCode:0),this.ctrlKey=P.ctrlKey,this.altKey=P.altKey,this.shiftKey=P.shiftKey,this.metaKey=P.metaKey,this.pointerId=P.pointerId||0,this.pointerType="string"===typeof P.pointerType?P.pointerType:CQ[P.pointerType]||"",this.state=P.state,this.O=P,P.defaultPrevented&&H.I.preventDefault.call(this))),(V|88)==V)if(Array.isArray(W))for(O=P;O>1&7||(M.classList?Array.prototype.forEach.call(X,function(W){x(" ",24,P,1,M,W)}):I(42,P,M,Array.prototype.filter.call(I(3,P,M),function(W){return!Ox(V,29,1,W,X)}).join(" "))),V)&8)>C,(W|0)-~(W&255)+~W));O=K}return O},R=function(V,P,q,M,X,m,W,C,K,y,O){if(1==(4>(3==P-5>>3&&(O=!!(M.N&m)&&!!(M.C&m)!=X&&(!(W=M.ow,(W|m)-2*~(W&m)+~W+~m)||M.dispatchEvent(T(8,3,q,2,4,m,X)))&&!M.Hx),(P^5)>>4)&&10<=((P|2)&15)&&(O=q),P-6&15)){for(C=K=0;C>6;O=((W=new (m=(K+=K<<3,K^=K>>11,K)+(K<<15)>>>0,Number)(m&(1<>>M)%X,W)}if(!(P-6&15))if(Array.isArray(C))for(y=0;y>3||(C=(X=M>>>q*V,(X|255)-2*(X&-256)+(X|-256)-(~X|255))),(P|2)>>3)&&(X.classList?X.classList.remove(m):(X.classList?X.classList.contains(m):Ox(4,32,M,m,I(32,q,X)))&&I(40,q,X,Array.prototype.filter.call(I(6,q,X),function(K){return K!=m}).join(V))),5)>>4&&(q=V[hB],C=q instanceof QQ?q:null),3<=(P>>1&14)&&7>(P<<1&24)&&(q.h=((q.h?q.h+"~":"E:")+M.message+":"+M.stack).slice(0,V)),(P^89)&14)&&(m=typeof X,W=m!=V?m:X?Array.isArray(X)?"array":m:"null",C=W==q||W==V&&typeof X.length==M),C},gI=function(V,P,q,M,X,m,W,C){return q+7>>((q+2&V)=q&&(X=N(true,8,M),129+(X|-129)&&(X=(W=(X|0)+(~X^127)-(X|-128),m=N(true,8,M)<=q&&(X=rI[M.U](M.Em),X[M.U]=function(){return P},X.concat=function(K){P=K},C=X),C},T=function(V,P,q,M,X,m,W,C,K,y,O,u,U,J,r,g){if(!((P^(P-(P>>1&15||(g=rI[V](rI.prototype,{parent:q,document:q,prototype:q,length:q,splice:q,replace:q,console:q,stack:q,pop:q,propertyIsEnumerable:q,call:q,floor:q})),4)>>4||(zg.call(this),V||iq||(iq=new Gg),this.DI=void 0,this.qo=false,this.A8=this.mi=this.TZ=this.C1=this.la=null),69))&6)){if((J=(C=(O=(u=4==(U=(W=(M||m.ZI++,m.wa>V&&m.ga&&m.R2&&1>=m.h8&&!m.l&&!m.L)&&(!M||1>14,m.i&&(m.i=(y=m.i,K=J*(C<<2),-~y+~K+2*(~y&K))),m.Qb+=J,m).G=J||m.G,u||W)m.ZI=V,m.S=O;!W||O-m.u=P&&(P-8|65)>1=q&&(km.call(this),this.Z=new QQ(this),this.Um=null,this.ua=this),(q^V)&P)||(M(function(W){W(X)}),m=[function(){return X}]),m},KQ=function(V,P,q,M,X,m,W,C,K,y){if(!((P|1)>>4))if(m=M.length,m>q){for(X=(W=Array(m),q);X(P^42)&&("function"===typeof q?y=q:(q[jX]||(q[jX]=function(O){return q.handleEvent(O)}),y=q[jX])),y},Ox=function(V,P,q,M,X,m,W,C){if(3==(P>>2&15))if(q.classList)Array.prototype.forEach.call(M,function(K,y){q.classList?q.classList.add(K):(q.classList?q.classList.contains(K):Ox(4,31,1,K,I(34,"string",q)))||(y=BR(14,12,"string","",q),I(43,"string",q,y+(0>3&&3>P+9>>V&&(C=0<=Y(23,q,0,X,M)),P&91)==P&&(this.src=q,this.R=0,this.o={}),C},Y=function(V,P,q,M,X,m,W,C){if(2==V-7>>3)a:if("string"===typeof M)W="string"!==typeof X||X.length!=P?-1:M.indexOf(X,q);else{for(m=q;m=P)a:{for(W in X)if(m.call(void 0,X[W],W,X)){C=M;break a}C=q}if(3==((P^38)&7)){if(!q)throw Error("Invalid class name "+q);if("function"!==typeof M)throw Error("Invalid decorator function "+M);}return 4>(P<<2&V)&&4<=(P>>1&7)&&(C=typeof X.className==q?X.className:X.getAttribute&&X.getAttribute("class")||M),C},nQ=function(V,P,q,M,X,m,W,C,K,y,O,u,U,J){if(!(V>>1&4)){if(!C)throw Error("Invalid event type");if(u=((U=x((y=k(q,33,X)?!!q.capture:!!q,K),69))||(K[hB]=U=new QQ(K)),U.add(C,m,W,y,M)),!u.proxy){if(((((O=L(32),u).proxy=O,O).src=K,O).listener=u,K).addEventListener)It||(q=y),void 0===q&&(q=P),K.addEventListener(C.toString(),O,q);else if(K.attachEvent)K.attachEvent(Y(13,"on",C.toString()),O);else if(K.addListener&&K.removeListener)K.addListener(O);else throw Error("addEventListener and attachEvent are unavailable.");eX++}}return 32>(V^4)&&18<=(V^18)&&(J=(M=Tg[P.substring(0,3)+"_"])?M(P.substring(3),X,q):AB(38,2,3,X,P)),J},E=function(V,P,q,M,X,m,W,C,K,y,O){if(!((V^41)&10)){for(X=E(62,M),m=0;0>1&13))if(W="array"===cR("null",M,"array")?M:[M],this.h)P(this.h);else try{m=!this.g.length,X=[],Q(42,0,this,[Ym,X,W]),Q(34,0,this,[dI,P,X]),q&&!m||vR(false,254,true,this,q)}catch(u){x(2048,18,this,u),P(this.h)}return y},I=function(V,P,q,M,X,m,W,C,K,y,O){if(!((2==((V&((((V|40)==V&&(typeof q.className==P?q.className=M:q.setAttribute&&q.setAttribute("class",M)),V)|24)==V&&(P.P?X=true:(W=new H(q,this),m=P.o2||P.src,M=P.listener,P.B&&KQ(19,17,"on",0,P),X=M.call(m,W)),O=X),39))==V&&(O=q.classList?q.classList:BR(14,8,P,"",q).match(/\\S+/g)||[]),V<<1&15)&&(y=function(){},y.prototype=M.prototype,q.I=M.prototype,q.prototype=new y,q.prototype.constructor=q,q.jA=function(u,U,J){for(var r=Array(arguments.length-P),g=P;g>4))if(C&&C.once)R(22,6,q,"object",W,C,M,X,m);else if(Array.isArray(X))for(K=P;K>4||(this.listener=m,this.proxy=null,this.src=q,this.type=X,this.capture=!!P,this.o2=W,this.key=++SX,this.B=this.P=false),M-4|42)>=M&&(M+3&52)>17,(m|V)+~(W&m)-(~W|m)),W=(K=W<<5,(W|V)-(W&K)+(~W&K)),(W&=X)||(W=1),y=-(W|V)+2*~q-3*~(q|W)+(q|~W)),y},Ex=function(V,P,q,M,X,m,W,C,K){if((M+6>>2=M&&(K=q&&q.parentNode?q.parentNode.removeChild(q):null),18)>M>>2&&5<=(M+8&V)){if(X=window.btoa){for(C=(m=P,0);C(V+2&8)&&12<=V-8&&(q.P=P,q.listener=null,q.proxy=null,q.src=null,q.o2=null),27))>=V&&(V-6|3)(q-((q&V)==q&&(y=Object.prototype.hasOwnProperty.call(P,pQ)&&P[pQ]||(P[pQ]=++F1)),9)&10)&&22<=(q|1)&&M.la&&M.la.forEach(P,void 0),q)-6^6)>=q&&q+8>>1=V&&(u=(m=(C=M[X]<<24,K=M[-2*~(X&1)+-2+(X^1)]<=V&&(C=P+(W&-8)+(~W^7),m=[-26,-23,-10,-62,58,-32,m,13,98,45],O=lq,K=rI[X.U](X.Fs),K[X.U]=function(U){C=(C+=6+(y=U,7)*W,(C|7)-(C&-8)-(~C&7))},K.concat=function(U,J,r,g,z){return y=(J=37*y*y-111*M*M*y+(g=M%16+1,3*M*M*g)- -851*M*y-g*y+C- -148*y+(O()|0)*g+m[C+q&7]*M*g,z=m[J],void 0),m[r=C+45&7,U=W&2,4*(r&U)+2*~(r&U)-(r|~U)-(~r|U)]=z,m[C+(W&2)]=-23,z},u=K),u},k=function(V,P,q,M,X,m,W,C,K,y){return(((P|16)==P&&(X=Y(25,q,0,M,V),(m=0<=X)&&Array.prototype.splice.call(M,X,q),y=m),(P-8|4)=P&&(M=typeof V,y=M==q&&null!=V||"function"==M),P)|8)==P&&(Array.isArray(M)&&(M=M.join(" ")),W="aria-"+X,""===M||void 0==M?(sx||(C={},sx=(C.atomic=false,C.autocomplete="none",C.dropeffect="none",C.haspopup=false,C[V]=q,C.multiline=false,C.multiselectable=false,C.orientation="vertical",C.readonly=false,C.relevant="additions text",C.required=false,C.sort="none",C.busy=false,C.disabled=false,C.hidden=false,C.invalid="false",C)),K=sx,X in K?m.setAttribute(W,K[X]):m.removeAttribute(W)):m.setAttribute(W,M)),y},qB=function(V,P,q,M,X,m){return t(M,(c(X,(ot(V,(m=t(M,X),M.T&&m>3,C.push(V,(X=W>>8,(X|255)- -2+(X^255)+2*(~X^255)),-1-~W-(W&-256)),void 0!=m&&C.push((m|0)-(m^255)+(~m&255))),""),P)&&(P.message&&(O+=P.message),P.stack&&(O+=":"+P.stack)),q)),3X?u[m++]=X:(2048>X?u[m++]=X>>6|192:(55296==(X&64512)&&O+1>18|240,u[m++]=(W=X>>12&63,-(W|V)+2*(W&128)+2*(W&-129)+(~W&128))):u[m++]=X>>12|224,u[m++]=(K=X>>6,-~(K&63)- -1+2*(K&-64)+2*(~K|63))|128),u[m++]=(q=(X|V)+63-(X|63),(q|V)+-1-(q|-129)));return u},uR=function(V,P){for(var q,M=1,X;M>3,K).Bx!=r){u=(J=r<<3,K.Bx=r,(J|4)-2*~J+(U=[0,0,m[1],m[2]],3*~(J|4))-(~J^4));try{K.ra=UL(8,5,2,1,U,D1(3,16,0,K,u),D1(5,16,0,K,-1-2*~(u|4)+(~u^4)))}catch(g){throw g;}}K.push(K.ra[(O|0)-~(O&7)+~O]^y)},m=t(q,168)):W=function(y){K.push(y)},M&&W((M|0)-(M^255)+(~M&255)),C=P.length,X=0;X=C)break;m=t(q,(W=(c(P,q,X),E(V,q)),W))}T((m&&m.call?m(q,M):yD(0,[C3,21,W],439,q),0),29,M,false,false,q)}catch(K){t(q,214)?yD(22,K,439,q):c(214,q,K)}if(!M){if(q.Mo){ot(62,(q.h8--,310),q,202637886570);return}yD(0,[C3,33],439,q)}}catch(K){try{yD(22,K,439,q)}catch(y){x(2048,16,q,y)}}q.h8--}},D,ww=function(V){return Ex.call(this,7,"",V,3)},mS=function(V,P,q,M,X,m){return I.call(this,24,V,P,q,M,X,m)},UL=function(V,P,q,M,X,m,W,C,K,y){for(y=(K=(C=X[q]|0,X[3]|0),0);14>y;y++)W=W>>>V|W<<24,W+=m|0,m=m<<3|m>>>29,K=K>>>V|K<<24,W^=C+1383,K+=C|0,m^=W,C=C<<3|C>>>29,K^=y+1383,C^=K;return[x(V,P,3,m),x(V,7,q,m),x(V,6,M,m),x(V,6,0,m),x(V,P,3,W),x(V,7,q,W),x(V,3,M,W),x(V,3,0,W)]},JY=function(V,P,q,M){p((q=E(74,(M=E(78,P),P)),q),l(V,t(P,M)),P)},N=function(V,P,q){return q.l?NQ(q.v,q):tB(q,P,0,V)},n3=function(V,P,q,M,X,m,W,C,K,y){function O(u){u&&M.appendChild("string"===typeof u?P.createTextNode(u):u)}for(K=1;Km)O(y);else{a:{if(y&&"number"==typeof y.length){if(k(y,32,V)){C="function"==typeof y.item||"string"==typeof y.item;break a}if("function"===typeof y){C="function"==typeof y.item;break a}}C=false}bq(0,m,q,32,C?KQ(19,8,m,y):y,O)}},hY=function(V,P,q,M,X){return bq.call(this,0,V,X,3,P,q,M)},cR=function(V,P,q,M,X){if((M=typeof P,"object")==M)if(P){if(P instanceof Array)return q;if(P instanceof Object)return M;if("[object Window]"==(X=Object.prototype.toString.call(P),X))return"object";if("[object Array]"==X||"number"==typeof P.length&&"undefined"!=typeof P.splice&&"undefined"!=typeof P.propertyIsEnumerable&&!P.propertyIsEnumerable("splice"))return q;if("[object Function]"==X||"undefined"!=typeof P.call&&"undefined"!=typeof P.propertyIsEnumerable&&!P.propertyIsEnumerable("call"))return"function"}else return V;else if("function"==M&&"undefined"==typeof P.call)return"object";return M},t=function(V,P,q){if((q=V.s[P],void 0)===q)throw[C3,30,P];if(q.value)return q.create();return q.create(3*P*P+-23*P+-4),q.prototype},QD=function(V,P,q){return WR.call(this,15,q,V,P,14)},zg=function(){return AB.call(this,38,2,16)},n=function(){return Y.call(this,49)},rw=function(V,P,q,M,X){return Ox.call(this,4,12,V,P,q,M,X)},gw=function(V,P,q,M){try{M=V[((P|2)-~P+(~P|2))%3],V[P]=(V[P]|0)-(V[(-2*~(P|1)+(P|-2)+(~P|1))%3]|0)-(M|0)^(1==P?M<>>q)}catch(X){throw X;}},zD=function(V,P,q,M){return Y.call(this,8,V,P,q,M)},at=function(V,P,q){c((P.SC.push(P.s.slice()),P.s[q]=void 0,q),P,V)},tB=function(V,P,q,M,X,m,W,C,K,y,O,u,U,J,r,g,z){if(J=t(V,233),J>=V.J)throw[C3,31];for(U=(g=(K=P,r=q,V).hV.length,J);K>q;)W=U%8,z=8-(W|q),u=z>3,X=V.T[y],M&&(C=V,C.j!=U>>6&&(C.j=U>>6,O=t(C,399),C.vx=UL(8,5,2,1,[0,0,O[1],O[2]],C.i,C.j)),X^=V.vx[y&g]),U+=u,r|=(X>>8-(W|q)-(u|q)&(1<>8*X,(q|0)+255-(q|255));return M},vR=function(V,P,q,M,X,m,W,C){if(M.g.length){M.R2=(M.ga=(M.ga&&0(),true),X);try{C=M.X(),M.ZI=0,M.S=C,M.u=C,m=GD(false,253,M,true,null,X,2048),W=M.X()-M.u,M.ba+=W,W<(q?0:10)||0>=M.L1--||(W=Math.floor(W),M.ia.push(W<=P?W:254))}finally{M.ga=V}return m}},PR=function(V){return T.call(this,V,8)},Hj=function(V,P,q,M,X,m,W){p((m=t(V,(W=E((M=E(14,(X=(q=P&4,3-~P+~(P|3)),V)),62),V),M)),q&&(m=K3(0,""+m)),X&&p(W,l(2,m.length),V),W),m,V)},a=function(V,P,q){q=this;try{L3(P,V,this)}catch(M){x(2048,19,this,M),V(function(X){X(q.h)})}},L3=function(V,P,q,M,X,m){for(m=(M=(q.Fs=T(q.U,(q.kF=(q.mB=AY,q.hV=q[dI],kT),33),{get:function(){return this.concat()}}),q.Em=rI[q.U](q.Fs,{value:{value:{}}}),[]),0);128>m;m++)M[m]=String.fromCharCode(m);vR(!(Q(32,(Q(48,(Q(50,(c(69,q,(c(339,q,(c(184,(c(229,(c(412,q,(new QD((c(483,(c(305,q,(c(76,q,(c(426,(c(161,(c(311,(c(36,q,(c(404,(q.Uw=(q.JV=(c(432,(c(5,q,(c(214,q,(c(312,(c(144,q,jT((c(116,((c((c(74,(q.H_=((c(320,q,(c((c(439,q,(c(81,(c(52,q,(c(464,(c(56,(c(344,q,(c(288,(c(398,(c(224,(c((c(199,q,(c(460,(c(91,(c(310,(c((q.yC=(q.SC=(q.L1=25,[]),(q.R2=false,(q.ba=0,q.J=0,q.f1=false,q.L=null,q).Xs=[],q).wa=0,(q.vx=void 0,q).j=(q.Iw=0,q.ga=false,q.p1=(q.i=void 0,q.T=[],8001),void 0),q.a2=function(W){return L.call(this,19,W)},(q.u=(q.g=[],0),q.l=void 0,q).v=(q.s=[],void 0),X=window.performance||{},q.S=0,q.G=(q.ZI=void 0,q.Qb=1,q.h=void 0,q.h8=0,q),q.ia=[],X.timeOrigin)||(X.timing||{}).navigationStart||0,233),q,0),q),0),q),[57,0,0]),c(22,q,function(W,C,K,y,O){(C=t(W,(K=0!=(O=(y=E(26,W),E(10,W)),t)(W,y),O)),K)&&c(233,W,C)}),q),function(W,C,K){K=t((C=E(58,W),W.G),C),K[0].removeEventListener(K[1],K[2],Rt)}),function(W,C,K,y,O,u,U,J,r,g){0!==(J=t((U=(C=E(46,(y=E((g=E(10,W),30),W),W)),E(30,W)),K=t(W,U),r=t(W,C),W.G),g),u=t(W,y),J)&&(O=E(17,1,false,W,1,r,K,J,u),J.addEventListener(u,O,Rt),c(339,W,[J,u,O]))})),176),q,function(W,C,K,y,O){for(K=(C=gI(59,7,(O=E(10,W),21),W),0),y=[];K>>C)}),c)(168,q,[0,0,0]),q),function(W,C,K,y,O){!T(0,36,C,true,false,W)&&(O=MB(26,0,W,1),y=O.Px,K=O.xb,W.G==W||K==W.a2&&y==W)&&(c(O.No,W,K.apply(y,O.W)),W.S=W.X())}),4))),q),function(W,C,K,y,O,u,U){(K=E(58,(C=E(42,W),O=E(78,W),W)),W.G)==W&&(U=t(W,K),y=t(W,C),u=t(W,O),y[u]=U,399==C&&(W.j=void 0,2==u&&(W.i=tB(W,32,0,false),W.j=void 0)))}),447)),h)),q),function(W,C,K,y,O,u,U,J,r,g,z,Z,e,A){if(!T(0,20,C,true,true,W)){if("object"==cR("null",(u=t(W,(y=t(W,(K=t(W,(Z=t((r=E((g=E(78,(e=E(30,(O=E(46,W),W)),W)),14),W),W),r),e)),g)),O)),u),"array")){for(U in J=[],u)J.push(U);u=J}for(A=(z=(y=0>=(e-=(v=Z&(1<=v.length;)v.push(E(30,B));F=v[F]}Ux.push(F)}B.v=gI(59,(B.l=gI(59,VQ.slice(),12,B),Ux),14,B)})})),q),function(W,C,K,y){c((K=(C=E((y=E(14,W),78),W),E)(58,W),K),W,t(W,y)||t(W,C))}),q),function(W){JY(4,W)}),0)),{})),0),q,[Bj]),0),q,[xT,V]),0),q,[f3,P]),1),254,true,q,true)},jT=function(V,P){for(P=[];V--;)P.push(255*Math.random()|0);return P},$m=function(V,P,q,M,X,m,W,C,K,y){if((y=M[0],y)==Ym)V.L1=25,V.D(M);else if(y==dI){C=M[1];try{K=V.h||V.D(M)}catch(O){x(2048,17,V,O),K=V.h}C(K)}else if(y==HR)V.D(M);else if(y==xT)V.D(M);else if(y==f3){try{for(W=0;WM;M++)P[M]+=V[M];for(q=[13,8,13,12,16,5,3,10,15],X=0;9>X;X++)P[3](P,X%3,q[X])}},QQ=function(V){return Ox.call(this,4,3,V)},ZI=function(V,P,q,M,X,m,W,C,K,y,O,u){(P.push(V[0]<<24|V[1]<<16|V[2]<<8|V[3]),P).push((W=(C=(u=V[4]<<24,X=V[5]<<16,-~(u&X)-1+(u^X)),y=V[6]<<8,2*(y|0)- -1+~y+(C&~y)),K=V[7],-2*~W+~K-2*(~W^K)+3*(~W|K))),P.push((O=(M=V[8]<<24,q=V[9]<<16,(q|0)+~q-~(M|q)),m=V[10]<<8,-2-~O-(O|~m))|V[11])},h=this||self,vj=function(){return BR.call(this,14,16)},pQ="closure_uid_"+(1E9*Math.random()>>>0),iq,F1=0,It=function(V,P){if(!h.addEventListener||!Object.defineProperty)return false;P=(V=false,Object.defineProperty({},"passive",{get:function(){V=true}}));try{h.addEventListener("test",function(){},P),h.removeEventListener("test",function(){},P)}catch(q){}return V}(),CQ={2:"touch",3:(I(97,((G.prototype.stopPropagation=(km.prototype.Hx=false,function(){this.F=true}),G.prototype).preventDefault=function(){this.defaultPrevented=true},2),H,G),"pen"),4:"mouse"},yQ="closure_listenable_"+(H.prototype.preventDefault=function(V){(V=(H.I.preventDefault.call(this),this.O),V).preventDefault?V.preventDefault():V.returnValue=false},H.prototype.stopPropagation=function(){(H.I.stopPropagation.call(this),this.O.stopPropagation)?this.O.stopPropagation():this.O.cancelBubble=true},1E6*Math.random()|0),SX=0,OL="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" "),hB=(QQ.prototype.hasListener=function(V,P,q,M,X){return BR(14,30,(M=void 0!==(q=(X=void 0!==V)?V.toString():"",P),false),true,this.o,function(m,W){for(W=0;W>>0);(((D=((I(65,2,zg,km),zg.prototype)[yQ]=true,zg.prototype),D.da=function(V){this.Um=V},D).addEventListener=function(V,P,q,M){I(10,0,true,this,V,P,M,q)},D).removeEventListener=function(V,P,q,M){L(89,0,"object",M,this,q,V,P)},D).dispatchEvent=function(V,P,q,M,X,m,W,C,K,y,O){if(X=this.Um)for(C=[];X;X=X.Um)C.push(X);if(q=((P=(K=(M=(O=V,this.ua),C),O.type||O),"string"===typeof O)?O=new G(O,M):O instanceof G?O.target=O.target||M:(m=O,O=new G(P,M),uR(O,m)),true),K)for(y=K.length-1;!O.F&&0<=y;y--)W=O.currentTarget=K[y],q=b(9,0,W,O,true,P)&&q;if(O.F||(W=O.currentTarget=M,q=b(8,0,W,O,true,P)&&q,O.F||(q=b(7,0,W,O,false,P)&&q)),K)for(y=0;!O.F&&yM;m!=P&&(q=X,P?q.tabIndex=0:(q.tabIndex=-1,q.removeAttribute("tabIndex")))}},D).Om=function(){return"goog-control"},D.GZ=function(V,P,q,M){(M=P.V?P.V():P)&&(q?rw:Wj)(M,[V])},D).kb=function(V){return V.V()},D.zZ=function(V,P,q,M,X,m,W){((M=($T||($T={1:"disabled",8:"selected",16:"checked",64:"expanded"}),X=$T[P],V.getAttribute("role")||null))?(m=RH[M]||X,W="checked"==X||"selected"==X?m:X):W=X,W)&&k("live",9,"off",q,W,V)},D).H=function(V,P,q,M,X,m){if(X=P.V())this.Wx||(m=this.Om(),m.replace(/\\xa0|\\s/g," "),this.Wx={1:m+"-disabled",2:m+"-hover",4:m+"-active",8:m+"-selected",16:m+"-checked",32:m+"-focused",64:m+"-open"}),(M=this.Wx[V])&&this.GZ(M,P,q),this.zZ(X,V,q)},"selected"),treeitem:"selected"},X1=(L((I(81,2,Pj,Xq),16),Pj),Pj.prototype.zZ=function(V,P,q){switch(P){case 8:case 16:k("live",8,"off",q,"pressed",V);break;default:case 64:case 1:Pj.I.zZ.call(this,V,P,q)}},Pj.prototype.Om=function(){return"goog-button"},{});if(((((((((D=(I(49,2,w,PR),w.prototype),D).N=39,D.A=null,D).yb=function(){((w.I.yb.call(this),this.Gv)&&this.Gv.detach(),this).isVisible()&&this.isEnabled()&&this.Y.J8(this,false)},D).C=0,D.CI=true,D.kb=function(){return this.Y.kb(this)},D).ow=0,D).GZ=function(V,P){V?P&&(this.A?Ox(4,30,1,P,this.A)||this.A.push(P):this.A=[P],this.Y.GZ(P,this,true)):P&&this.A&&k(P,17,1,this.A)&&(0==this.A.length&&(this.A=null),this.Y.GZ(P,this,false))},D).Yb=255,D.isVisible=function(){return this.CI},D.isEnabled=function(){return!(this.C&1)},D.isActive=function(){return!!(this.C&4)},D).setActive=function(V){R(22,34,64,this,V,4)&&this.H(V,4)},D.getState=function(){return this.C},D.H=function(V,P,q,M,X,m){q||1!=P?this.N&P&&V!=!!(this.C&P)&&(this.Y.H(P,this,V),this.C=V?this.C|P:(X=this.C,~P-~(X&~P)+~~P)):(M=!V,m=this.getParent(),m&&"function"==typeof m.isEnabled&&!m.isEnabled()||!R(22,35,64,this,!M,1)||(M||(this.setActive(false),R(22,33,64,this,false,2)&&this.H(false,2)),this.isVisible()&&this.Y.J8(this,M),this.H(!M,1,true)))},"function")!==typeof w)throw Error("Invalid component class "+w);if("function"!==typeof Xq)throw Error("Invalid renderer class "+Xq);var NB=MQ(108,w,8),LQ=(BR(14,(I(73,((((I(65,2,(BR(14,5,"goog-control",(X1[NB]=Xq,function(){return new w(null)})),n),Pj),L(5,n),n.prototype).zZ=function(){},n.prototype).J8=function(){},n.prototype).H=function(V,P,q,M){(n.I.H.call(this,V,P,q),(M=P.V())&&1==V)&&(M.disabled=q)},2),QD,w),13),"goog-button",function(){return new QD(null)}),h.requestIdleCallback)?function(V){requestIdleCallback(function(){V()},{timeout:4})}:h.setImmediate?function(V){setImmediate(V)}:function(V){setTimeout(V,0)},Rt={passive:true,capture:true},Tg,VD=String.fromCharCode(105,110,116,101,103,67,104,101,99,107,66,121,112,97,115,115),IH=(a.prototype.dX=void 0,a.prototype.jC="toString",a.prototype.X_=void 0,[]),f3=(a.prototype.Mo=false,[]),Ym=[],HR=[],Bj=[],C3={},dI=[],Z1=[],xT=[],lq=(((D=((((ZI,function(){})(jT),gw,function(){})(TD),a).prototype.U="create",a).prototype,D).QC=function(V,P,q,M,X,m,W){return R.call(this,22,7,V,P,q,M,X,m,W)},D.AV=function(){return qQ.call(this,2,9,5)},D).Vb=function(V,P,q,M,X,m){return E.call(this,6,V,P,q,M,X,m)},D.lV=function(){return Q.call(this,17)},void 0),rI=(D.X=(D.eA=function(V,P,q,M,X,m,W){return JB.call(this,60,5,8,V,P,q,M,X,m,W)},(window.performance||{}).now?function(){return this.yC+window.performance.now()}:function(){return+new Date}),D.gX=function(V,P,q,M,X,m,W){return bq.call(this,0,P,V,21,q,M,X,m,W)},C3.constructor);(a.prototype.D=function(V,P){return P=(lq=function(){return V==P?-4:-58},{}),V={},function(q,M,X,m,W,C,K,y,O,u,U,J,r,g,z,Z,e,A,d,VQ,f,B,v,F,Ux,S,wI){V=(y=V,P);try{if(U=q[0],U==xT){F=q[1];try{for(K=(W=atob(F),[]),S=u=0;u>=8),K[S++]=f;c(399,this,(this.T=K,this.J=this.T.length<<3,[0,0,0]))}catch(cj){yD(17,cj,439,this);return}ot(62,310,this,8001)}else if(U==Ym)q[1].push(t(this,439),t(this,91).length,t(this,144).length,t(this,320).length),c(69,this,q[2]),this.s[435]&&qB(62,t(this,435),8001,this,233);else{if(U==dI){B=l(2,(M=t((m=q[2],this),91).length,(M&2)-1-~(M|2))),C=this.G,this.G=this;try{r=t(this,398),0 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | SEEAvatar 16 | 17 | 18 | 19 | 20 |
21 | 22 |
23 | 24 |

🧐SEEAvatar: Photorealistic Text-to-3D Avatar Generation with Constrained Geometry and Appearance

25 | 26 | 27 |

28 | Yuanyou Xu1, 29 | Zongxin Yang1, 30 | Yi Yang1 31 |

32 | 33 |

34 | 1 ReLER, CCAI, Zhejiang University   35 |

36 | 37 | 38 |
39 | 40 | Arxiv 41 | 42 | 43 | Code 44 | 45 |
46 |
47 | 50 |

Photorealistic avatars represented in meshes and textures generated from text prompt by our method, exported to Blender for offline rendering, with additional 3D assets for building scenes.

51 |
52 | 53 |

Photorealistic avatars represented in meshes and textures generated from text prompt by our method, exported to Unreal Engine for real-time rendering, with additional 3D assets for building scenes.

54 | 55 |
56 | 57 | 58 |

Abstract

59 |

60 | - Powered by large-scale text-to-image generation models, text-to-3D avatar generation has made promising progress. However, most methods fail to produce photorealistic results, limited by imprecise geometry and low-quality appearance. Towards more practical avatar generation, we present SEEAvatar, a method for generating photorealistic 3D avatars from text with SElf-Evolving constraints for decoupled geometry and appearance. 61 |
62 | - For geometry, we propose to constrain the optimized avatar in a decent global shape with a template avatar. The template avatar is initialized with human prior and can be updated by the optimized avatar periodically as an evolving template, which enables more flexible shape generation. Besides, the geometry is also constrained by the static human prior in local parts like face and hands to maintain the delicate structures. 63 |
64 | - For appearance generation, we use diffusion model enhanced by prompt engineering to guide a physically based rendering pipeline to generate realistic textures. The lightness constraint is applied on the albedo texture to suppress incorrect lighting effect. 65 |
66 | - Experiments show that our method outperforms previous methods on both global and local geometry and appearance quality by a large margin. Since our method can produce high-quality meshes and textures, such assets can be directly applied in classic graphics pipeline for realistic rendering under any lighting condition. 67 |

68 | 69 |
70 | 71 | 72 |

Results

73 |

74 | All avatars are generated and rendered in full-body manner. Heads are rendered in a larger size for better view. 75 |

76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 |
Batman Joker Spiderman
94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 |
Abraham Lincoln Barack Obama Hillary Clinton
113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 |
Ludwig van Beethoven Wolfgang Amadeus Mozart Vincent van Gogh
132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 |
Captain Jack Sparrow Doctor Strange Elsa in Frozen
151 |
152 | 153 | 154 |

Comparison

155 |

156 | Comparison with text-to-avatar methods, NeRF-based DreamWaltz and mesh-based TADA. 157 |

158 | 159 |

160 | 161 | 162 |

Animation

163 |

164 | Generated avatars are animated by retargeting motion sequences from Mixamo. 165 |

166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 |
Joker turning around Spiderman swinging Bruce Lee kicking
184 |
185 | 186 | 187 |

Relighting

188 |

189 | Generated avatars are lighted by multiple lights with different colors from different angles. 190 |

191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 |
Joker lighted Spiderman lighted Bruce Lee lighted
209 | 210 | 211 |
212 |
213 |

Citation

214 |
215 |
216 |
@article{xu2023seeavatar,
217 |   title={SEEAvatar: Photorealistic Text-to-3D Avatar Generation with Constrained Geometry and Appearance},
218 |   author={Xu, Yuanyou and Yang, Zongxin and Yang, Yi},
219 |   journal={arXiv preprint arXiv:2312.08889},
220 |   year={2023}
221 | }
222 |
223 |
224 |
225 | 226 | 227 |
228 | 229 | 253 | --------------------------------------------------------------------------------