diff --git a/images/computer-light-m.webp b/images/computer-light-m.webp new file mode 100644 index 0000000000000000000000000000000000000000..d71fce989aef1f6acd3b82d366fcd1c899316526 Binary files /dev/null and b/images/computer-light-m.webp differ diff --git a/images/computer-light.webp b/images/computer-light.webp new file mode 100644 index 0000000000000000000000000000000000000000..19d4ea300691c6a8972d6a5a0ec872e399e51f89 Binary files /dev/null and b/images/computer-light.webp differ diff --git a/images/svg/chevron-down.svg b/images/svg/chevron-down.svg new file mode 100644 index 0000000000000000000000000000000000000000..23ac4fe4f04f8b035afeaed7814f60abccbc41c6 --- /dev/null +++ b/images/svg/chevron-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/header.sprite.svg b/images/svg/header.sprite.svg new file mode 100644 index 0000000000000000000000000000000000000000..51b8ee0d65e11b02b7b9cf7982678bbb4a55017e --- /dev/null +++ b/images/svg/header.sprite.svg @@ -0,0 +1,8 @@ + diff --git a/images/svg/logotypes-m.svg b/images/svg/logotypes-m.svg new file mode 100644 index 0000000000000000000000000000000000000000..e98ea372ec2fb3e68994fc0cb164e7daed9be0b3 --- /dev/null +++ b/images/svg/logotypes-m.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/logotypes.svg b/images/svg/logotypes.svg new file mode 100644 index 0000000000000000000000000000000000000000..067946881c901936346611774197dae697d5cf14 --- /dev/null +++ b/images/svg/logotypes.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/nft-wallpaper-city-night-1.svg b/images/svg/nft-wallpaper-city-night-1.svg new file mode 100644 index 0000000000000000000000000000000000000000..efa8cdabf00d018ae5696611b5f8cb48a23f22c7 --- /dev/null +++ b/images/svg/nft-wallpaper-city-night-1.svg @@ -0,0 +1,225 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/images/svg/nft-wallpaper-city-night-2.svg b/images/svg/nft-wallpaper-city-night-2.svg new file mode 100644 index 0000000000000000000000000000000000000000..5ba6aa14cb15d74a384a5311e3d9ff602e339bb6 --- /dev/null +++ b/images/svg/nft-wallpaper-city-night-2.svg @@ -0,0 +1,232 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/images/svg/profile.sprite.svg b/images/svg/profile.sprite.svg new file mode 100644 index 0000000000000000000000000000000000000000..e041ae9e4a6e685dd3f34eb95fa0a35fc4f48466 --- /dev/null +++ b/images/svg/profile.sprite.svg @@ -0,0 +1,28 @@ + + + diff --git a/images/svg/settings.sprite.svg b/images/svg/settings.sprite.svg new file mode 100644 index 0000000000000000000000000000000000000000..e5f4fe6a4630764493ca2e68842c484b0ae5ec8f --- /dev/null +++ b/images/svg/settings.sprite.svg @@ -0,0 +1,65 @@ + + + + diff --git a/images/svg/sprite.svg b/images/svg/sprite.svg new file mode 100644 index 0000000000000000000000000000000000000000..e23d35dd0fc62f92cf292fe9a838768e17b8b0f2 --- /dev/null +++ b/images/svg/sprite.svg @@ -0,0 +1,72 @@ + diff --git a/images/svg/sprite/arrow.down.circle.svg b/images/svg/sprite/arrow.down.circle.svg new file mode 100644 index 0000000000000000000000000000000000000000..e57d6d3196c6f6adc9b401c32656de0d3c2ec379 --- /dev/null +++ b/images/svg/sprite/arrow.down.circle.svg @@ -0,0 +1,3 @@ + + + diff --git a/images/svg/sprite/arrow.left.circle.svg b/images/svg/sprite/arrow.left.circle.svg new file mode 100644 index 0000000000000000000000000000000000000000..6b33304a0df22c4408a859941d5fb9198fdc33e4 --- /dev/null +++ b/images/svg/sprite/arrow.left.circle.svg @@ -0,0 +1 @@ + diff --git a/images/svg/sprite/arrow.left.right.svg b/images/svg/sprite/arrow.left.right.svg new file mode 100644 index 0000000000000000000000000000000000000000..0eaed985956ec937acf6e9cc6fc8eb36aa5217d5 --- /dev/null +++ b/images/svg/sprite/arrow.left.right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/at.svg b/images/svg/sprite/at.svg new file mode 100644 index 0000000000000000000000000000000000000000..45a50f084a6c4b886a9208b93f3434c5d2d528ef --- /dev/null +++ b/images/svg/sprite/at.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/behance.svg b/images/svg/sprite/behance.svg new file mode 100644 index 0000000000000000000000000000000000000000..b6c1ba3dc3efb925b84718c0c83e72c822a6cc9b --- /dev/null +++ b/images/svg/sprite/behance.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/browser-safari.svg b/images/svg/sprite/browser-safari.svg new file mode 100644 index 0000000000000000000000000000000000000000..23b3182ee691167174fd6504b42bbc44a929172c --- /dev/null +++ b/images/svg/sprite/browser-safari.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/check.svg b/images/svg/sprite/check.svg new file mode 100644 index 0000000000000000000000000000000000000000..cf59751682396bcd4fe9ca97da9095391727b24e --- /dev/null +++ b/images/svg/sprite/check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/cookie.svg b/images/svg/sprite/cookie.svg new file mode 100644 index 0000000000000000000000000000000000000000..eff50f54a6a854916c3c716b6a2c2b9cbad0ebf7 --- /dev/null +++ b/images/svg/sprite/cookie.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/copyright.svg b/images/svg/sprite/copyright.svg new file mode 100644 index 0000000000000000000000000000000000000000..f43064df27af6b64b7c541893a65eb368b929643 --- /dev/null +++ b/images/svg/sprite/copyright.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/cross.svg b/images/svg/sprite/cross.svg new file mode 100644 index 0000000000000000000000000000000000000000..d148e7771df92965af1bf23933a8170f0a844c5d --- /dev/null +++ b/images/svg/sprite/cross.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/database-fill-down.svg b/images/svg/sprite/database-fill-down.svg new file mode 100644 index 0000000000000000000000000000000000000000..7b9c990bdef392e0077b14624e1b0a99268a6d22 --- /dev/null +++ b/images/svg/sprite/database-fill-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/discord.svg b/images/svg/sprite/discord.svg new file mode 100644 index 0000000000000000000000000000000000000000..2a62ea42f857c23724f81ecb7f18e7779d461f5e --- /dev/null +++ b/images/svg/sprite/discord.svg @@ -0,0 +1 @@ + diff --git a/images/svg/sprite/divider.svg b/images/svg/sprite/divider.svg new file mode 100644 index 0000000000000000000000000000000000000000..2d0c358ff59200718dea710fde51464437428d7c --- /dev/null +++ b/images/svg/sprite/divider.svg @@ -0,0 +1 @@ + diff --git a/images/svg/sprite/envelope-fill.svg b/images/svg/sprite/envelope-fill.svg new file mode 100644 index 0000000000000000000000000000000000000000..67f8faef2a711594b0639fe22e769572e902badf --- /dev/null +++ b/images/svg/sprite/envelope-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/facebook.svg b/images/svg/sprite/facebook.svg new file mode 100644 index 0000000000000000000000000000000000000000..2c96b4124cd8b3641e0301c6d032b31ca0ff083d --- /dev/null +++ b/images/svg/sprite/facebook.svg @@ -0,0 +1 @@ + diff --git a/images/svg/sprite/faceid.svg b/images/svg/sprite/faceid.svg new file mode 100644 index 0000000000000000000000000000000000000000..0de9a32339c167206d630263cb81eb993e720b97 --- /dev/null +++ b/images/svg/sprite/faceid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/fingerprint.svg b/images/svg/sprite/fingerprint.svg new file mode 100644 index 0000000000000000000000000000000000000000..123971e5d01a7eb54d5cd272119724a3c794f314 --- /dev/null +++ b/images/svg/sprite/fingerprint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/gear.svg b/images/svg/sprite/gear.svg new file mode 100644 index 0000000000000000000000000000000000000000..fcc161e0b6e04407ab35f4d949e462823951a30e --- /dev/null +++ b/images/svg/sprite/gear.svg @@ -0,0 +1,3 @@ + + + diff --git a/images/svg/sprite/github.svg b/images/svg/sprite/github.svg new file mode 100644 index 0000000000000000000000000000000000000000..0de9a32339c167206d630263cb81eb993e720b97 --- /dev/null +++ b/images/svg/sprite/github.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/instagram.svg b/images/svg/sprite/instagram.svg new file mode 100644 index 0000000000000000000000000000000000000000..1a1f691825f2deda506736d0179153ceb4947a9a --- /dev/null +++ b/images/svg/sprite/instagram.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/legal.svg b/images/svg/sprite/legal.svg new file mode 100644 index 0000000000000000000000000000000000000000..00c64332da5aedf8f476b9b062597392c91e2e3d --- /dev/null +++ b/images/svg/sprite/legal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/link.svg b/images/svg/sprite/link.svg new file mode 100644 index 0000000000000000000000000000000000000000..1ae5f0d560c88d9fb8af4d80dc3c97804f6fb3aa --- /dev/null +++ b/images/svg/sprite/link.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/linkedin.svg b/images/svg/sprite/linkedin.svg new file mode 100644 index 0000000000000000000000000000000000000000..1de902a25afc622fe7a69289885f3994b57a7d13 --- /dev/null +++ b/images/svg/sprite/linkedin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/location.svg b/images/svg/sprite/location.svg new file mode 100644 index 0000000000000000000000000000000000000000..773fe2532d160330e5c3fc22a41363b6810436ac --- /dev/null +++ b/images/svg/sprite/location.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/locker.svg b/images/svg/sprite/locker.svg new file mode 100644 index 0000000000000000000000000000000000000000..fcc606f2406bd873364f89ed5311a0c80026afe8 --- /dev/null +++ b/images/svg/sprite/locker.svg @@ -0,0 +1 @@ + diff --git a/images/svg/sprite/mailbox.svg b/images/svg/sprite/mailbox.svg new file mode 100644 index 0000000000000000000000000000000000000000..cf25dda0d627a58971c7810c3ead66b351a6ffe7 --- /dev/null +++ b/images/svg/sprite/mailbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/mastodon.svg b/images/svg/sprite/mastodon.svg new file mode 100644 index 0000000000000000000000000000000000000000..8b41a039c911cbf3e245ee9ecea9603fd4f296ba --- /dev/null +++ b/images/svg/sprite/mastodon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/medium.svg b/images/svg/sprite/medium.svg new file mode 100644 index 0000000000000000000000000000000000000000..aadc767aee946a0c48950ce91d55a01beaa201ba --- /dev/null +++ b/images/svg/sprite/medium.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/messenger.svg b/images/svg/sprite/messenger.svg new file mode 100644 index 0000000000000000000000000000000000000000..c4f01e5b5a174fd5b817b8ed2350827779ab0cce --- /dev/null +++ b/images/svg/sprite/messenger.svg @@ -0,0 +1 @@ + diff --git a/images/svg/sprite/network.svg b/images/svg/sprite/network.svg new file mode 100644 index 0000000000000000000000000000000000000000..08e478c4ca9260d63041c774b673ba005a703361 --- /dev/null +++ b/images/svg/sprite/network.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/pass.svg b/images/svg/sprite/pass.svg new file mode 100644 index 0000000000000000000000000000000000000000..c79b9ecab9e0df4afdc35f21defdf75ff12baaaa --- /dev/null +++ b/images/svg/sprite/pass.svg @@ -0,0 +1,3 @@ + + + diff --git a/images/svg/sprite/passkey.svg b/images/svg/sprite/passkey.svg new file mode 100644 index 0000000000000000000000000000000000000000..34243c8f6c62014e8db7247e0c585f015996cc06 --- /dev/null +++ b/images/svg/sprite/passkey.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/paypal.svg b/images/svg/sprite/paypal.svg new file mode 100644 index 0000000000000000000000000000000000000000..fe3f91ab14684cc9c148388c8c03ec4172963bf1 --- /dev/null +++ b/images/svg/sprite/paypal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/pen.svg b/images/svg/sprite/pen.svg new file mode 100644 index 0000000000000000000000000000000000000000..8d15445d378bf12e27d5f4566bd1d46281c84e0c --- /dev/null +++ b/images/svg/sprite/pen.svg @@ -0,0 +1,3 @@ + + + diff --git a/images/svg/sprite/people-fill.svg b/images/svg/sprite/people-fill.svg new file mode 100644 index 0000000000000000000000000000000000000000..979c93dcf65264d837fd1adcc84d837b8fc12095 --- /dev/null +++ b/images/svg/sprite/people-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/person.crop.circle.svg b/images/svg/sprite/person.crop.circle.svg new file mode 100644 index 0000000000000000000000000000000000000000..c191bb69172fbe53fe8a5825289ba851d5638f57 --- /dev/null +++ b/images/svg/sprite/person.crop.circle.svg @@ -0,0 +1,3 @@ + + + diff --git a/images/svg/sprite/playstation.svg b/images/svg/sprite/playstation.svg new file mode 100644 index 0000000000000000000000000000000000000000..b232ac05050f51c8902c8d62831b9cb76ffd11ac --- /dev/null +++ b/images/svg/sprite/playstation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/plus.svg b/images/svg/sprite/plus.svg new file mode 100644 index 0000000000000000000000000000000000000000..0f5d72005130df6ae7b09eafe4fbd4b7a1cbba97 --- /dev/null +++ b/images/svg/sprite/plus.svg @@ -0,0 +1,3 @@ + + + diff --git a/images/svg/sprite/radioactive.svg b/images/svg/sprite/radioactive.svg new file mode 100644 index 0000000000000000000000000000000000000000..cedb795cf19e04bdfc6d9c5234e18924485baa6a --- /dev/null +++ b/images/svg/sprite/radioactive.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/reddit.svg b/images/svg/sprite/reddit.svg new file mode 100644 index 0000000000000000000000000000000000000000..90b71d4f5b8522a07372f95521d3ce2e36c397bd --- /dev/null +++ b/images/svg/sprite/reddit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/right-arrow.svg b/images/svg/sprite/right-arrow.svg new file mode 100644 index 0000000000000000000000000000000000000000..8393d0ba31f08eb6e87ca4b13dc9487bc9267f4f --- /dev/null +++ b/images/svg/sprite/right-arrow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/rosette.svg b/images/svg/sprite/rosette.svg new file mode 100644 index 0000000000000000000000000000000000000000..f424c790391441718ef7ee8a2bd6759ef121abe5 --- /dev/null +++ b/images/svg/sprite/rosette.svg @@ -0,0 +1,3 @@ + + + diff --git a/images/svg/sprite/share.svg b/images/svg/sprite/share.svg new file mode 100644 index 0000000000000000000000000000000000000000..3cfa7fdb5aa60bed484bf6811c7ef303f2b1a7d2 --- /dev/null +++ b/images/svg/sprite/share.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/shield.filled.svg b/images/svg/sprite/shield.filled.svg new file mode 100644 index 0000000000000000000000000000000000000000..72dd49ed08a681c2c0b894910049d23e5bc26c55 --- /dev/null +++ b/images/svg/sprite/shield.filled.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/signature.svg b/images/svg/sprite/signature.svg new file mode 100644 index 0000000000000000000000000000000000000000..dc9101f2242db41b9a2e43303ccf77748d8c38ab --- /dev/null +++ b/images/svg/sprite/signature.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/snapchat.svg b/images/svg/sprite/snapchat.svg new file mode 100644 index 0000000000000000000000000000000000000000..5b378d5b19fe2cf859484c0d4f3e02197d152f2f --- /dev/null +++ b/images/svg/sprite/snapchat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/telegram.svg b/images/svg/sprite/telegram.svg new file mode 100644 index 0000000000000000000000000000000000000000..d54aa01409421f2ad47eca5a8de50934cd668019 --- /dev/null +++ b/images/svg/sprite/telegram.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/threads.svg b/images/svg/sprite/threads.svg new file mode 100644 index 0000000000000000000000000000000000000000..a02794fd1cadb81143423280e2c8e7358cdb7cd4 --- /dev/null +++ b/images/svg/sprite/threads.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/three-dots.svg b/images/svg/sprite/three-dots.svg new file mode 100644 index 0000000000000000000000000000000000000000..ee1b0d679468419c87de1dd45001257a767ed30f --- /dev/null +++ b/images/svg/sprite/three-dots.svg @@ -0,0 +1,2 @@ + + diff --git a/images/svg/sprite/twitch.svg b/images/svg/sprite/twitch.svg new file mode 100644 index 0000000000000000000000000000000000000000..ea9bc35f54c45e92cd96b1db64252a080fe92eec --- /dev/null +++ b/images/svg/sprite/twitch.svg @@ -0,0 +1,4 @@ + + + + diff --git a/images/svg/sprite/twitter-x.svg b/images/svg/sprite/twitter-x.svg new file mode 100644 index 0000000000000000000000000000000000000000..375094afa77890ca8efa6f0b7ad65d3ded2680f4 --- /dev/null +++ b/images/svg/sprite/twitter-x.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/sprite/twitter.svg b/images/svg/sprite/twitter.svg new file mode 100644 index 0000000000000000000000000000000000000000..ce855de7f496bd9bc250e3e17180a69f5ae9a838 --- /dev/null +++ b/images/svg/sprite/twitter.svg @@ -0,0 +1 @@ + diff --git a/images/svg/sprite/youtube.svg b/images/svg/sprite/youtube.svg new file mode 100644 index 0000000000000000000000000000000000000000..715dd7a79d819caca7c88392bd3b80cb63163dbe --- /dev/null +++ b/images/svg/sprite/youtube.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/svg/usaflg.svg b/images/svg/usaflg.svg new file mode 100644 index 0000000000000000000000000000000000000000..f65d81dc56ea741e94e6b240b683a745a32f7997 --- /dev/null +++ b/images/svg/usaflg.svg @@ -0,0 +1 @@ + diff --git a/images/top-computer-mockup-back-m.webp b/images/top-computer-mockup-back-m.webp new file mode 100644 index 0000000000000000000000000000000000000000..369ec84a1d2a5c4419e5220232e6bbf5fc37f9bf Binary files /dev/null and b/images/top-computer-mockup-back-m.webp differ diff --git a/images/top-computer-mockup-back.webp b/images/top-computer-mockup-back.webp new file mode 100644 index 0000000000000000000000000000000000000000..838a8c7c052df40405384702e666d441eda04cb6 Binary files /dev/null and b/images/top-computer-mockup-back.webp differ diff --git a/images/top-computer-mockup-front-m.webp b/images/top-computer-mockup-front-m.webp new file mode 100644 index 0000000000000000000000000000000000000000..59dc24a7a1b50040d2198d115f664506480c31de Binary files /dev/null and b/images/top-computer-mockup-front-m.webp differ diff --git a/images/top-computer-mockup-front.webp b/images/top-computer-mockup-front.webp new file mode 100644 index 0000000000000000000000000000000000000000..8efb2c69321ff64d412aa6a9bbd60977a3aff9ea Binary files /dev/null and b/images/top-computer-mockup-front.webp differ diff --git a/index.html b/index.html index b0c4b3666032a737f3903db53e6a8a9272483e28..878a2944b467d982186441b4de1f21ef0d621872 100644 --- a/index.html +++ b/index.html @@ -1,19 +1,448 @@ - - - - - - My static Space - - - -
-

Welcome to your static Space!

-

You can modify this app directly by editing index.html in the Files and versions tab.

-

- Also don't forget to check the - Spaces documentation. -

-
- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Louis Brulé Naudet + + + + +
+
+ +
+
+
+
+
+

Découvrez le
portfolio de Louis
Brulé Naudet

+

Fiscaliste développeur diplômé du Master 221 Fiscalité
de l'entreprise de l'Université Dauphine-PSL.

+
+ + + MacBook Mockup + +
+ + + Screenshot + +
+
+

Spécialisation dans la conception d'interfaces de programmation dédiées au Machine Learning, l'informatique appliquée à la fiscalité, le plongement lexical à destination de la pratique juridique et l'intelligence artificielle générative.

+ Curriculum vitae +
+
+
+
+

Une recherche soutenue
par Microsoft et Google
Cloud for Startups

+

Bénéficiaire des programmes d'accompagnement Microsoft for Startups et Google Cloud for IA Startups dans le cadre de recherches en apprentissage automatique appliqué à la fiscalité (Lemone).

+
+ + + Partenaires de confiance Lemone + +
+ + +

Premier lauréat du Défi Étudiants Entrepreuneurs de la Région Grand Est, double lauréat de l'appel à projets Mindstart de l'Université de Technologie de Troyes, et incubé au Technopôle de l'Aube, spécialisé en ingénierie de l’innovation en 2021.

+
+

Open-source

+

L'informatique libre a le potentiel de transformer fondamentalement les intéractions homme-machine, pour cette raison, une majeur partie du travail réalisé est disponible gratuitement, pour tous, sur GitHub et Hugging Face. Voici quelques projets réalisés récemment.

+
    +
  • +

    Domain-adapted mBERT for French Tax Practice

    +

    Ce modèle a été ajusté à l'aide d'un auto-encodeur de débruitage séquentiel basé sur des Transformers (TSDAE), dans le cadre d'un apprentissage non supervisé sur des données juridiques. L'objectif principal étant l'adaptation spécifique au domaine de la fiscalité française.

    +
  • +
  • +

    Docutron Toolkit : détection et analyse de segmentation pour l'extraction de données à partir de documents.

    +

    Docutron est un outil conçu pour faciliter l'extraction d'informations pertinentes à partir de documents juridiques, permettant aux professionnels de créer des ensembles de données pour affiner les modèles linguistiques (LLM) dans des domaines juridiques spécifiques.

    +
  • +
  • +

    Totpsaurus, unleash the Time-Traveling OTPs

    +

    Solution open-source ultralégère, non dépendante et minimaliste permettant de générer des mots de passe uniques basés sur le temps (TOTP), de créer des URL OTP et de générer des codes de sauvegarde sécurisés pour la récupération de comptes.

    +
  • +
  • +

    Open-sri, génération de hachages d'intégrité de sous-ressources

    +

    Une solution open-source minimaliste, non indépendante et ultra-légère pour générer de manière récursive des hachages d'intégrité de sous-ressources sha-256, sha-384 ou sha-512 afin d'authentifier les fichiers .js et .css.

    +
  • +
+ +

Découvrez également les bases de données publiées à destination des producteurs de modèles sur Hugging Face.

+
+

Quelques initiatives
pour une recherche libre
et pluridisciplinaire

+

Retrouvez les différents papiers sur les plateformes ResearchGate, HAL, Google Books et Google Scholar.

+ + + + + +
+
+

Merci pour votre visite

+

Diplômé du Master 2 Fiscalité de l'Entreprise (parcours 221) de l'Université Dauphine-PSL.
+
Spécialisation dans la conception d'interfaces de programmation dédiées au Machine Learning, l'informatique appliquée à la fiscalité, la conception d’architectures itératives pour la production de documents complexes, le pré-traitement multimodal et l'intelligence artificielle générative.
+
Télécharger la vCard. +

+
+
+ + + Ordinateur de présentation Lemone + +
+
+
+
+
+
+ + + + + + + diff --git a/scripts/partials/dropdown.component.js b/scripts/partials/dropdown.component.js new file mode 100644 index 0000000000000000000000000000000000000000..f10468584891e8a36b2974827936507fce6589b4 --- /dev/null +++ b/scripts/partials/dropdown.component.js @@ -0,0 +1,11 @@ +const dropdowns = document.querySelectorAll('.dropdown'); + +dropdowns.forEach((dropdown) => { + const shortDesc = dropdown.querySelector('.short-description'); + const fullDesc = dropdown.querySelector('.full-description'); + + // Toggle open class on click + shortDesc.addEventListener('click', () => { + dropdown.classList.toggle('open'); + }); +}); \ No newline at end of file diff --git a/scripts/partials/navbar.component.js b/scripts/partials/navbar.component.js new file mode 100644 index 0000000000000000000000000000000000000000..6d7cc05eeaafe01c50e8aba22ea3f37f82fc2276 --- /dev/null +++ b/scripts/partials/navbar.component.js @@ -0,0 +1,9 @@ +function toggleMobileNav() { + document.getElementById("super-nav").classList.toggle("mobile"); + document.getElementById("filter").classList.toggle("filter-show"); + document.body.classList.toggle("noscroll"); +} + +document.getElementById("mobile-utility-check").addEventListener("click", toggleMobileNav); +document.getElementById("navbar-close").addEventListener("click", toggleMobileNav); +document.getElementById("filter").addEventListener("click", toggleMobileNav); \ No newline at end of file diff --git a/scripts/partials/twitter.widgets.js b/scripts/partials/twitter.widgets.js new file mode 100644 index 0000000000000000000000000000000000000000..5314f2abc9f3370172e261e4833bd54294807dee --- /dev/null +++ b/scripts/partials/twitter.widgets.js @@ -0,0 +1,8 @@ +Function&&Function.prototype&&Function.prototype.bind&&(/(MSIE ([6789]|10|11))|Trident/.test(navigator.userAgent)||(window.__twttr&&window.__twttr.widgets&&window.__twttr.widgets.loaded&&window.twttr.widgets.load&&window.twttr.widgets.load(),window.__twttr&&window.__twttr.widgets&&window.__twttr.widgets.init||function(t){function e(e){for(var n,i,o=e[0],s=e[1],a=0,c=[];a-1},forIn:i,isObject:s,isEmptyObject:a,toType:o,isType:function(t,e){return t==o(e)},toRealArray:u}},function(t,e){t.exports=window},function(t,e,n){var r=n(16),i=/(?:^|(?:https?:)?\/\/(?:www\.)?twitter\.com(?::\d+)?(?:\/intent\/(?:follow|user)\/?\?screen_name=|(?:\/#!)?\/))@?([\w]+)(?:\?|&|$)/i,o=/(?:^|(?:https?:)?\/\/(?:www\.)?twitter\.com(?::\d+)?\/(?:#!\/)?[\w_]+\/status(?:es)?\/)(\d+)/i,s=/^http(s?):\/\/(\w+\.)*twitter\.com([:/]|$)/i,a=/^http(s?):\/\/(ton|pbs)\.twimg\.com/,u=/^#?([^.,<>!\s/#\-()'"]+)$/,c=/twitter\.com(?::\d{2,4})?\/intent\/(\w+)/,d=/^https?:\/\/(?:www\.)?twitter\.com\/\w+\/timelines\/(\d+)/i,f=/^https?:\/\/(?:www\.)?twitter\.com\/i\/moments\/(\d+)/i,l=/^https?:\/\/(?:www\.)?twitter\.com\/(\w+)\/(?:likes|favorites)/i,h=/^https?:\/\/(?:www\.)?twitter\.com\/(\w+)\/lists\/([\w-%]+)/i,p=/^https?:\/\/(?:www\.)?twitter\.com\/i\/live\/(\d+)/i,m=/^https?:\/\/syndication\.twitter\.com\/settings/i,v=/^https?:\/\/(localhost|platform)\.twitter\.com(?::\d+)?\/widgets\/widget_iframe\.(.+)/i,g=/^https?:\/\/(?:www\.)?twitter\.com\/search\?q=(\w+)/i;function w(t){return"string"==typeof t&&i.test(t)&&RegExp.$1.length<=20}function y(t){if(w(t))return RegExp.$1}function b(t,e){var n=r.decodeURL(t);if(e=e||!1,n.screen_name=y(t),n.screen_name)return r.url("https://twitter.com/intent/"+(e?"follow":"user"),n)}function _(t){return"string"==typeof t&&u.test(t)}function E(t){return"string"==typeof t&&o.test(t)}t.exports={isHashTag:_,hashTag:function(t,e){if(e=void 0===e||e,_(t))return(e?"#":"")+RegExp.$1},isScreenName:w,screenName:y,isStatus:E,status:function(t){return E(t)&&RegExp.$1},intentForProfileURL:b,intentForFollowURL:function(t){return b(t,!0)},isTwitterURL:function(t){return s.test(t)},isTwimgURL:function(t){return a.test(t)},isIntentURL:function(t){return c.test(t)},isSettingsURL:function(t){return m.test(t)},isWidgetIframeURL:function(t){return v.test(t)},isSearchUrl:function(t){return g.test(t)},regexen:{profile:i},momentId:function(t){return f.test(t)&&RegExp.$1},collectionId:function(t){return d.test(t)&&RegExp.$1},intentType:function(t){return c.test(t)&&RegExp.$1},likesScreenName:function(t){return l.test(t)&&RegExp.$1},listScreenNameAndSlug:function(t){var e,n,r;if(h.test(t)){e=RegExp.$1,n=RegExp.$2;try{r=decodeURIComponent(n)}catch(t){}return{ownerScreenName:e,slug:r||n}}return!1},eventId:function(t){return p.test(t)&&RegExp.$1}}},function(t,e,n){var r=n(6);t.exports=function(){var t=this;this.promise=new r(function(e,n){t.resolve=e,t.reject=n})}},function(t,e){t.exports=document},function(t,e,n){var r=n(0),i=[!0,1,"1","on","ON","true","TRUE","yes","YES"],o=[!1,0,"0","off","OFF","false","FALSE","no","NO"];function s(t){return void 0!==t&&null!==t&&""!==t}function a(t){return c(t)&&t%1==0}function u(t){return c(t)&&!a(t)}function c(t){return s(t)&&!isNaN(t)}function d(t){return r.contains(o,t)}function f(t){return r.contains(i,t)}t.exports={hasValue:s,isInt:a,isFloat:u,isNumber:c,isString:function(t){return"string"===r.toType(t)},isArray:function(t){return s(t)&&"array"==r.toType(t)},isTruthValue:f,isFalseValue:d,asInt:function(t){if(a(t))return parseInt(t,10)},asFloat:function(t){if(u(t))return t},asNumber:function(t){if(c(t))return t},asBoolean:function(t){return!(!s(t)||!f(t)&&(d(t)||!t))}}},function(t,e,n){var r=n(1),i=n(20),o=n(45);i.hasPromiseSupport()||(r.Promise=o),t.exports=r.Promise},function(t,e,n){var r=n(0);t.exports=function(t,e){var n=Array.prototype.slice.call(arguments,2);return function(){var i=r.toRealArray(arguments);return t.apply(e,n.concat(i))}}},function(t,e){t.exports=location},function(t,e,n){var r=n(47);t.exports=new r("__twttr")},function(t,e,n){var r=n(0),i=/\b([\w-_]+)\b/g;function o(t){return new RegExp("\\b"+t+"\\b","g")}function s(t,e){t.classList?t.classList.add(e):o(e).test(t.className)||(t.className+=" "+e)}function a(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(o(e)," ")}function u(t,e){return t.classList?t.classList.contains(e):r.contains(c(t),e)}function c(t){return r.toRealArray(t.classList?t.classList:t.className.match(i))}t.exports={add:s,remove:a,replace:function(t,e,n){if(t.classList&&u(t,e))return a(t,e),void s(t,n);t.className=t.className.replace(o(e),n)},toggle:function(t,e,n){return void 0===n&&t.classList&&t.classList.toggle?t.classList.toggle(e,n):(n?s(t,e):a(t,e),n)},present:u,list:c}},function(t,e,n){var r=n(19),i=n(5),o=n(16),s=n(0),a=n(108);t.exports=function(t){var e=t.href&&t.href.split("?")[1],n=e?o.decode(e):{},u={lang:a(t),width:t.getAttribute("data-width")||t.getAttribute("width"),height:t.getAttribute("data-height")||t.getAttribute("height"),related:t.getAttribute("data-related"),partner:t.getAttribute("data-partner")};return i.asBoolean(t.getAttribute("data-dnt"))&&r.setOn(),s.forIn(u,function(t,e){var r=n[t];n[t]=i.hasValue(r)?r:e}),s.compact(n)}},function(t,e,n){var r=n(109),i=n(21);t.exports=function(){var t="data-twitter-extracted-"+i.generate();return function(e,n){return r(e,n).filter(function(e){return!e.hasAttribute(t)}).map(function(e){return e.setAttribute(t,"true"),e})}}},function(t,e){function n(t,e,n,r,i,o,s){this.factory=t,this.Sandbox=e,this.srcEl=o,this.targetEl=i,this.parameters=r,this.className=n,this.options=s}n.prototype.destroy=function(){this.srcEl=this.targetEl=null},t.exports=n},function(t,e){t.exports={DM_BUTTON:"twitter-dm-button",FOLLOW_BUTTON:"twitter-follow-button",HASHTAG_BUTTON:"twitter-hashtag-button",MENTION_BUTTON:"twitter-mention-button",MOMENT:"twitter-moment",PERISCOPE:"periscope-on-air",SHARE_BUTTON:"twitter-share-button",TIMELINE:"twitter-timeline",TWEET:"twitter-tweet"}},function(t,e,n){var r=n(6),i=n(19),o=n(50),s=n(34),a=n(5),u=n(0);t.exports=function(t,e,n){var c;return t=t||[],e=e||{},c="ƒ("+t.join(", ")+", target, [options]);",function(){var d,f,l,h,p=Array.prototype.slice.apply(arguments,[0,t.length]),m=Array.prototype.slice.apply(arguments,[t.length]);return m.forEach(function(t){t&&(t.nodeType!==Node.ELEMENT_NODE?u.isType("function",t)?d=t:u.isType("object",t)&&(f=t):l=t)}),p.length!==t.length||0===m.length?(d&&u.async(function(){d(!1)}),r.reject(new Error("Not enough parameters. Expected: "+c))):l?(f=u.aug({},f||{},e),t.forEach(function(t){f[t]=p.shift()}),a.asBoolean(f.dnt)&&i.setOn(),h=s.getExperiments().then(function(t){return o.addWidget(n(f,l,void 0,t))}),d&&h.then(d,function(){d(!1)}),h):(d&&u.async(function(){d(!1)}),r.reject(new Error("No target element specified. Expected: "+c)))}}},function(t,e,n){var r=n(5),i=n(0);function o(t){return encodeURIComponent(t).replace(/\+/g,"%2B").replace(/'/g,"%27")}function s(t){return decodeURIComponent(t)}function a(t){var e=[];return i.forIn(t,function(t,n){var s=o(t);i.isType("array",n)||(n=[n]),n.forEach(function(t){r.hasValue(t)&&e.push(s+"="+o(t))})}),e.sort().join("&")}function u(t){var e={};return t?(t.split("&").forEach(function(t){var n=t.split("="),r=s(n[0]),o=s(n[1]);if(2==n.length){if(!i.isType("array",e[r]))return r in e?(e[r]=[e[r]],void e[r].push(o)):void(e[r]=o);e[r].push(o)}}),e):{}}t.exports={url:function(t,e){return a(e).length>0?i.contains(t,"?")?t+"&"+a(e):t+"?"+a(e):t},decodeURL:function(t){var e=t&&t.split("?");return 2==e.length?u(e[1]):{}},decode:u,encode:a,encodePart:o,decodePart:s}},function(t,e,n){var r=n(90),i=n(3),o=n(0);function s(t,e){return function(){try{e.resolve(t.call(this))}catch(t){e.reject(t)}}}t.exports={sync:function(t,e){t.call(e)},read:function(t,e){var n=new i;return r.read(s(t,n),e),n.promise},write:function(t,e){var n=new i;return r.write(s(t,n),e),n.promise},defer:function(t,e,n){var a=new i;return o.isType("function",t)&&(n=e,e=t,t=1),r.defer(t,s(e,a),n),a.promise}}},function(t,e,n){var r=n(8),i=n(1),o=n(0),s={},a=o.contains(r.href,"tw_debug=true");function u(){}function c(){}function d(){return i.performance&&+i.performance.now()||+new Date}function f(t,e){if(i.console&&i.console[t])switch(e.length){case 1:i.console[t](e[0]);break;case 2:i.console[t](e[0],e[1]);break;case 3:i.console[t](e[0],e[1],e[2]);break;case 4:i.console[t](e[0],e[1],e[2],e[3]);break;case 5:i.console[t](e[0],e[1],e[2],e[3],e[4]);break;default:0!==e.length&&i.console.warn&&i.console.warn("too many params passed to logger."+t)}}t.exports={devError:u,devInfo:c,devObject:function(t,e){},publicError:function(){f("error",o.toRealArray(arguments))},publicLog:function(){f("info",o.toRealArray(arguments))},publicWarn:function(){f("warn",o.toRealArray(arguments))},time:function(t){a&&(s[t]=d())},timeEnd:function(t){a&&s[t]&&(d(),s[t])}}},function(t,e,n){var r=n(4),i=n(8),o=n(38),s=n(94),a=n(5),u=n(33),c=!1,d=/https?:\/\/([^/]+).*/i;t.exports={setOn:function(){c=!0},enabled:function(t,e){return!!(c||a.asBoolean(u.val("dnt"))||s.isUrlSensitive(e||i.host)||o.isFramed()&&s.isUrlSensitive(o.rootDocumentLocation())||(t=d.test(t||r.referrer)&&RegExp.$1)&&s.isUrlSensitive(t))}}},function(t,e,n){var r=n(4),i=n(83),o=n(1),s=n(0),a=i.userAgent;function u(t){return/(Trident|MSIE|Edge[/ ]?\d)/.test(t=t||a)}t.exports={retina:function(t){return(t=t||o).devicePixelRatio?t.devicePixelRatio>=1.5:!!t.matchMedia&&t.matchMedia("only screen and (min-resolution: 144dpi)").matches},anyIE:u,ie9:function(t){return/MSIE 9/.test(t=t||a)},ie10:function(t){return/MSIE 10/.test(t=t||a)},ios:function(t){return/(iPad|iPhone|iPod)/.test(t=t||a)},android:function(t){return/^Mozilla\/5\.0 \(Linux; (U; )?Android/.test(t=t||a)},canPostMessage:function(t,e){return t=t||o,e=e||a,t.postMessage&&!(u(e)&&t.opener)},touch:function(t,e,n){return t=t||o,e=e||i,n=n||a,"ontouchstart"in t||/Opera Mini/.test(n)||e.msMaxTouchPoints>0},cssTransitions:function(){var t=r.body.style;return void 0!==t.transition||void 0!==t.webkitTransition||void 0!==t.mozTransition||void 0!==t.oTransition||void 0!==t.msTransition},hasPromiseSupport:function(){return!!(o.Promise&&o.Promise.resolve&&o.Promise.reject&&o.Promise.all&&o.Promise.race&&(new o.Promise(function(e){t=e}),s.isType("function",t)));var t},hasIntersectionObserverSupport:function(){return!!o.IntersectionObserver},hasPerformanceInformation:function(){return o.performance&&o.performance.getEntriesByType}}},function(t,e){var n="i",r=0,i=0;t.exports={generate:function(){return n+String(+new Date)+Math.floor(1e5*Math.random())+r++},deterministic:function(){return n+String(i++)}}},function(t,e,n){var r=n(46),i=n(49),o=n(0);t.exports=o.aug(r.get("events")||{},i.Emitter)},function(t,e,n){var r=n(6),i=n(3);function o(t,e){return t.then(e,e)}function s(t){return t instanceof r}t.exports={always:o,allResolved:function(t){var e;return void 0===t?r.reject(new Error("undefined is not an object")):Array.isArray(t)?(e=t.length)?new r(function(n,r){var i=0,o=[];function a(){(i+=1)===e&&(0===o.length?r():n(o))}function u(t){o.push(t),a()}t.forEach(function(t){s(t)?t.then(u,a):u(t)})}):r.resolve([]):r.reject(new Error("Type error"))},some:function(t){var e;return e=(t=t||[]).length,t=t.filter(s),e?e!==t.length?r.reject("non-Promise passed to .some"):new r(function(e,n){var r=0;function i(){(r+=1)===t.length&&n()}t.forEach(function(t){t.then(e,i)})}):r.reject("no promises passed to .some")},isPromise:s,allSettled:function(t){function e(){}return r.all((t||[]).map(function(t){return o(t,e)}))},timeout:function(t,e){var n=new i;return setTimeout(function(){n.reject(new Error("Promise timed out"))},e),t.then(function(t){n.resolve(t)},function(t){n.reject(t)}),n.promise}}},function(t,e,n){var r=n(1).JSON;t.exports={stringify:r.stringify||r.encode,parse:r.parse||r.decode}},function(t,e,n){var r=n(39),i=n(97),o=n(7);(r=Object.create(r)).build=o(r.build,null,i),t.exports=r},function(t,e,n){var r=n(49).makeEmitter();t.exports={emitter:r,START:"start",ALL_WIDGETS_RENDER_START:"all_widgets_render_start",ALL_WIDGETS_RENDER_END:"all_widgets_render_end",ALL_WIDGETS_AND_IMAGES_LOADED:"all_widgets_and_images_loaded"}},function(t,e,n){var r=n(9),i=n(102),o="https://syndication.twitter.com",s="https://platform.twitter.com",a=["https://syndication.twitter.com","https://cdn.syndication.twimg.com","https://localhost.twitter.com:8444"],u=["https://syndication.twitter.com","https://localhost.twitter.com:8445"],c=["https://platform.twitter.com","https://localhost.twitter.com",/^https:\/\/ton\.local\.twitter\.com\/syndication-internal\/embed-iframe\/[0-9A-Za-z_-]+\/app/],d=function(t,e){return t.some(function(t){return t instanceof RegExp?t.test(e):t===e})},f=function(){var t=r.get("backendHost");return t&&d(a,t)?t:"https://cdn.syndication.twimg.com"},l=function(){var t=r.get("settingsSvcHost");return t&&d(u,t)?t:o};function h(t,e){var n=[t];return e.forEach(function(t){n.push(function(t){var e=(t||"").toString(),n="/"===e.slice(0,1)?1:0,r=function(t){return"/"===t.slice(-1)}(e)?-1:void 0;return e.slice(n,r)}(t))}),n.join("/")}t.exports={cookieConsent:function(t){var e=t||[];return e.unshift("cookie/consent"),h(l(),e)},embedIframe:function(t,e){var n=t||[],o=s,a=r.get("embedIframeURL");return a&&d(c,a)?h(a,n)+".html":(n.unshift(i.getBaseURLPath(e)),h(o,n)+".html")},embedService:function(t){var e=t||[],n=o;return e.unshift("srv"),h(n,e)},eventVideo:function(t){var e=t||[];return e.unshift("video/event"),h(f(),e)},grid:function(t){var e=t||[];return e.unshift("grid/collection"),h(f(),e)},moment:function(t){var e=t||[];return e.unshift("moments"),h(f(),e)},settings:function(t){var e=t||[];return e.unshift("settings"),h(l(),e)},settingsScribe:function(t){var e=t||[];return e.unshift("i/jot/embeds"),h(l(),e)},timeline:function(t){var e=t||[];return e.unshift("timeline"),h(f(),e)},tweetBatch:function(t){var e=t||[];return e.unshift("tweets.json"),h(f(),e)},video:function(t){var e=t||[];return e.unshift("widgets/video"),h(f(),e)}}},function(t,e,n){var r=n(4),i=n(0);t.exports=function(t,e,n){var o;if(n=n||r,t=t||{},e=e||{},t.name){try{o=n.createElement('')}catch(e){(o=n.createElement("iframe")).name=t.name}delete t.name}else o=n.createElement("iframe");return t.id&&(o.id=t.id,delete t.id),o.allowtransparency="true",o.scrolling="no",o.setAttribute("frameBorder",0),o.setAttribute("allowTransparency",!0),i.forIn(t,function(t,e){o.setAttribute(t,e)}),i.forIn(e,function(t,e){o.style[t]=e}),o}},function(t,e,n){var r=n(25),i=n(100);t.exports=r.build([i])},function(t,e,n){var r=n(25),i=n(116);t.exports=r.build([i])},function(t,e,n){var r=n(39),i=n(40),o=n(7);(r=Object.create(r)).build=o(r.build,null,i),t.exports=r},function(t,e,n){var r=n(70),i=n(19),o=n(5),s=n(21),a=n(0);t.exports=function(t){t.params({chrome:{},height:{transform:o.asInt},instanceId:{required:!0,fallback:s.deterministic},isPreconfigured:{},lang:{required:!0,transform:r.matchLanguage,fallback:"en"},theme:{},tweetLimit:{transform:o.asInt}}),t.defineProperty("endpoint",{get:function(){throw new Error("endpoint not specified")}}),t.define("queryParams",function(){return a.compact({dnt:i.enabled(),limit:this.params.tweetLimit,lang:this.params.lang})})}},function(t,e,n){var r,i=n(4);function o(t){var e,n,o,s=0;for(r={},e=(t=t||i).getElementsByTagName("meta");e[s];s++){if(n=e[s],/^twitter:/.test(n.getAttribute("name")))o=n.getAttribute("name").replace(/^twitter:/,"");else{if(!/^twitter:/.test(n.getAttribute("property")))continue;o=n.getAttribute("property").replace(/^twitter:/,"")}r[o]=n.getAttribute("content")||n.getAttribute("value")}}o(),t.exports={init:o,val:function(t){return r[t]}}},function(t,e,n){var r=n(104),i=n(24),o=n(1);function s(t){var e="";if(!t)return"";try{return e=i.stringify(t),o.btoa(e)}catch(t){return""}}function a(t){return r.settingsLoaded().then(function(e){return e[t]})}function u(){return a("features")}t.exports={encodeFeatures:s,shouldObtainCookieConsent:function(){return a("shouldObtainCookieConsent")},getExperiments:u,getExperiment:function(t){return u().then(function(e){if(!e[t])throw new Error("Experiment not found");return e[t]})},getHorizonSettings:function(){return r.settingsLoaded().then(function(t){return{features:t.features,sessionId:t.sessionId}})},getActiveExperimentDataString:function(){return u().then(function(t){return s(t)})},getExperimentKeys:function(){return u().then(function(t){return Object.keys(t)})},load:function(){r.load()}}},function(t,e,n){var r=n(10),i={},o=-1,s={};function a(t){var e=t.getAttribute("data-twitter-event-id");return e||(t.setAttribute("data-twitter-event-id",++o),o)}function u(t,e,n){var r=0,i=t&&t.length||0;for(r=0;r1?(e=Math.floor(t.item_ids.length/2),n=t.item_ids.slice(0,e),r={},i=t.item_ids.slice(e),o={},n.forEach(function(e){r[e]=t.item_details[e]}),i.forEach(function(e){o[e]=t.item_details[e]}),[f.aug({},t,{item_ids:n,item_details:r}),f.aug({},t,{item_ids:i,item_details:o})]):[t]},stringify:function(t){var e,n=Array.prototype.toJSON;return delete Array.prototype.toJSON,e=u.stringify(t),n&&(Array.prototype.toJSON=n),e},CLIENT_EVENT_ENDPOINT:p,RUFOUS_REDIRECT:"https://platform.twitter.com/jot.html"}},function(t,e,n){var r=n(8),i=n(73),o=n(0),s=i.getCanonicalURL()||r.href,a=s;t.exports={isFramed:function(){return s!==a},rootDocumentLocation:function(t){return t&&o.isType("string",t)&&(s=t),s},currentDocumentLocation:function(){return a}}},function(t,e,n){var r=n(95),i=n(96),o=n(0);t.exports={couple:function(){return o.toRealArray(arguments)},build:function(t,e,n){var o=new t;return(e=i(r(e||[]))).forEach(function(t){t.call(null,o)}),o.build(n)}}},function(t,e,n){var r=n(98),i=n(0),o=n(41);function s(){this.Component=this.factory(),this._adviceArgs=[],this._lastArgs=[]}i.aug(s.prototype,{factory:o,build:function(t){var e=this;return this.Component,i.aug(this.Component.prototype.boundParams,t),this._adviceArgs.concat(this._lastArgs).forEach(function(t){(function(t,e,n){var r=this[e];if(!r)throw new Error(e+" does not exist");this[e]=t(r,n)}).apply(e.Component.prototype,t)}),delete this._lastArgs,delete this._adviceArgs,this.Component},params:function(t){var e=this.Component.prototype.paramConfigs;t=t||{},this.Component.prototype.paramConfigs=i.aug({},t,e)},define:function(t,e){if(t in this.Component.prototype)throw new Error(t+" has previously been defined");this.override(t,e)},defineStatic:function(t,e){this.Component[t]=e},override:function(t,e){this.Component.prototype[t]=e},defineProperty:function(t,e){if(t in this.Component.prototype)throw new Error(t+" has previously been defined");this.overrideProperty(t,e)},overrideProperty:function(t,e){var n=i.aug({configurable:!0},e);Object.defineProperty(this.Component.prototype,t,n)},before:function(t,e){this._adviceArgs.push([r.before,t,e])},after:function(t,e){this._adviceArgs.push([r.after,t,e])},around:function(t,e){this._adviceArgs.push([r.around,t,e])},last:function(t,e){this._lastArgs.push([r.after,t,e])}}),t.exports=s},function(t,e,n){var r=n(0);function i(){return!0}function o(t){return t}t.exports=function(){function t(t){var e=this;t=t||{},this.params=Object.keys(this.paramConfigs).reduce(function(n,s){var a=[],u=e.boundParams,c=e.paramConfigs[s],d=c.validate||i,f=c.transform||o;if(s in u&&a.push(u[s]),s in t&&a.push(t[s]),a="fallback"in c?a.concat(c.fallback):a,n[s]=function(t,e,n){var i=null;return t.some(function(t){if(t=r.isType("function",t)?t():t,e(t))return i=n(t),!0}),i}(a,d,f),c.required&&null==n[s])throw new Error(s+" is a required parameter");return n},{}),this.initialize()}return r.aug(t.prototype,{paramConfigs:{},boundParams:{},initialize:function(){}}),t}},function(t){t.exports={version:"2615f7e52b7e0:1702314776716"}},function(t,e,n){var r=n(1);t.exports=function(t,e,n){var i,o=0;return n=n||null,function s(){var a=n||this,u=arguments,c=+new Date;if(r.clearTimeout(i),c-o>e)return o=c,void t.apply(a,u);i=r.setTimeout(function(){s.apply(a,u)},e)}}},function(t,e,n){var r=n(18);t.exports=function(){r.publicError("Error: This Timeline type is no longer supported (Likes, Collections, & Moments). \n\t","* Twitter still supports Profile and List Timelines \n\t","* You can learn more about this change in our announcement: \n\t","https://twittercommunity.com/t/removing-support-for-embedded-like-collection-and-moment-timelines/150313 \n\t","* In order to create a new Embedded Timeline, visit: https://publish.twitter.com")}},function(t,e,n){ +/*! + * @overview es6-promise - a tiny implementation of Promises/A+. + * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald) + * @license Licensed under MIT license + * See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE + * @version v4.2.5+7f2b526d + */var r;r=function(){"use strict";function t(t){return"function"==typeof t}var e=Array.isArray?Array.isArray:function(t){return"[object Array]"===Object.prototype.toString.call(t)},n=0,r=void 0,i=void 0,o=function(t,e){l[n]=t,l[n+1]=e,2===(n+=2)&&(i?i(h):w())},s="undefined"!=typeof window?window:void 0,a=s||{},u=a.MutationObserver||a.WebKitMutationObserver,c="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),d="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel;function f(){var t=setTimeout;return function(){return t(h,1)}}var l=new Array(1e3);function h(){for(var t=0;t=0&&this._handlers[t].splice(n,1):this._handlers[t]=[])},trigger:function(t,e){var n=this._handlers&&this._handlers[t];(e=e||{}).type=t,n&&n.forEach(function(t){r.async(i(t,this,e))})}};t.exports={Emitter:o,makeEmitter:function(){return r.aug(function(){},o)}}},function(t,e,n){var r=n(89),i=n(91),o=n(6),s=n(23),a=n(7),u=n(0),c=new i(function(t){var e=function(t){return t.reduce(function(t,e){return t[e._className]=t[e._className]||[],t[e._className].push(e),t},{})}(t.map(r.fromRawTask));u.forIn(e,function(t,e){s.allSettled(e.map(function(t){return t.initialize()})).then(function(){e.forEach(function(t){o.all([t.hydrate(),t.insertIntoDom()]).then(a(t.render,t)).then(a(t.success,t),a(t.fail,t))})})})});t.exports={addWidget:function(t){return c.add(t)}}},function(t,e,n){var r=n(17);t.exports=function(t){return r.write(function(){t&&t.parentNode&&t.parentNode.removeChild(t)})}},function(t,e,n){var r=n(93),i=n(71),o=new(n(103))(function(t){(!function(t){return 1===t.length&&i.canFlushOneItem(t[0])}(t)?function(t){r.init(),t.forEach(function(t){var e=t.input.namespace,n=t.input.data,i=t.input.offsite,o=t.input.version;r.clientEvent(e,n,i,o)}),r.flush().then(function(){t.forEach(function(t){t.taskDoneDeferred.resolve()})},function(){t.forEach(function(t){t.taskDoneDeferred.reject()})})}:function(t){t.forEach(function(t){var e=t.input.namespace,n=t.input.data,r=t.input.offsite,o=t.input.version;i.clientEvent(e,n,r,o),t.taskDoneDeferred.resolve()})})(t)});t.exports={scribe:function(t,e,n,r){return o.add({namespace:t,data:e,offsite:n,version:r})},pause:function(){o.pause()},resume:function(){o.resume()}}},function(t,e,n){n(18),t.exports={log:function(t,e){}}},function(t,e,n){var r=n(1);function i(t){return(t=t||r).getSelection&&t.getSelection()}t.exports={getSelection:i,getSelectedText:function(t){var e=i(t);return e?e.toString():""}}},function(t,e,n){var r=n(4),i=n(1),o=n(3),s=2e4;t.exports=function(t){var e=new o,n=r.createElement("img");return n.onload=n.onerror=function(){i.setTimeout(e.resolve,50)},n.src=t,i.setTimeout(e.reject,s),e.promise}},function(t,e,n){var r,i=n(10),o=n(4),s=n(1),a=n(33),u=n(51),c=n(5),d=n(21),f="csptest";t.exports={inlineStyle:function(){var t=f+d.generate(),e=o.createElement("div"),n=o.createElement("style"),l="."+t+" { visibility: hidden; }";return!!o.body&&(c.asBoolean(a.val("widgets:csp"))&&(r=!1),void 0!==r?r:(e.style.display="none",i.add(e,t),n.type="text/css",n.appendChild(o.createTextNode(l)),o.body.appendChild(n),o.body.appendChild(e),r="hidden"===s.getComputedStyle(e).visibility,u(e),u(n),r))}}},function(t,e){t.exports=function(t){var e=t.getBoundingClientRect();return{width:e.width,height:e.height}}},function(t,e,n){var r=n(101);t.exports=function(t){t.define("createElement",r),t.define("createFragment",r),t.define("htmlToElement",r),t.define("hasSelectedText",r),t.define("addRootClass",r),t.define("removeRootClass",r),t.define("hasRootClass",r),t.define("prependStyleSheet",r),t.define("appendStyleSheet",r),t.define("prependCss",r),t.define("appendCss",r),t.define("makeVisible",r),t.define("injectWidgetEl",r),t.define("matchHeightToContent",r),t.define("matchWidthToContent",r)}},function(t,e){t.exports=function(t){var e,n=!1;return function(){return n?e:(n=!0,e=t.apply(this,arguments))}}},function(t,e,n){var r=n(13),i=n(110),o=n(111),s=n(14);t.exports=function(t,e,n){return new r(i,o,s.DM_BUTTON,t,e,n)}},function(t,e,n){var r=n(25),i=n(112);t.exports=r.build([i])},function(t,e,n){var r=n(13),i=n(115),o=n(30),s=n(14);t.exports=function(t,e,n){return new r(i,o,s.FOLLOW_BUTTON,t,e,n)}},function(t,e,n){var r=n(13),i=n(123),o=n(29),s=n(14);t.exports=function(t,e,n){return new r(i,o,s.MOMENT,t,e,n)}},function(t,e,n){var r=n(13),i=n(125),o=n(29),s=n(14);t.exports=function(t,e,n){return new r(i,o,s.PERISCOPE,t,e,n)}},function(t,e,n){var r=n(127),i=n(128),o=n(132),s=n(134),a=n(136),u={collection:i,likes:o,list:s,profile:a,url:d},c=[a,o,i,s];function d(t){return r(c,function(e){try{return new e(t)}catch(t){}})}t.exports=function(t){return t?function(t){var e,n;return e=(t.sourceType+"").toLowerCase(),(n=u[e])?new n(t):null}(t)||d(t):null}},function(t,e,n){var r=n(4),i=n(13),o=n(30),s=n(138),a=n(14);t.exports=function(t,e,n){var u=r.createElement("div");return new i(s,o,a.TIMELINE,t,e,n,{sandboxWrapperEl:u})}},function(t,e,n){var r=n(4),i=n(13),o=n(30),s=n(140),a=n(14);t.exports=function(t,e,n){return new i(s,o,a.TWEET,t,e,n,{sandboxWrapperEl:r.createElement("div")})}},function(t,e,n){var r=n(13),i=n(142),o=n(30),s=n(14);t.exports=function(t,e,n){var a=t&&t.type||"share",u="hashtag"==a?s.HASHTAG_BUTTON:"mention"==a?s.MENTION_BUTTON:s.SHARE_BUTTON;return new r(i,o,u,t,e,n)}},function(t,e,n){var r=n(52),i=n(38),o=n(0);t.exports=function(t){var e={widget_origin:i.rootDocumentLocation(),widget_frame:i.isFramed()?i.currentDocumentLocation():null,duration_ms:t.duration,item_ids:t.widgetIds||[]},n=o.aug(t.namespace,{page:"page",component:"performance"});r.scribe(n,e)}},function(t,e,n){var r=n(0),i=n(129),o=["ar","fa","he","ur"];t.exports={isRtlLang:function(t){return t=String(t).toLowerCase(),r.contains(o,t)},matchLanguage:function(t){return t=(t=(t||"").toLowerCase()).replace("_","-"),i(t)?t:(t=t.replace(/-.*/,""),i(t)?t:"en")}}},function(t,e,n){var r=n(53),i=n(16),o=n(37),s=n(27),a=n(0),u=n(9),c=n(6),d=u.get("scribeCallback"),f=2083,l=[],h=i.url(o.CLIENT_EVENT_ENDPOINT,{dnt:0,l:""}),p=encodeURIComponent(h).length;function m(t,e,n,r,i){var u=!a.isObject(t),f=!!e&&!a.isObject(e);if(!u&&!f)return d&&d(arguments),e=e||{},c.resolve(v(o.formatClientEventNamespace(t),o.formatClientEventData(e,n,r),s.settingsScribe(),i))}function v(t,e,n,s){var u;n&&a.isObject(t)&&a.isObject(e)&&(r.log(t,e),u=o.flattenClientEventPayload(t,e),s=a.aug({},s,{l:o.stringify(u)}),u.dnt&&(s.dnt=1),w(i.url(n,s)))}function g(t){return l.push(t),l}function w(t){return(new Image).src=t}t.exports={canFlushOneItem:function(t){var e=o.stringify(t),n=encodeURIComponent(e).length+3;return p+n")}).then(function(){t.close(),a.resolve(c)})}),c.src=["javascript:",'document.write("");',"try { window.parent.document; }",'catch (e) { document.domain="'+r.domain+'"; }',"window.parent."+g.fullPath(["sandbox",u])+"();"].join(""),c.addEventListener("error",a.reject,!1),o.write(function(){i.parentNode.replaceChild(c,i)}),a.promise}t.exports=a.couple(n(58),function(t){t.overrideProperty("id",{get:function(){return this.sandboxEl&&this.sandboxEl.id}}),t.overrideProperty("initialized",{get:function(){return!!this.win}}),t.overrideProperty("width",{get:function(){return this._width}}),t.overrideProperty("height",{get:function(){return this._height}}),t.overrideProperty("sandboxEl",{get:function(){return this.iframeEl}}),t.defineProperty("iframeEl",{get:function(){return this._iframe}}),t.defineProperty("rootEl",{get:function(){return this.doc&&this.doc.documentElement}}),t.defineProperty("widgetEl",{get:function(){return this.doc&&this.doc.body.firstElementChild}}),t.defineProperty("win",{get:function(){return this.iframeEl&&this.iframeEl.contentWindow}}),t.defineProperty("doc",{get:function(){return this.win&&this.win.document}}),t.define("_updateCachedDimensions",function(){var t=this;return o.read(function(){var e,n=h(t.sandboxEl);"visible"==t.sandboxEl.style.visibility?t._width=n.width:(e=h(t.sandboxEl.parentElement).width,t._width=Math.min(n.width,e)),t._height=n.height})}),t.define("_setTargetToBlank",function(){var t=this.createElement("base");t.target="_blank",this.doc.head.appendChild(t)}),t.define("_didResize",function(){var t=this,e=this._resizeHandlers.slice(0);return this._updateCachedDimensions().then(function(){e.forEach(function(e){e(t)})})}),t.define("setTitle",function(t){this.iframeEl.title=t}),t.override("createElement",function(t){return this.doc.createElement(t)}),t.override("createFragment",function(){return this.doc.createDocumentFragment()}),t.override("htmlToElement",function(t){var e;return(e=this.createElement("div")).innerHTML=t,e.firstElementChild}),t.override("hasSelectedText",function(){return!!s.getSelectedText(this.win)}),t.override("addRootClass",function(t){var e=this.rootEl;return t=Array.isArray(t)?t:[t],this.initialized?o.write(function(){t.forEach(function(t){i.add(e,t)})}):m.reject(new Error("sandbox not initialized"))}),t.override("removeRootClass",function(t){var e=this.rootEl;return t=Array.isArray(t)?t:[t],this.initialized?o.write(function(){t.forEach(function(t){i.remove(e,t)})}):m.reject(new Error("sandbox not initialized"))}),t.override("hasRootClass",function(t){return i.present(this.rootEl,t)}),t.define("addStyleSheet",function(t,e){var n,r=new p;return this.initialized?((n=this.createElement("link")).type="text/css",n.rel="stylesheet",n.href=t,n.addEventListener("load",r.resolve,!1),n.addEventListener("error",r.reject,!1),o.write(y(e,null,n)).then(function(){return u(t).then(r.resolve,r.reject),r.promise})):m.reject(new Error("sandbox not initialized"))}),t.override("prependStyleSheet",function(t){var e=this.doc;return this.addStyleSheet(t,function(t){var n=e.head.firstElementChild;return n?e.head.insertBefore(t,n):e.head.appendChild(t)})}),t.override("appendStyleSheet",function(t){var e=this.doc;return this.addStyleSheet(t,function(t){return e.head.appendChild(t)})}),t.define("addCss",function(t,e){var n;return c.inlineStyle()?((n=this.createElement("style")).type="text/css",n.appendChild(this.doc.createTextNode(t)),o.write(y(e,null,n))):(l.devError("CSP enabled; cannot embed inline styles"),m.resolve())}),t.override("prependCss",function(t){var e=this.doc;return this.addCss(t,function(t){var n=e.head.firstElementChild;return n?e.head.insertBefore(t,n):e.head.appendChild(t)})}),t.override("appendCss",function(t){var e=this.doc;return this.addCss(t,function(t){return e.head.appendChild(t)})}),t.override("makeVisible",function(){var t=this;return this.styleSelf(E).then(function(){t._updateCachedDimensions()})}),t.override("injectWidgetEl",function(t){var e=this;return this.initialized?this.widgetEl?m.reject(new Error("widget already injected")):o.write(function(){e.doc.body.appendChild(t)}):m.reject(new Error("sandbox not initialized"))}),t.override("matchHeightToContent",function(){var t,e=this;return o.read(function(){t=e.widgetEl?h(e.widgetEl).height:0}),o.write(function(){e.sandboxEl.style.height=t+"px"}).then(function(){return e._updateCachedDimensions()})}),t.override("matchWidthToContent",function(){var t,e=this;return o.read(function(){t=e.widgetEl?h(e.widgetEl).width:0}),o.write(function(){e.sandboxEl.style.width=t+"px"}).then(function(){return e._updateCachedDimensions()})}),t.after("initialize",function(){this._iframe=null,this._width=this._height=0,this._resizeHandlers=[]}),t.override("insert",function(t,e,n,r){var i=this,s=new p,a=this.targetGlobal.document,u=S(t,e,n,a);return o.write(y(r,null,u)),u.addEventListener("load",function(){(function(t){try{t.contentWindow.document}catch(t){return m.reject(t)}return m.resolve(t)})(u).then(null,y(R,null,t,e,n,u,a)).then(s.resolve,s.reject)},!1),u.addEventListener("error",s.reject,!1),s.promise.then(function(t){var e=d(i._didResize,A,i);return i._iframe=t,i.win.addEventListener("resize",e,!1),m.all([i._setTargetToBlank(),i.addRootClass(x),i.prependCss(T)])})}),t.override("onResize",function(t){this._resizeHandlers.push(t)}),t.after("styleSelf",function(){return this._updateCachedDimensions()})})},function(t,e){t.exports=function(){throw new Error("unimplemented method")}},function(t,e){t.exports={getBaseURLPath:function(t){switch(t&&t.tfw_team_holdback_11929&&t.tfw_team_holdback_11929.bucket){case"control":return"embed-holdback";case"holdback_prod":return"embed-holdback-prod";default:return"embed"}}}},function(t,e,n){var r=n(3),i=n(7),o=100,s=3e3;function a(t,e){this._inputsQueue=[],this._task=t,this._isPaused=!1,this._flushDelay=e&&e.flushDelay||o,this._pauseLength=e&&e.pauseLength||s,this._flushTimeout=void 0}a.prototype.add=function(t){var e=new r;return this._inputsQueue.push({input:t,taskDoneDeferred:e}),this._scheduleFlush(),e.promise},a.prototype._scheduleFlush=function(){this._isPaused||(clearTimeout(this._flushTimeout),this._flushTimeout=setTimeout(i(this._flush,this),this._flushDelay))},a.prototype._flush=function(){try{this._task.call(null,this._inputsQueue)}catch(t){this._inputsQueue.forEach(function(e){e.taskDoneDeferred.reject(t)})}this._inputsQueue=[],this._flushTimeout=void 0},a.prototype.pause=function(t){clearTimeout(this._flushTimeout),this._isPaused=!0,!t&&this._pauseLength&&setTimeout(i(this.resume,this),this._pauseLength)},a.prototype.resume=function(){this._isPaused=!1,this._scheduleFlush()},t.exports=a},function(t,e,n){var r=n(72),i=n(28),o=n(3),s=n(4),a=n(27),u=n(20),c=n(24),d=n(8),f=n(18),l=n(105),h=n(59),p=n(9),m=n(16),v=n(2),g=n(0),w=n(1),y=h(function(){return new o}),b={shouldObtainCookieConsent:!1,features:{}};t.exports={load:function(){var t,e,n,o;if(u.ie9()||u.ie10()||"http:"!==d.protocol&&"https:"!==d.protocol)return f.devError("Using default settings due to unsupported browser or protocol."),void y().resolve();t={origin:d.origin},a.settings().indexOf("localhost")>-1&&(t.localSettings=!0),e=m.url(r.resourceBaseUrl+r.widgetIframeHtmlPath,t),n=function(t){var n,r,i,o;if(r=v.isTwitterURL(t.origin),i=e.substr(0,t.origin.length)===t.origin,o=v.isTwimgURL(t.origin),i&&r||o)try{(n="string"==typeof t.data?c.parse(t.data):t.data).namespace===l.settings&&(b=g.aug(b,{features:n.settings.features,sessionId:n.sessionId}),y().resolve())}catch(t){f.devError(t)}},w.addEventListener("message",n),o=i({src:e,title:"Twitter settings iframe"},{display:"none"}),s.body.appendChild(o)},settingsLoaded:function(){var t,e;return t=p.get("experimentOverride"),y().promise.then(function(){return t&&t.name&&t.assignment&&((e={})[t.name]={bucket:t.assignment},b.features=g.aug(b.features,e)),b})}}},function(t,e){t.exports={settings:"twttr.settings"}},function(t,e,n){t.exports=[n(107),n(114),n(122),n(124),n(126),n(139),n(141)]},function(t,e,n){var r=n(16),i=n(5),o=n(0),s=n(11),a=n(12)(),u=n(60),c="a.twitter-dm-button";t.exports=function(t){return a(t,c).map(function(t){return u(function(t){var e=t.getAttribute("data-show-screen-name"),n=s(t),a=t.getAttribute("href"),u=t.getAttribute("data-screen-name"),c=e?i.asBoolean(e):null,d=t.getAttribute("data-size"),f=r.decodeURL(a),l=f.recipient_id,h=t.getAttribute("data-text")||f.text,p=t.getAttribute("data-welcome-message-id")||f.welcomeMessageId;return o.aug(n,{screenName:u,showScreenName:c,size:d,text:h,userId:l,welcomeMessageId:p})}(t),t.parentNode,t)})}},function(t,e,n){var r=n(0);t.exports=function t(e){var n;if(e)return n=e.lang||e.getAttribute("data-lang"),r.isType("string",n)?n:t(e.parentElement)}},function(t,e,n){var r=n(0),i=n(48);t.exports=function(t,e){return i(t,e)?[t]:r.toRealArray(t.querySelectorAll(e))}},function(t,e,n){var r=n(3);t.exports=function(t,e){var i=new r;return n.e(1).then(function(r){var o;try{o=n(75),i.resolve(new o(t,e))}catch(t){i.reject(t)}}.bind(null,n)).catch(function(t){i.reject(t)}),i.promise}},function(t,e,n){var r=n(61),i=n(29);t.exports=r.isSupported()?r:i},function(t,e,n){var r=n(113),i=n(1),o=n(10),s=n(35),a=n(17),u=n(54),c=n(25),d=n(55),f=n(56),l=n(57),h=n(7),p=n(43),m=n(6),v=n(0),g=50,w={position:"absolute",visibility:"hidden",display:"block",transform:"rotate(0deg)"},y={position:"static",visibility:"visible"},b="twitter-widget",_="open",E="SandboxRoot",x=".SandboxRoot { display: none; max-height: 10000px; }";t.exports=c.couple(n(58),function(t){t.defineStatic("isSupported",function(){return!!i.HTMLElement.prototype.attachShadow&&f.inlineStyle()}),t.overrideProperty("id",{get:function(){return this.sandboxEl&&this.sandboxEl.id}}),t.overrideProperty("initialized",{get:function(){return!!this._shadowHost}}),t.overrideProperty("width",{get:function(){return this._width}}),t.overrideProperty("height",{get:function(){return this._height}}),t.overrideProperty("sandboxEl",{get:function(){return this._shadowHost}}),t.define("_updateCachedDimensions",function(){var t=this;return a.read(function(){var e,n=l(t.sandboxEl);"visible"==t.sandboxEl.style.visibility?t._width=n.width:(e=l(t.sandboxEl.parentElement).width,t._width=Math.min(n.width,e)),t._height=n.height})}),t.define("_didResize",function(){var t=this,e=this._resizeHandlers.slice(0);return this._updateCachedDimensions().then(function(){e.forEach(function(e){e(t)})})}),t.override("createElement",function(t){return this.targetGlobal.document.createElement(t)}),t.override("createFragment",function(){return this.targetGlobal.document.createDocumentFragment()}),t.override("htmlToElement",function(t){var e;return(e=this.createElement("div")).innerHTML=t,e.firstElementChild}),t.override("hasSelectedText",function(){return!!u.getSelectedText(this.targetGlobal)}),t.override("addRootClass",function(t){var e=this._shadowRootBody;return t=Array.isArray(t)?t:[t],this.initialized?a.write(function(){t.forEach(function(t){o.add(e,t)})}):m.reject(new Error("sandbox not initialized"))}),t.override("removeRootClass",function(t){var e=this._shadowRootBody;return t=Array.isArray(t)?t:[t],this.initialized?a.write(function(){t.forEach(function(t){o.remove(e,t)})}):m.reject(new Error("sandbox not initialized"))}),t.override("hasRootClass",function(t){return o.present(this._shadowRootBody,t)}),t.override("addStyleSheet",function(t,e){return this.addCss('@import url("'+t+'");',e).then(function(){return d(t)})}),t.override("prependStyleSheet",function(t){var e=this._shadowRoot;return this.addStyleSheet(t,function(t){var n=e.firstElementChild;return n?e.insertBefore(t,n):e.appendChild(t)})}),t.override("appendStyleSheet",function(t){var e=this._shadowRoot;return this.addStyleSheet(t,function(t){return e.appendChild(t)})}),t.override("addCss",function(t,e){var n;return this.initialized?f.inlineStyle()?((n=this.createElement("style")).type="text/css",n.appendChild(this.targetGlobal.document.createTextNode(t)),a.write(h(e,null,n))):m.resolve():m.reject(new Error("sandbox not initialized"))}),t.override("prependCss",function(t){var e=this._shadowRoot;return this.addCss(t,function(t){var n=e.firstElementChild;return n?e.insertBefore(t,n):e.appendChild(t)})}),t.override("appendCss",function(t){var e=this._shadowRoot;return this.addCss(t,function(t){return e.appendChild(t)})}),t.override("makeVisible",function(){return this.styleSelf(y)}),t.override("injectWidgetEl",function(t){var e=this;return this.initialized?this._shadowRootBody.firstElementChild?m.reject(new Error("widget already injected")):a.write(function(){e._shadowRootBody.appendChild(t)}).then(function(){return e._updateCachedDimensions()}).then(function(){var t=p(e._didResize,g,e);new r(e._shadowRootBody,t)}):m.reject(new Error("sandbox not initialized"))}),t.override("matchHeightToContent",function(){return m.resolve()}),t.override("matchWidthToContent",function(){return m.resolve()}),t.override("insert",function(t,e,n,r){var i=this.targetGlobal.document,o=this._shadowHost=i.createElement(b),u=this._shadowRoot=o.attachShadow({mode:_}),c=this._shadowRootBody=i.createElement("div");return v.forIn(e||{},function(t,e){o.setAttribute(t,e)}),o.id=t,u.appendChild(c),s.delegate(c,"click","A",function(t,e){e.hasAttribute("target")||e.setAttribute("target","_blank")}),m.all([this.styleSelf(w),this.addRootClass(E),this.prependCss(x),a.write(r.bind(null,o))])}),t.override("onResize",function(t){this._resizeHandlers.push(t)}),t.after("initialize",function(){this._shadowHost=this._shadowRoot=this._shadowRootBody=null,this._width=this._height=0,this._resizeHandlers=[]}),t.after("styleSelf",function(){return this._updateCachedDimensions()})})},function(t,e){var n;(n=function(t,e){function r(t,e){if(t.resizedAttached){if(t.resizedAttached)return void t.resizedAttached.add(e)}else t.resizedAttached=new function(){var t,e;this.q=[],this.add=function(t){this.q.push(t)},this.call=function(){for(t=0,e=this.q.length;t
',t.appendChild(t.resizeSensor),{fixed:1,absolute:1}[function(t,e){return t.currentStyle?t.currentStyle[e]:window.getComputedStyle?window.getComputedStyle(t,null).getPropertyValue(e):t.style[e]}(t,"position")]||(t.style.position="relative");var i,o,s=t.resizeSensor.childNodes[0],a=s.childNodes[0],u=t.resizeSensor.childNodes[1],c=(u.childNodes[0],function(){a.style.width=s.offsetWidth+10+"px",a.style.height=s.offsetHeight+10+"px",s.scrollLeft=s.scrollWidth,s.scrollTop=s.scrollHeight,u.scrollLeft=u.scrollWidth,u.scrollTop=u.scrollHeight,i=t.offsetWidth,o=t.offsetHeight});c();var d=function(t,e,n){t.attachEvent?t.attachEvent("on"+e,n):t.addEventListener(e,n)},f=function(){t.offsetWidth==i&&t.offsetHeight==o||t.resizedAttached&&t.resizedAttached.call(),c()};d(s,"scroll",f),d(u,"scroll",f)}var i=Object.prototype.toString.call(t),o="[object Array]"===i||"[object NodeList]"===i||"[object HTMLCollection]"===i||"undefined"!=typeof jQuery&&t instanceof jQuery||"undefined"!=typeof Elements&&t instanceof Elements;if(o)for(var s=0,a=t.length;s0;return this.updateCachedDimensions().then(function(){e&&t._resizeHandlers.forEach(function(e){e(t)})})}),t.define("loadDocument",function(t){var e=new a;return this.initialized?this.iframeEl.src?u.reject(new Error("widget already loaded")):(this.iframeEl.addEventListener("load",e.resolve,!1),this.iframeEl.addEventListener("error",e.reject,!1),this.iframeEl.src=t,e.promise):u.reject(new Error("sandbox not initialized"))}),t.after("initialize",function(){var t=new a,e=new a;this._iframe=null,this._iframeVersion=null,this._width=this._height=0,this._resizeHandlers=[],this._rendered=t,this._results=e,this._waitToSwapUntilRendered=!1}),t.override("insert",function(t,e,n,i){var a=this;return e=d.aug({id:t},f,e),n=d.aug({},l,n),this._iframe=s(e,n),p[t]=this,a._waitToSwapUntilRendered||this.onResize(o(function(){a.makeVisible()})),r.write(c(i,null,this._iframe))}),t.override("onResize",function(t){this._resizeHandlers.push(t)}),t.after("styleSelf",function(){return this.updateCachedDimensions()})}},function(t,e,n){var r=n(1),i=n(118),o=n(120),s=n(22),a=n(5),u=n(121);t.exports=function(t,e,n,c,d){function f(t){var e=u(this);s.trigger(t.type,{target:e,region:t.region,type:t.type,data:t.data||{}})}function l(e){var n=u(this),r=n&&n.id,i=a.asInt(e.width),o=a.asInt(e.height);r&&void 0!==i&&void 0!==o&&t(r,i,o)}(new i).attachReceiver(new o.Receiver(r,"twttr.button")).bind("twttr.private.trigger",f).bind("twttr.private.resizeButton",l),(new i).attachReceiver(new o.Receiver(r,"twttr.embed")).bind("twttr.private.initialized",function(t){var e=u(this),n=e&&e.id,r=t.iframe_version;n&&r&&c&&c(n,r)}).bind("twttr.private.trigger",f).bind("twttr.private.results",function(){var t=u(this),n=t&&t.id;n&&e&&e(n)}).bind("twttr.private.rendered",function(){var t=u(this),e=t&&t.id;e&&n&&n(e)}).bind("twttr.private.no_results",function(){var t=u(this),e=t&&t.id;e&&d&&d(e)}).bind("twttr.private.resize",l)}},function(t,e,n){var r=n(24),i=n(119),o=n(0),s=n(6),a=n(23),u="2.0";function c(t){this.registry=t||{}}function d(t){var e,n;return e=o.isType("string",t),n=o.isType("number",t),e||n||null===t}function f(t,e){return{jsonrpc:u,id:d(t)?t:null,error:e}}c.prototype._invoke=function(t,e){var n,r,i;n=this.registry[t.method],r=t.params||[],r=o.isType("array",r)?r:[r];try{i=n.apply(e.source||null,r)}catch(t){i=s.reject(t.message)}return a.isPromise(i)?i:s.resolve(i)},c.prototype._processRequest=function(t,e){var n,r;return function(t){var e,n,r;return!!o.isObject(t)&&(e=t.jsonrpc===u,n=o.isType("string",t.method),r=!("id"in t)||d(t.id),e&&n&&r)}(t)?(n="params"in t&&(r=t.params,!o.isObject(r)||o.isType("function",r))?s.resolve(f(t.id,i.INVALID_PARAMS)):this.registry[t.method]?this._invoke(t,{source:e}).then(function(e){return n=t.id,{jsonrpc:u,id:n,result:e};var n},function(){return f(t.id,i.INTERNAL_ERROR)}):s.resolve(f(t.id,i.METHOD_NOT_FOUND)),null!=t.id?n:s.resolve()):s.resolve(f(t.id,i.INVALID_REQUEST))},c.prototype.attachReceiver=function(t){return t.attachTo(this),this},c.prototype.bind=function(t,e){return this.registry[t]=e,this},c.prototype.receive=function(t,e){var n,a,u,c=this;try{u=t,t=o.isType("string",u)?r.parse(u):u}catch(t){return s.resolve(f(null,i.PARSE_ERROR))}return e=e||null,a=((n=o.isType("array",t))?t:[t]).map(function(t){return c._processRequest(t,e)}),n?function(t){return s.all(t).then(function(t){return(t=t.filter(function(t){return void 0!==t})).length?t:void 0})}(a):a[0]},t.exports=c},function(t){t.exports={PARSE_ERROR:{code:-32700,message:"Parse error"},INVALID_REQUEST:{code:-32600,message:"Invalid Request"},INVALID_PARAMS:{code:-32602,message:"Invalid params"},METHOD_NOT_FOUND:{code:-32601,message:"Method not found"},INTERNAL_ERROR:{code:-32603,message:"Internal error"}}},function(t,e,n){var r=n(8),i=n(1),o=n(24),s=n(3),a=n(20),u=n(0),c=n(2),d=n(7),f=a.ie9();function l(t,e,n){var r;t&&t.postMessage&&(f?r=(n||"")+o.stringify(e):n?(r={})[n]=e:r=e,t.postMessage(r,"*"))}function h(t){return u.isType("string",t)?t:"JSONRPC"}function p(t,e){return e?u.isType("string",t)&&0===t.indexOf(e)?t.substring(e.length):t&&t[e]?t[e]:void 0:t}function m(t,e){var n=t.document;this.filter=h(e),this.server=null,this.isTwitterFrame=c.isTwitterURL(n.location.href),t.addEventListener("message",d(this._onMessage,this),!1)}function v(t,e){this.pending={},this.target=t,this.isTwitterHost=c.isTwitterURL(r.href),this.filter=h(e),i.addEventListener("message",d(this._onMessage,this),!1)}u.aug(m.prototype,{_onMessage:function(t){var e,n=this;this.server&&(this.isTwitterFrame&&!c.isTwitterURL(t.origin)||(e=p(t.data,this.filter))&&this.server.receive(e,t.source).then(function(e){e&&l(t.source,e,n.filter)}))},attachTo:function(t){this.server=t},detach:function(){this.server=null}}),u.aug(v.prototype,{_processResponse:function(t){var e=this.pending[t.id];e&&(e.resolve(t),delete this.pending[t.id])},_onMessage:function(t){var e;if((!this.isTwitterHost||c.isTwitterURL(t.origin))&&(e=p(t.data,this.filter))){if(u.isType("string",e))try{e=o.parse(e)}catch(t){return}(e=u.isType("array",e)?e:[e]).forEach(d(this._processResponse,this))}},send:function(t){var e=new s;return t.id?this.pending[t.id]=e:e.resolve(),l(this.target,t,this.filter),e.promise}}),t.exports={Receiver:m,Dispatcher:v,_stringifyPayload:function(t){return arguments.length>0&&(f=!!t),f}}},function(t,e,n){var r=n(4);t.exports=function(t){for(var e,n=r.getElementsByTagName("iframe"),i=0;n[i];i++)if((e=n[i]).contentWindow===t)return e}},function(t,e,n){var r=n(5),i=n(0),o=n(2),s=n(11),a=n(12)(),u=n(63),c="a.twitter-moment";t.exports=function(t){return a(t,c).map(function(t){return u(function(t){var e=s(t),n={momentId:o.momentId(t.href),chrome:t.getAttribute("data-chrome"),limit:t.getAttribute("data-limit")};return i.forIn(n,function(t,n){var i=e[t];e[t]=r.hasValue(i)?i:n}),e}(t),t.parentNode,t)})}},function(t,e,n){var r=n(3);t.exports=function(t,e){var i=new r;return n.e(3).then(function(r){var o;try{o=n(77),i.resolve(new o(t,e))}catch(t){i.reject(t)}}.bind(null,n)).catch(function(t){i.reject(t)}),i.promise}},function(t,e,n){var r=n(0),i=n(11),o=n(12)(),s=n(64),a="a.periscope-on-air",u=/^https?:\/\/(?:www\.)?(?:periscope|pscp)\.tv\/@?([a-zA-Z0-9_]+)\/?$/i;t.exports=function(t){return o(t,a).map(function(t){return s(function(t){var e=i(t),n=t.getAttribute("href"),o=t.getAttribute("data-size"),s=u.exec(n)[1];return r.aug(e,{username:s,size:o})}(t),t.parentNode,t)})}},function(t,e,n){var r=n(3);t.exports=function(t,e){var i=new r;return n.e(4).then(function(r){var o;try{o=n(78),i.resolve(new o(t,e))}catch(t){i.reject(t)}}.bind(null,n)).catch(function(t){i.reject(t)}),i.promise}},function(t,e,n){var r=n(5),i=n(0),o=n(65),s=n(11),a=n(12)(),u=n(66),c=n(2),d=n(18),f="a.twitter-timeline,div.twitter-timeline,a.twitter-grid",l="Embedded Search timelines have been deprecated. See https://twittercommunity.com/t/deprecating-widget-settings/102295.",h="You may have been affected by an update to settings in embedded timelines. See https://twittercommunity.com/t/deprecating-widget-settings/102295.",p="Embedded grids have been deprecated and will now render as timelines. Please update your embed code to use the twitter-timeline class. More info: https://twittercommunity.com/t/update-on-the-embedded-grid-display-type/119564.";t.exports=function(t,e){return a(t,f).map(function(t){return u(function(t){var e=s(t),n=t.getAttribute("data-show-replies"),a={isPreconfigured:!!t.getAttribute("data-widget-id"),chrome:t.getAttribute("data-chrome"),tweetLimit:t.getAttribute("data-tweet-limit")||t.getAttribute("data-limit"),ariaLive:t.getAttribute("data-aria-polite"),theme:t.getAttribute("data-theme"),borderColor:t.getAttribute("data-border-color"),showReplies:n?r.asBoolean(n):null,profileScreenName:t.getAttribute("data-screen-name"),profileUserId:t.getAttribute("data-user-id"),favoritesScreenName:t.getAttribute("data-favorites-screen-name"),favoritesUserId:t.getAttribute("data-favorites-user-id"),likesScreenName:t.getAttribute("data-likes-screen-name"),likesUserId:t.getAttribute("data-likes-user-id"),listOwnerScreenName:t.getAttribute("data-list-owner-screen-name"),listOwnerUserId:t.getAttribute("data-list-owner-id"),listId:t.getAttribute("data-list-id"),listSlug:t.getAttribute("data-list-slug"),customTimelineId:t.getAttribute("data-custom-timeline-id"),staticContent:t.getAttribute("data-static-content"),url:t.href};return a.isPreconfigured&&(c.isSearchUrl(a.url)?d.publicError(l,t):d.publicLog(h,t)),"twitter-grid"===t.className&&d.publicLog(p,t),(a=i.aug(a,e)).dataSource=o(a),a.id=a.dataSource&&a.dataSource.id,a}(t),t.parentNode,t,e)})}},function(t,e){t.exports=function(t,e,n){for(var r,i=0;i