Files
nexus/sreweekly/articles/128/06-colm-maccárthaigh-on-twitter-random-number-generation.html
2026-09-12 17:23:01 +08:00

133 lines
435 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html><html lang="en" dir="ltr" data-app-env="prod" data-app-version="ea35403677bffac79fe807f80b4bd401be852e9e"><head><meta charSet="utf-8" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=0,viewport-fit=cover" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="color-scheme" content="light dark"/><meta name="theme-color" media="(prefers-color-scheme: light)" content="#FFFFFF"/><meta name="theme-color" media="(prefers-color-scheme: dark)" content="#000000"/><meta property="csp-nonce" content="17DwueGR4+2VebZkygB4Rg=="/><title>Colm MacCárthaigh on X: &quot;Have you ever needed to generate a random number in code? whether it&#x27;s for rolling a dice, or shuffling a set, this tweet thread is here for you! There&#x27;s no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learne… / X</title><meta name="robots" content="index, follow" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="fb:app_id" content="2231777543" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:site_name" content="X (formerly Twitter)" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:locale" content="en_US" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="application-name" content="X (formerly Twitter)" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="google-site-verification" content="reUF-TgZq93ZGtzImw42sfYglI2hY0QiGRmfc4jeKbs" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="facebook-domain-verification" content="x6sdcc8b5ju3bh8nbm59eswogvg6t1" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta http-equiv="onion-location" content="https://twitter3e4tixl4xyajtrzo62zg5vztmjuricljdp2c5kshju4avyoid.onion/" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="al:ios:app_store_id" content="333903271" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="al:ios:app_name" content="X" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="al:android:package" content="com.twitter.android" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="al:android:app_name" content="X" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="apple-itunes-app" content="app-id=333903271" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="apple-mobile-web-app-title" content="X (formerly Twitter)" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="apple-mobile-web-app-capable" content="yes" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="apple-mobile-web-app-status-bar-style" content="default" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="mobile-web-app-capable" content="yes" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="app-version" content="ea35403677bffac79fe807f80b4bd401be852e9e" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="twitter-site-verification" content="yBcCUq236q0K73ScRzkheyFyiEo+qv9cPaZ7+XBmbersmKczyI8+VL1kfVx/Lg/1" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="sentry-trace" content="371f55b0cd0540349293e78fdd9dd446-a5e9da689a490240-0" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="baggage" content="sentry-environment=production,sentry-release=ea35403677bffac79fe807f80b4bd401be852e9e,sentry-public_key=b523016f172e2f101d4f771b022ba96c,sentry-trace_id=371f55b0cd0540349293e78fdd9dd446,sentry-org_id=30969,sentry-sampled=false,sentry-sample_rand=0.703898324969463,sentry-sample_rate=0.003" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:url" content="https://x.com/colmmacc/status/1012719876706840578" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:type" content="article" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="article:published_time" content="2018-06-29T15:30:08.000Z" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="article:author" content="https://x.com/colmmacc" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:title" content="Colm MacCárthaigh (@colmmacc) on X" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="title" content="Colm MacCárthaigh (@colmmacc) on X" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="twitter:title" content="Colm MacCárthaigh (@colmmacc) on X" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:description" content="Have you ever needed to generate a random number in code? whether it&#x27;s for rolling a dice, or shuffling a set, this tweet thread is here for you! There&#x27;s no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learned ..." nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="description" content="Have you ever needed to generate a random number in code? whether it&#x27;s for rolling a dice, or shuffling a set, this tweet thread is here for you! There&#x27;s no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learned ..." nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="twitter:description" content="Have you ever needed to generate a random number in code? whether it&#x27;s for rolling a dice, or shuffling a set, this tweet thread is here for you! There&#x27;s no reason that it should be easy or obviou…" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:image" content="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:image:secure_url" content="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:image:type" content="image/jpeg" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:image:width" content="400" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:image:height" content="400" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="og:image:alt" content="Colm MacCárthaigh profile picture" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="twitter:card" content="summary" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="twitter:site" content="@x" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="twitter:creator" content="@colmmacc" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="twitter:image" content="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta name="twitter:image:alt" content="Colm MacCárthaigh profile picture" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="al:ios:url" content="twitter://status?id=1012719876706840578" nonce="17DwueGR4+2VebZkygB4Rg=="/><meta property="al:android:url" content="twitter://status?id=1012719876706840578" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="icon" href="/favicon.ico" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="apple-touch-icon" sizes="192x192" href="/apple-touch-icon.png" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="manifest" href="/manifest.json" crossorigin="use-credentials" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="preconnect" href="https://abs.twimg.com" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" fetchPriority="high" href="https://abs.twimg.com/fonts/subset/Chirp-Regular.c88864db.latin.woff2" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" fetchPriority="low" href="https://abs.twimg.com/fonts/subset/Chirp-Medium.ca6d679a.latin.woff2" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" fetchPriority="low" href="https://abs.twimg.com/fonts/subset/Chirp-Bold.d8ac01b2.latin.woff2" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="preconnect" href="https://api.x.com" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="preconnect" href="https://pbs.twimg.com" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="dns-prefetch" href="https://t.co" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="dns-prefetch" href="https://video.twimg.com" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="dns-prefetch" href="https://ton.twimg.com" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="dns-prefetch" href="https://cdn.syndication.twimg.com" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="search" type="application/opensearchdescription+xml" href="/os-x.xml" title="X" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="search" type="application/opensearchdescription+xml" href="/os-grok.xml" title="Grok" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="sitemap" type="application/xml" href="https://x.com/sitemap.xml" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="canonical" href="https://x.com/colmmacc/status/1012719876706840578" nonce="17DwueGR4+2VebZkygB4Rg=="/><link rel="alternate" type="application/json+oembed" href="https://publish.x.com/oembed?url=https%3A%2F%2Fx.com%2Fcolmmacc%2Fstatus%2F1012719876706840578" nonce="17DwueGR4+2VebZkygB4Rg=="/><style>:root{background-color:#fff}:root[data-theme="dark"]{background-color:#000}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]):not([data-theme="dark"]){background-color:#000}}</style><script nonce="17DwueGR4+2VebZkygB4Rg==">!function(){var root=document.documentElement;function apply(){var match=document.cookie.match(/(?:^|; )night_mode=([^;]*)/);var value=match&&decodeURIComponent(match[1]);var dark=false;try{dark=window.matchMedia('(prefers-color-scheme: dark)').matches}catch(e){}var theme=value==='0'?'light':value==='1'||value==='2'?'dark':dark?'dark':'light';if(root.dataset.theme!==theme)root.dataset.theme=theme;var meta=document.querySelector('meta[name="theme-color"]');if(meta)meta.setAttribute('content',theme==='dark'?'#000000':'#FFFFFF');}apply();try{window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change',apply,{once:true})}catch(e){}}();;document.currentScript.remove()</script><link rel="stylesheet" href="https://abs.twimg.com/x-web/x-web/assets/styles-BZ-XMLZD.css"/><script type="module" src="https://abs.twimg.com/x-web/x-web/entry-client-logged-out-Du9SlHUS.js" nonce="17DwueGR4+2VebZkygB4Rg=="></script><style>.r-ea0040{position:absolute;visibility:hidden;top:0;width:50px;pointer-events:none}
.r-ea0040.loaded{visibility:visible;top:50vh;width:50px}</style></head><body><div class="flex min-h-dvh w-full items-start mid:justify-center"><div class="hidden flex-col self-stretch xlarge:flex"><aside class="sticky top-0 flex h-dvh w-(--layout-width-rail-icon) shrink-0 flex-col items-start overflow-y-auto transition-[width] duration-200 ease-in-out wide:w-(--layout-width-rail-labeled)"><div class="h-[53px] flex w-full shrink-0 items-center justify-end"><a aria-label="X" href="/" class="flex size-[50px] items-center justify-center rounded-full transition-colors hover:bg-gray-100"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-x" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true" class="text-gray-1100 size-[30px]"><path d="M21.742 21.75l-7.563-11.179 7.056-8.321h-2.456l-5.691 6.714-4.54-6.714H2.359l7.29 10.776L2.25 21.75h2.456l6.035-7.118 4.818 7.118h6.191-.008zM7.739 3.818L18.81 20.182h-2.447L5.29 3.818h2.447z"></path></svg></a></div></aside></div><div class="flex min-w-0 grow items-start mid:max-w-(--layout-width-two-column)"><main class="border-normal min-w-0 narrow:min-w-(--layout-min-primary) narrow:border-x flex min-h-dvh flex-col mid:w-(--layout-width-primary) mid:max-w-(--layout-width-primary) mid:shrink-0 w-full"><div class="bg-background/80 sticky top-0 backdrop-blur-md z-20"><div class="narrow:hidden flex items-center gap-3 px-4 h-[53px]"><button data-slot="xds-button" aria-label="Back" type="button" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-arrow-left" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M7.414 13l5.043 5.04-1.414 1.42L3.586 12l7.457-7.46 1.414 1.42L7.414 11H21v2H7.414z"></path></svg></span></button><div class="flex min-w-0 flex-col"><h2 class="text-headline1 text-gray-1100 truncate font-extrabold">Post</h2></div><div class="ms-auto flex shrink-0 items-center gap-1"><a data-interaction="mobile-top-bar-log-in" href="/i/jf/onboarding/web?mode=login&amp;redirect_after_login=%2Fcolmmacc%2Fstatus%2F1012719876706840578" class="text-gray-1100 flex h-8 items-center justify-center rounded-full border border-transparent px-3 text-[14px] font-bold transition-colors hover:bg-gray-100 active:bg-gray-100">Log in</a><a href="/i/jf/onboarding/web?mode=signup&amp;redirect_after_login=%2Fcolmmacc%2Fstatus%2F1012719876706840578" class="bg-gray-1100 hover:bg-gray-1100/90 dark:text-gray-1100 flex h-8 items-center justify-center rounded-full px-4 text-[14px] font-bold text-white transition-colors dark:bg-gray-100">Sign up</a></div></div><div class="narrow:flex hidden justify-between gap-2 px-2 h-[53px] items-center"><div class="flex min-w-0 flex-1 items-center"><a aria-label="X" href="/" class="xlarge:hidden me-2 flex size-8 shrink-0 items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-x" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true" class="text-gray-1100 size-6"><path d="M21.742 21.75l-7.563-11.179 7.056-8.321h-2.456l-5.691 6.714-4.54-6.714H2.359l7.29 10.776L2.25 21.75h2.456l6.035-7.118 4.818 7.118h6.191-.008zM7.739 3.818L18.81 20.182h-2.447L5.29 3.818h2.447z"></path></svg></a><button data-slot="xds-button" aria-label="Back" type="button" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-arrow-left" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M7.414 13l5.043 5.04-1.414 1.42L3.586 12l7.457-7.46 1.414 1.42L7.414 11H21v2H7.414z"></path></svg></span></button><div class="flex min-w-0 flex-col ms-3"><h2 class="text-headline1 text-gray-1100 truncate font-extrabold">Post</h2></div></div><div class="mid:hidden"><div class="ms-auto flex shrink-0 items-center gap-1"><a data-interaction="mobile-top-bar-log-in" href="/i/jf/onboarding/web?mode=login&amp;redirect_after_login=%2Fcolmmacc%2Fstatus%2F1012719876706840578" class="text-gray-1100 flex h-8 items-center justify-center rounded-full border border-transparent px-3 text-[14px] font-bold transition-colors hover:bg-gray-100 active:bg-gray-100">Log in</a><a href="/i/jf/onboarding/web?mode=signup&amp;redirect_after_login=%2Fcolmmacc%2Fstatus%2F1012719876706840578" class="bg-gray-1100 hover:bg-gray-1100/90 dark:text-gray-1100 flex h-8 items-center justify-center rounded-full px-4 text-[14px] font-bold text-white transition-colors dark:bg-gray-100">Sign up</a></div></div></div></div><!--$--><!--$--><h1 class="sr-only">Colm MacCárthaigh on X: &quot;Have you ever needed to generate a random number in code? whether it&#x27;s for rolling a dice, or shuffling a set, this tweet thread is here for you! There&#x27;s no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learned ...&quot;</h1><!--$?--><template id="B:0"></template><!--$--><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical"><article class="flex flex-col gap-1"><div class="flex flex-col gap-2"><div class="flex flex-col gap-3"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col"><div class="flex items-start justify-between gap-2"><div class="overflow-hidden flex-col items-start gap-0 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_1lkojlcpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">Have you ever needed to generate a random number in code? whether it&#x27;s for rolling a dice, or shuffling a set, this tweet thread is here for you! There&#x27;s no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learned ...</span></div><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0"><span class="contents"><a id="_R_5jlcpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit" href="/colmmacc/status/1012719876706840578">3:30 PM · Jun 29, 2018</a><script nonce="17DwueGR4+2VebZkygB4Rg==">!function(options){var element=document.getElementById(options.targetId);if(!element)return;var cached=document.querySelector('[data-timezone]');var timeZone=cached&&cached.dataset.timezone||Intl.DateTimeFormat().resolvedOptions().timeZone;element.dataset.timezone=timeZone;element.textContent=(function formatFullTimestamp({ timestamp, lang = "en", timeZone }) {
const date = new Date(timestamp);
let zone = timeZone;
if (zone) try {
new Intl.DateTimeFormat("en", { timeZone: zone }).format();
} catch {
zone = "UTC";
}
return `${new Intl.DateTimeFormat(lang, {
hour: "numeric",
minute: "2-digit",
timeZone: zone
}).format(date)} · ${new Intl.DateTimeFormat(lang, {
month: "short",
day: "numeric",
year: "numeric",
timeZone: zone
}).format(date)}`;
})({timestamp:options.timestamp,lang:options.lang,timeZone:timeZone})}({"lang":"en","targetId":"_R_5jlcpip8j6_","timestamp":1530286208000});</script></span><span class="contents"></span></div></div><div class="border-border my-2 border-t"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012719876706840578"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-10 px-3 [&amp;&gt;svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">29</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_1tl7lcpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-10 px-3 [&amp;&gt;svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">744</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_1tnlcpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-10 px-3 [&amp;&gt;svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">2.3K</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class=""><div class="min-w-0 flex-1"><button id="base-ui-_R_7mnlcpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-10 px-3 [&amp;&gt;svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">357</span></span></span></span></button></div></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_6qnlcpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-10 px-3 [&amp;&gt;svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></article></div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical"><div aria-label="Loading post" role="status"><div class="flex items-start"><div aria-hidden="true" class="bg-secondary block rounded-sm motion-safe:animate-pulse bg-tertiary! corner-round! size-11 shrink-0 rounded-[999px]!"></div><div class="ms-3 flex min-w-0 flex-1 flex-col gap-[18px]"><div aria-hidden="true" class="bg-secondary block rounded-sm motion-safe:animate-pulse bg-tertiary! corner-round! h-[13px] w-[155px] rounded-[100px]!"></div><div class="flex flex-col gap-1"><div aria-hidden="true" class="bg-secondary block rounded-sm motion-safe:animate-pulse bg-tertiary! corner-round! h-[13px] w-full rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm motion-safe:animate-pulse bg-tertiary! corner-round! h-[13px] w-[106px] rounded-[100px]!"></div></div></div></div><div class="mt-3 flex h-5 items-center ps-14"><div class="flex min-w-0 flex-1 gap-4 px-4"><div aria-hidden="true" class="bg-secondary block rounded-sm motion-safe:animate-pulse bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm motion-safe:animate-pulse bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm motion-safe:animate-pulse bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm motion-safe:animate-pulse bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div></div></div></div></div><!--/$--><!--/$--><!--/$--><!--/$--></main><aside class="mid:flex sticky top-0 hidden h-dvh w-full max-w-(--layout-width-right) min-w-(--layout-min-right) flex-1 flex-col items-start overflow-y-auto"><div class="w-full"><div class="sticky top-[min(0px,calc(100dvh_-_var(--sticky-view-height,100dvh)))] flex w-full flex-col gap-4 px-6 pt-3 pb-16 *:shrink-0"><!--$--><section class="overflow-hidden rounded-md border border-border bg-background"><h2 class="text-headline1 text-gray-1100 px-4 py-3 font-bold">Log in or sign up for X</h2><!--$--><div class="flex flex-col gap-3 px-4 pb-4"><p class="text-[15px] leading-5 text-gray-700">See what’s happening and join the conversation</p><div class="flex flex-col gap-3"><a href="/i/jf/onboarding/web?mode=signup&amp;redirect_after_login=%2Fcolmmacc%2Fstatus%2F1012719876706840578" class="bg-gray-1100 text-background flex min-h-10 min-w-0 items-center justify-center rounded-full px-3 py-2 text-[13px] leading-tight font-bold transition-colors hover:bg-gray-900"><span class="flex w-full min-w-0 items-center justify-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-phone-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true" class="size-[18px] shrink-0"><path d="M3 6.42383C3.00022 4.533 4.533 3.00022 6.42383 3H9.61816L12.2168 8.19727L10.6885 9.72461C11.4852 11.4181 12.5812 12.5137 14.2744 13.3105L15.8027 11.7832L21 14.3818V17.5762C20.9998 19.467 19.467 20.9998 17.5762 21C9.5262 21 3 14.4738 3 6.42383ZM5 6.42383C5 13.3692 10.6308 19 17.5762 19C18.3624 18.9998 18.9998 18.3624 19 17.5762V15.6182L16.1973 14.2168L15.207 15.207L14.7412 15.6738L14.1289 15.4287C11.3748 14.3271 9.67293 12.6252 8.57129 9.87109L8.32617 9.25879L8.79297 8.79297L9.7832 7.80273L8.38184 5H6.42383C5.63757 5.00022 5.00022 5.63757 5 6.42383Z"></path></svg><span class="min-w-0 text-center whitespace-nowrap">Continue with phone</span></span></a><button type="button" disabled="" aria-label="Continue with Apple" class="flex min-w-0 items-center justify-center rounded-full border border-gray-300 px-3 font-bold transition-colors hover:bg-gray-50 disabled:cursor-progress disabled:opacity-60 disabled:hover:bg-transparent min-h-10 py-2 text-[13px] leading-tight text-gray-1100"><span class="flex w-full min-w-0 items-center justify-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-logo-apple" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true" class="text-gray-1100 size-[18px] shrink-0"><path d="M16.365 1.43c0 1.14-.493 2.27-1.177 3.08-.744.9-1.99 1.57-2.987 1.57-.18 0-.36-.02-.53-.06-.01-.18-.04-.56-.04-.95 0-1.15.572-2.27 1.206-2.98.804-.94 2.142-1.64 3.248-1.68.03.22.05.45.05.68zm4.565 16.71c-.03.07-.463 1.58-1.518 3.12-.945 1.34-1.94 2.71-3.43 2.71-1.517 0-1.9-.88-3.63-.88-1.698 0-2.302.91-3.67.91-1.377 0-2.332-1.26-3.428-2.8-1.287-1.82-2.323-4.63-2.323-7.28 0-4.28 2.797-6.55 5.552-6.55 1.448 0 2.675.95 3.6.95.865 0 2.222-1.01 3.902-1.01.613 0 2.886.06 4.374 2.19-.13.09-2.383 1.37-2.383 4.19 0 3.26 2.854 4.42 2.955 4.45z"></path></svg><span class="min-w-0 text-center whitespace-nowrap">Continue with Apple</span></span></button><button type="button" disabled="" aria-label="Continue with Google" class="text-gray-1100 flex min-w-0 cursor-progress items-center justify-center rounded-full border border-gray-300 px-3 font-bold opacity-60 min-h-10 py-2 text-[13px] leading-tight"><span class="flex w-full min-w-0 items-center justify-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" data-icon="icon-logo-google" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true" class="size-[18px] shrink-0"><path d="M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92a5.06 5.06 0 0 1-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z" fill="#4285F4"></path><path d="M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z" fill="#34A853"></path><path d="M5.84 14.09a6.6 6.6 0 0 1 0-4.18V7.07H2.18A11 11 0 0 0 1 12c0 1.78.43 3.45 1.18 4.93l2.85-2.22.81-.62z" fill="#FBBC05"></path><path d="M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z" fill="#EA4335"></path></svg><span class="min-w-0 text-center whitespace-nowrap">Continue with Google</span></span></button></div><div class="flex items-center gap-2 text-[13px] leading-4 text-gray-700"><span class="h-px flex-1 bg-gray-300"></span> or <span class="h-px flex-1 bg-gray-300"></span></div><a href="/i/jf/onboarding/web?mode=login&amp;redirect_after_login=%2Fcolmmacc%2Fstatus%2F1012719876706840578" class="flex min-h-10 min-w-0 items-center justify-center px-3 py-2 text-[13px] leading-tight font-medium text-gray-700 transition-colors hover:text-gray-900"><span class="flex w-full min-w-0 items-center justify-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-at" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true" class="size-[18px] shrink-0"><path d="M12 3.786c-4.556 0-8.25 3.694-8.25 8.25s3.694 8.25 8.25 8.25c1.595 0 3.081-.451 4.341-1.233l1.054 1.7c-1.568.972-3.418 1.534-5.395 1.534-5.661 0-10.25-4.589-10.25-10.25S6.339 1.786 12 1.786s10.25 4.589 10.25 10.25c0 .901-.21 1.77-.452 2.477-.592 1.731-2.343 2.477-3.917 2.334-1.242-.113-2.307-.74-3.013-1.647-.961 1.253-2.45 2.011-4.092 1.78-2.581-.363-4.127-2.971-3.76-5.578.366-2.606 2.571-4.688 5.152-4.325 1.019.143 1.877.637 2.519 1.342l1.803.258-.507 3.549c-.187 1.31.761 2.509 2.079 2.629.915.083 1.627-.356 1.843-.99.2-.585.345-1.224.345-1.83 0-4.556-3.694-8.25-8.25-8.25zm-.111 5.274c-1.247-.175-2.645.854-2.893 2.623-.249 1.769.811 3.143 2.058 3.319 1.247.175 2.645-.854 2.893-2.623.249-1.769-.811-3.144-2.058-3.319z"></path></svg><span class="min-w-0 text-center">Log in with username or email</span></span></a></div><!--/$--></section><!--/$--><section class="overflow-hidden rounded-md border border-border bg-background"><h2 class="text-headline1 text-gray-1100 px-4 py-3 font-bold">Relevant people</h2><!--$--><div class="flex flex-col gap-1 px-4 py-3 transition-colors hover:bg-gray-100"><div class="flex items-start gap-2"><a aria-label="Colm MacCárthaigh" class="shrink-0 active" href="/colmmacc" data-status="active" aria-current="page"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10"><img alt="Avatar" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a><div class="flex min-w-0 flex-1 flex-col gap-1"><div class="flex items-center justify-between gap-2"><a class="flex min-w-0 flex-col active" href="/colmmacc" data-status="active" aria-current="page"><span class="text-gray-1100 truncate text-[15px] font-bold">Colm MacCárthaigh</span><span class="truncate text-[15px] text-gray-500">@<!-- -->colmmacc</span></a><a href="/i/jf/onboarding/web?mode=login&amp;redirect_after_login=%2Fcolmmacc" class="bg-gray-1100 text-background flex h-8 shrink-0 items-center rounded-full px-4 text-[14px] font-bold transition-colors hover:bg-gray-900">Follow</a></div></div></div></div><!--/$--></section><!--$--><!--$--><section class="border-border bg-background min-h-[428px] overflow-hidden rounded-md border"><h2 class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-headline1 font-extrabold px-4 py-3">Trending now</h2><div class="flex justify-center py-6"><div aria-hidden="true" class="flex w-full items-center justify-center"><div class="animate-spin h-5 w-5"><svg height="100%" viewBox="0 0 32 32" width="100%"><circle class="opacity-20 stroke-brand" cx="16" cy="16" fill="none" r="14" stroke-width="4"></circle><circle class="stroke-brand" cx="16" cy="16" fill="none" r="14" stroke-dasharray="80" stroke-dashoffset="60" stroke-width="4"></circle></svg></div></div></div></section><!--/$--><!--/$--><nav class="flex flex-wrap items-center gap-y-1 px-4 py-3" aria-label="Footer"><span class="flex items-center"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring hover:underline max-w-full text-subtext3 font-[inherit] text-[color:inherit] inline-flex min-h-6 items-center leading-6 text-gray-700" href="https://x.com/tos" target="_blank" rel="noopener noreferrer nofollow">Terms</a><span class="max-w-full text-subtext3 font-normal text-[color:inherit] px-1 text-gray-700 select-none" aria-hidden="true">·</span></span><span class="flex items-center"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring hover:underline max-w-full text-subtext3 font-[inherit] text-[color:inherit] inline-flex min-h-6 items-center leading-6 text-gray-700" href="https://x.com/privacy" target="_blank" rel="noopener noreferrer nofollow">Privacy</a><span class="max-w-full text-subtext3 font-normal text-[color:inherit] px-1 text-gray-700 select-none" aria-hidden="true">·</span></span><span class="flex items-center"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring hover:underline max-w-full text-subtext3 font-[inherit] text-[color:inherit] inline-flex min-h-6 items-center leading-6 text-gray-700" href="https://support.x.com/articles/20170514" target="_blank" rel="noopener noreferrer nofollow">Cookies</a><span class="max-w-full text-subtext3 font-normal text-[color:inherit] px-1 text-gray-700 select-none" aria-hidden="true">·</span></span><span class="flex items-center"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring hover:underline max-w-full text-subtext3 font-[inherit] text-[color:inherit] inline-flex min-h-6 items-center leading-6 text-gray-700" href="https://help.x.com/resources/accessibility" target="_blank" rel="noopener noreferrer nofollow">Accessibility</a><span class="max-w-full text-subtext3 font-normal text-[color:inherit] px-1 text-gray-700 select-none" aria-hidden="true">·</span></span><span class="flex items-center"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring hover:underline max-w-full text-subtext3 font-[inherit] text-[color:inherit] inline-flex min-h-6 items-center leading-6 text-gray-700" href="https://help.x.com/en/rules-and-policies/us-tida" target="_blank" rel="noopener noreferrer nofollow">US TIDA</a><span class="max-w-full text-subtext3 font-normal text-[color:inherit] px-1 text-gray-700 select-none" aria-hidden="true">·</span></span><span class="flex items-center"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring hover:underline max-w-full text-subtext3 font-[inherit] text-[color:inherit] inline-flex min-h-6 items-center leading-6 text-gray-700" href="https://business.x.com/en/help/troubleshooting/how-twitter-ads-work.html?ref=web-twc-ao-gbl-adsinfo&amp;utm_source=twc&amp;utm_medium=web&amp;utm_campaign=ao&amp;utm_content=adsinfo" target="_blank" rel="noopener noreferrer nofollow">Ads Info</a><span class="max-w-full text-subtext3 font-normal text-[color:inherit] px-1 text-gray-700 select-none" aria-hidden="true">·</span></span><button type="button" aria-label="More" class="text-subtext3 inline-flex min-h-6 items-center leading-6 text-gray-700 hover:underline" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_1miip8j6_" data-slot="xds-menu-trigger">More<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more-dots-hor" viewBox="0 0 24 24" display="flex" role="img" width="1em" height="1em" class="ms-0.5 size-[1em]" aria-hidden="true"><path d="M14 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0m7 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0M7 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0"></path></svg></button><span class="max-w-full text-subtext3 font-normal text-[color:inherit] ps-1 text-gray-700">© 2026 X Corp.</span></nav></div></div></aside></div></div><div aria-live="polite" aria-atomic="true" class="sr-only"></div><script nonce="17DwueGR4+2VebZkygB4Rg==">window.__INITIAL_DATA__={"appMetadata":{"appEnvironment":"prod","observabilityEnvironment":"production","appVersion":"ea35403677bffac79fe807f80b4bd401be852e9e","country":"US","isTwoffice":false},"featureSwitchPayload":{"features":{"blue_business_vo_nav_for_legacy_verified":true,"responsive_web_gpc_enabled":true,"rweb_client_transaction_id_enabled":true,"subscriptions_management_failed_payment_menu_alert_enabled":true,"subscriptions_sign_up_enabled":true,"xchat_external_app_integrations_enabled":true},"impressionPointers":{},"impressions":{},"settingsVersion":"dc3d3fdd6d8cc4ca777df7fe61617841"}};;document.currentScript.remove()</script><div><svg viewBox="0 0 24 24" id="loading-x-anim-0" aria-hidden="true" class="r-1p0dtai r-13gxpu9 r-4qtqp9 r-yyyyoo r-wy61xf r-1d2f490 r-ea0040 r-ywje51 r-dnmrzs r-u8s1d r-zchlnj r-1plcrui r-ipm5af r-lrvibr r-1blnp2b"><g><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"></path><path d="M 10,30 C 80,38 247,6 242,238 h 50 s 196,107 177,161 C 230,11 224,114 102,171 h 92 s 238,190 4,61 C 93,146 45,238 246,81 h 63 s 202,190 119,247 C 117,89 81,242 228,92 h 210 s 136,167 132,170 C 72,180 107,220 48,10 h 189 s 98,149 113,10 C 252,133 132,86 234,96 h 100 s 3,134 114,116 C 203,121 80,94 115,118 h 99 s 137,243 162,100 C 3,18 228,20 16,168 h 218 s 184,255 103,252 C 160,11 231,25 74,38 h 203 s 207,91 221,112 C 203,8 222,22 225,31 h 65 s 83,205 14,68 C 14,6 15,13 186,194 h 21 s 1,186 20,92 C 170,127 39,47 110,13 h 111 s 16,11 251,242 C 61,208 205,76 125,120 h 2 s 99,77 246,170 C 240,219 12,149 67,131 h 118 s 178,237 221,118 C 218,107 70,154 27,191 h 239 s 233,248 43,245 C 253,22 98,232 151,30 h 68 s 192,186 186,14" fill="#1d9bf008"></path></g></svg><svg viewBox="0 0 24 24" id="loading-x-anim-1" aria-hidden="true" class="r-1p0dtai r-13gxpu9 r-4qtqp9 r-yyyyoo r-wy61xf r-1d2f490 r-ea0040 r-ywje51 r-dnmrzs r-u8s1d r-zchlnj r-1plcrui r-ipm5af r-lrvibr r-1blnp2b"><g><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"></path><path d="M 10,30 C 101,127 251,7 104,228 h 190 s 88,53 4,40 C 8,20 208,134 217,120 h 45 s 143,60 243,106 C 96,75 178,83 176,186 h 44 s 179,243 51,27 C 245,156 102,136 111,116 h 190 s 161,185 153,199 C 124,12 221,128 4,209 h 139 s 32,216 156,180 C 203,21 191,155 98,30 h 253 s 93,54 43,109 C 142,12 249,251 17,41 h 153 s 178,196 38,74 C 118,173 214,87 191,202 h 37 s 201,85 152,161 C 57,200 191,163 161,125 h 97 s 41,244 101,246 C 113,140 51,53 229,250 h 21 s 201,23 98,16 C 224,33 111,210 63,80 h 199 s 36,196 113,104 C 193,73 92,121 226,20 h 189 s 10,238 247,139 C 116,141 241,73 22,232 h 191 s 175,132 10,128 C 209,21 188,44 77,231 h 70 s 123,198 57,192 C 168,170 89,10 133,106 h 36 s 139,110 89,11 C 98,179 219,44 86,112 h 243 s 106,175 216,173" fill="#1d9bf008"></path></g></svg><svg viewBox="0 0 24 24" id="loading-x-anim-2" aria-hidden="true" class="r-1p0dtai r-13gxpu9 r-4qtqp9 r-yyyyoo r-wy61xf r-1d2f490 r-ea0040 r-ywje51 r-dnmrzs r-u8s1d r-zchlnj r-1plcrui r-ipm5af r-lrvibr r-1blnp2b"><g><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"></path><path d="M 10,30 C 192,105 33,185 183,74 h 241 s 116,75 120,7 C 217,225 101,241 166,236 h 45 s 244,115 65,192 C 249,151 160,204 79,223 h 141 s 181,210 187,67 C 61,102 217,100 123,46 h 187 s 119,139 111,125 C 30,38 18,170 244,94 h 190 s 60,82 139,83 C 234,16 246,4 193,245 h 164 s 107,13 178,32 C 12,60 148,21 25,127 h 220 s 50,109 43,46 C 97,108 163,88 66,65 h 35 s 100,5 196,45 C 183,26 111,87 240,13 h 90 s 40,114 251,195 C 163,132 187,117 142,248 h 74 s 244,33 47,145 C 173,89 136,177 213,95 h 74 s 63,81 199,250 C 149,159 19,177 252,100 h 52 s 210,94 192,65 C 152,73 221,18 75,182 h 92 s 5,240 151,54 C 199,38 72,157 170,93 h 56 s 189,25 173,193 C 142,39 176,195 5,153 h 88 s 255,236 38,116 C 228,4 245,89 9,192 h 118 s 212,140 247,52" fill="#1d9bf008"></path></g></svg><svg viewBox="0 0 24 24" id="loading-x-anim-3" aria-hidden="true" class="r-1p0dtai r-13gxpu9 r-4qtqp9 r-yyyyoo r-wy61xf r-1d2f490 r-ea0040 r-ywje51 r-dnmrzs r-u8s1d r-zchlnj r-1plcrui r-ipm5af r-lrvibr r-1blnp2b"><g><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"></path><path d="M 10,30 C 211,238 115,188 3,118 h 180 s 139,16 189,106 C 25,188 157,185 44,254 h 239 s 216,195 24,97 C 169,187 141,145 206,67 h 73 s 13,2 201,198 C 175,135 76,51 76,6 h 191 s 12,81 196,175 C 67,163 14,185 49,50 h 214 s 217,59 243,77 C 41,253 195,119 168,215 h 249 s 64,33 217,168 C 117,232 49,18 139,146 h 82 s 166,215 2,70 C 184,10 120,107 36,228 h 58 s 0,87 147,221 C 28,137 163,102 139,132 h 164 s 199,13 113,121 C 16,35 137,176 128,221 h 249 s 219,228 98,14 C 21,123 178,250 73,71 h 140 s 31,76 172,57 C 183,133 204,154 100,253 h 80 s 195,43 150,47 C 13,213 97,174 22,197 h 128 s 102,98 48,148 C 182,60 161,209 61,229 h 99 s 31,182 227,15 C 242,71 41,252 103,61 h 133 s 177,224 56,106 C 90,201 197,241 163,21 h 69 s 249,25 165,79" fill="#1d9bf008"></path></g></svg></div><script nonce="17DwueGR4+2VebZkygB4Rg==" class="$tsr" id="$tsr-stream-barrier">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:void 0,matches:$R[1]=[$R[2]={i:"__root__{}",u:1789169744342,s:"success",b:$R[3]={showsLoggedOutTrends:!0},l:$R[4]={guideTrends:void 0},ssr:!0},$R[5]={i:"$usernamestatus$idcolmmaccstatus1012719876706840578{}",u:1789169744683,s:"success",l:$R[6]={conversationOptions:$R[7]={rankingMode:void 0},emitTweetSchema:!1,metadata:$R[8]={authorAvatarUrl:"https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg",authorDescription:void 0,authorName:"Colm MacCárthaigh",focalTweetId:"1012719876706840578",hasArticle:!1,headMetadata:$R[9]={appLinkUrl:"twitter://status?id=1012719876706840578",articleTags:void 0,author:$R[10]={image:$R[11]={alt:"Colm MacCárthaigh profile picture",url:"https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg"},screenName:"colmmacc",url:"https://x.com/colmmacc"},bodyText:"Have you ever needed to generate a random number in code? whether it's for rolling a dice, or shuffling a set, this tweet thread is here for you! There's no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learned ...",canonicalPath:"/colmmacc/status/1012719876706840578",canonicalUrl:"https://x.com/colmmacc/status/1012719876706840578",description:"Have you ever needed to generate a random number in code? whether it's for rolling a dice, or shuffling a set, this tweet thread is here for you! There's no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learned ...",faviconUrl:void 0,hasAiGeneratedMedia:void 0,image:$R[12]={alt:"Colm MacCárthaigh profile picture",height:400,isContent:!1,preloadUrl:void 0,preloadSrcSet:void 0,preloadSizes:void 0,url:"https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg",width:400},isAdult:!1,isArticle:!1,mediaPreviewImageUrl:void 0,publishedTime:"2018-06-29T15:30:08.000Z",replyCount:29,schemaImage:void 0,socialTitle:"Colm MacCárthaigh (@colmmacc) on X",title:"Colm MacCárthaigh on X: \"Have you ever needed to generate a random number in code? whether it's for rolling a dice, or shuffling a set, this tweet thread is here for you! There's no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learned ...\""},replyCount:29,screenName:"colmmacc",status:"available",text:"Have you ever needed to generate a random number in code? whether it's for rolling a dice, or shuffling a set, this tweet thread is here for you! There's no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learned ..."},isSinglePost:!1},ssr:!0}],dehydratedData:$R[13]={relayRecords:$R[14]={"client:root":$R[15]={__id:"client:root",__typename:"__Root","tweet_result_by_rest_id(rest_id:\"1012719876706840578\",safety_level:\"TweetDetail\")":$R[16]={__ref:"TweetResults:1012719876706840578"}},"TweetResults:1012719876706840578":$R[17]={__id:"TweetResults:1012719876706840578",__typename:"TweetResults",rest_id:"1012719876706840578",result:$R[18]={__ref:"VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MTk4NzY3MDY4NDA1Nzg="},"VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==":$R[19]={__id:"VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==",__typename:"Tweet",article:null,id:"VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==",rest_id:"1012719876706840578",core:$R[20]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:core"},legacy:$R[21]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:legacy"},counts:$R[22]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:counts"},views:$R[23]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:views"},details:$R[24]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:details"},mention_entities:$R[25]={__refs:$R[26]=[]},reply_to_results:null,reply_to_user_results:null,media_entities2:$R[27]={__refs:$R[28]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,cashtag_attachments:$R[29]={__refs:$R[30]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[31]={__refs:$R[32]=[]},note_tweet:null,grok_translated_post_with_availability:$R[33]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[34]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:place"},super_follows_conversation_user_results:null},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:core":$R[35]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:core",__typename:"TweetCore",user_results:$R[36]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"VXNlclJlc3VsdHM6MTQzNDAxNTA=":$R[37]={__id:"VXNlclJlc3VsdHM6MTQzNDAxNTA=",__typename:"UserResults",result:$R[38]={__ref:"VXNlcjoxNDM0MDE1MA=="},id:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},"VXNlcjoxNDM0MDE1MA==":$R[39]={__id:"VXNlcjoxNDM0MDE1MA==",__typename:"User",core:$R[40]={__ref:"client:VXNlcjoxNDM0MDE1MA==:core"},rest_id:"14340150",avatar:$R[41]={__ref:"client:VXNlcjoxNDM0MDE1MA==:avatar"},relationship_counts:$R[42]={__ref:"client:VXNlcjoxNDM0MDE1MA==:relationship_counts"},tweet_counts:$R[43]={__ref:"client:VXNlcjoxNDM0MDE1MA==:tweet_counts"},privacy:$R[44]={__ref:"client:VXNlcjoxNDM0MDE1MA==:privacy"},profile_image_shape:"Circle",identity_profile_labels_highlighted_label:$R[45]={__ref:"client:VXNlcjoxNDM0MDE1MA==:identity_profile_labels_highlighted_label"},verification:$R[46]={__ref:"client:VXNlcjoxNDM0MDE1MA==:verification"},id:"VXNlcjoxNDM0MDE1MA=="},"client:VXNlcjoxNDM0MDE1MA==:core":$R[47]={__id:"client:VXNlcjoxNDM0MDE1MA==:core",__typename:"UserCore",screen_name:"colmmacc",name:"Colm MacCárthaigh"},"client:VXNlcjoxNDM0MDE1MA==:avatar":$R[48]={__id:"client:VXNlcjoxNDM0MDE1MA==:avatar",__typename:"UserAvatar",image_url:"https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg"},"client:VXNlcjoxNDM0MDE1MA==:relationship_counts":$R[49]={__id:"client:VXNlcjoxNDM0MDE1MA==:relationship_counts",__typename:"UserRelationshipCounts",followers:38324,following:2022},"client:VXNlcjoxNDM0MDE1MA==:tweet_counts":$R[50]={__id:"client:VXNlcjoxNDM0MDE1MA==:tweet_counts",__typename:"UserTweetCounts",tweets:11030},"client:VXNlcjoxNDM0MDE1MA==:privacy":$R[51]={__id:"client:VXNlcjoxNDM0MDE1MA==:privacy",__typename:"UserPrivacy",protected:!1},"client:VXNlcjoxNDM0MDE1MA==:identity_profile_labels_highlighted_label":$R[52]={__id:"client:VXNlcjoxNDM0MDE1MA==:identity_profile_labels_highlighted_label",__typename:"HighlightedUserLabelResponse",label:null},"client:VXNlcjoxNDM0MDE1MA==:verification":$R[53]={__id:"client:VXNlcjoxNDM0MDE1MA==:verification",__typename:"UserVerification",is_blue_verified:!1,verified_type:null},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:legacy":$R[54]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:counts":$R[55]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:counts",__typename:"ApiCounts",bookmark_count:357,favorite_count:2283,reply_count:29,retweet_count:744},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:views":$R[56]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:details":$R[57]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[58]=[0,279],self_thread_metadata:null,full_text:"Have you ever needed to generate a random number in code? whether it's for rolling a dice, or shuffling a set, this tweet thread is here for you! There's no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learned ...",hashtag_entities:$R[59]={__refs:$R[60]=[]},timestamp_entities:$R[61]={__refs:$R[62]=[]},cashtag_entities:$R[63]={__refs:$R[64]=[]},smarttags:$R[65]={__refs:$R[66]=[]},created_at_ms:1530286208000},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:grok_translated_post_with_availability":$R[67]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:place":$R[68]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:place",__typename:"ApiPlace",full_name:null,id:null}},relayRecordStream:$R[69]=($R[70]=(stream) => new ReadableStream({ start(controller) {
stream.on({
next(value) {
try {
controller.enqueue(value);
} catch (_error) {}
},
throw(value) {
controller.error(value);
},
return() {
try {
controller.close();
} catch (_error) {}
}
});
} }))($R[71]=($R[72]=() => {
const buffer = [];
const listeners = [];
let alive = true;
let success = false;
let count = 0;
const internal = {
flush(value, mode, x) {
for (x = 0; x < count; x++) if (listeners[x]) listeners[x][mode](value);
},
up(listener, x, z, current) {
for (x = 0, z = buffer.length; x < z; x++) {
current = buffer[x];
if (!alive && x === z - 1) listener[success ? "return" : "throw"](current);
else listener.next(current);
}
},
on(listener, temp) {
if (alive) {
temp = count++;
listeners[temp] = listener;
}
internal.up(listener);
return () => {
if (alive) {
listeners[temp] = listeners[count];
listeners[count--] = void 0;
}
};
}
};
return {
__SEROVAL_STREAM__: true,
on(listener) {
return internal.on(listener);
},
next(value) {
if (alive) {
buffer.push(value);
internal.flush(value, "next");
}
},
throw(value) {
if (alive) {
buffer.push(value);
internal.flush(value, "throw");
alive = false;
success = false;
listeners.length = 0;
}
},
return(value) {
if (alive) {
buffer.push(value);
internal.flush(value, "return");
alive = false;
success = true;
listeners.length = 0;
}
}
};
})())}})($R["tsr"]);document.currentScript.remove()</script><script nonce="17DwueGR4+2VebZkygB4Rg==" id="_R_">requestAnimationFrame(function(){$RT=performance.now()});</script><div hidden id="S:0"><div class="relative h-full overflow-hidden"><div class="h-full"><div class="mx-auto w-full max-w-[600px]" id="urt:conversation:1012719876706840578:none:default"><ul><li><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical border-b border-gray-100"><article class="flex flex-col gap-1"><div class="flex flex-col gap-2"><div class="flex flex-col gap-3"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col"><div class="flex items-start justify-between gap-2"><div class="overflow-hidden flex-col items-start gap-0 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><script nonce='17DwueGR4+2VebZkygB4Rg=='>($R=>$R[71].next($R[73]={relayRecords:$R[74]={"client:root":$R[75]={__id:"client:root",__typename:"__Root","threaded_conversation_with_injections_v2(focal_tweet_id:\"1012719876706840578\")":$R[76]={__ref:"LoggedOutRepliesProduct-Timeline"},"tweet_result_by_rest_id(rest_id:\"1012719876706840578\",safety_level:\"TweetDetail\")":$R[77]={__ref:"TweetResults:1012719876706840578"},"__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\")":$R[78]={__ref:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\")"}},"LoggedOutRepliesProduct-Timeline":$R[79]={__id:"LoggedOutRepliesProduct-Timeline",__typename:"TimelineTimeline",id:"LoggedOutRepliesProduct-Timeline",response_objects:null,instructions:$R[80]={__refs:$R[81]=["client:LoggedOutRepliesProduct-Timeline:instructions:0","client:LoggedOutRepliesProduct-Timeline:instructions:1","client:LoggedOutRepliesProduct-Timeline:instructions:2","client:LoggedOutRepliesProduct-Timeline:instructions:3"]}},"client:LoggedOutRepliesProduct-Timeline:instructions:0":$R[82]={__id:"client:LoggedOutRepliesProduct-Timeline:instructions:0",__typename:"TimelineClearCache",retain_viewport_items:null},"client:LoggedOutRepliesProduct-Timeline:instructions:1":$R[83]={__id:"client:LoggedOutRepliesProduct-Timeline:instructions:1",__typename:"TimelineAddEntries",entries:$R[84]={__refs:$R[85]=["urt:server:TimelineTimelineEntry:tweet-1012719876706840578","urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624","urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449"]}},"urt:server:TimelineTimelineEntry:tweet-1012719876706840578":$R[86]={__id:"urt:server:TimelineTimelineEntry:tweet-1012719876706840578",__typename:"TimelineTimelineEntry",entry_id:"tweet-1012719876706840578",sort_index:"2098556129230454784",content:$R[87]={__ref:"client:urt:server:TimelineTimelineEntry:tweet-1012719876706840578:content"}},"client:urt:server:TimelineTimelineEntry:tweet-1012719876706840578:content":$R[88]={__id:"client:urt:server:TimelineTimelineEntry:tweet-1012719876706840578:content",__typename:"TimelineTimelineItem",client_event_info:$R[89]={__ref:"client:urt:server:TimelineTimelineEntry:tweet-1012719876706840578:content:client_event_info"},feedback_info:null,content:$R[90]={__ref:"client:urt:server:TimelineTimelineEntry:tweet-1012719876706840578:content:content"}},"client:urt:server:TimelineTimelineEntry:tweet-1012719876706840578:content:client_event_info":$R[91]={__id:"client:urt:server:TimelineTimelineEntry:tweet-1012719876706840578:content:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:null},"client:urt:server:TimelineTimelineEntry:tweet-1012719876706840578:content:content":$R[92]={__id:"client:urt:server:TimelineTimelineEntry:tweet-1012719876706840578:content:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[93]={__ref:"TweetResults:1012719876706840578"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"client:__type:TimelineTweet":$R[94]={__id:"client:__type:TimelineTweet",__typename:"__TypeSchema",__isTimelineTimelineItemContent:!0},"TweetResults:1012719876706840578":$R[95]={__id:"TweetResults:1012719876706840578",__typename:"TweetResults",result:$R[96]={__ref:"VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MTk4NzY3MDY4NDA1Nzg=",rest_id:"1012719876706840578"},"VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==":$R[97]={__id:"VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==",__typename:"Tweet",rest_id:"1012719876706840578",core:$R[98]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:core"},legacy:$R[99]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:legacy"},counts:$R[100]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:counts"},views:$R[101]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:views"},details:$R[102]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:details"},mention_entities:$R[103]={__refs:$R[104]=[]},reply_to_results:null,reply_to_user_results:null,media_entities2:$R[105]={__refs:$R[106]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[107]={__refs:$R[108]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[109]={__refs:$R[110]=[]},note_tweet:null,grok_translated_post_with_availability:$R[111]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[112]={__ref:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA=="},"client:__type:Tweet":$R[113]={__id:"client:__type:Tweet",__typename:"__TypeSchema",__isTweetResult:!0},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:core":$R[114]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:core",__typename:"TweetCore",user_results:$R[115]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"VXNlclJlc3VsdHM6MTQzNDAxNTA=":$R[116]={__id:"VXNlclJlc3VsdHM6MTQzNDAxNTA=",__typename:"UserResults",result:$R[117]={__ref:"VXNlcjoxNDM0MDE1MA=="},id:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},"VXNlcjoxNDM0MDE1MA==":$R[118]={__id:"VXNlcjoxNDM0MDE1MA==",__typename:"User",core:$R[119]={__ref:"client:VXNlcjoxNDM0MDE1MA==:core"},rest_id:"14340150",avatar:$R[120]={__ref:"client:VXNlcjoxNDM0MDE1MA==:avatar"},relationship_counts:$R[121]={__ref:"client:VXNlcjoxNDM0MDE1MA==:relationship_counts"},tweet_counts:$R[122]={__ref:"client:VXNlcjoxNDM0MDE1MA==:tweet_counts"},privacy:$R[123]={__ref:"client:VXNlcjoxNDM0MDE1MA==:privacy"},profile_image_shape:"Circle",identity_profile_labels_highlighted_label:$R[124]={__ref:"client:VXNlcjoxNDM0MDE1MA==:identity_profile_labels_highlighted_label"},verification:$R[125]={__ref:"client:VXNlcjoxNDM0MDE1MA==:verification"},id:"VXNlcjoxNDM0MDE1MA==",profile_bio:$R[126]={__ref:"client:VXNlcjoxNDM0MDE1MA==:profile_bio"}},"client:VXNlcjoxNDM0MDE1MA==:core":$R[127]={__id:"client:VXNlcjoxNDM0MDE1MA==:core",__typename:"UserCore",screen_name:"colmmacc",name:"Colm MacCárthaigh"},"client:VXNlcjoxNDM0MDE1MA==:avatar":$R[128]={__id:"client:VXNlcjoxNDM0MDE1MA==:avatar",__typename:"UserAvatar",image_url:"https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg"},"client:VXNlcjoxNDM0MDE1MA==:relationship_counts":$R[129]={__id:"client:VXNlcjoxNDM0MDE1MA==:relationship_counts",__typename:"UserRelationshipCounts",followers:38324,following:2022},"client:VXNlcjoxNDM0MDE1MA==:tweet_counts":$R[130]={__id:"client:VXNlcjoxNDM0MDE1MA==:tweet_counts",__typename:"UserTweetCounts",tweets:11030},"client:VXNlcjoxNDM0MDE1MA==:privacy":$R[131]={__id:"client:VXNlcjoxNDM0MDE1MA==:privacy",__typename:"UserPrivacy",protected:!1},"client:VXNlcjoxNDM0MDE1MA==:identity_profile_labels_highlighted_label":$R[132]={__id:"client:VXNlcjoxNDM0MDE1MA==:identity_profile_labels_highlighted_label",__typename:"HighlightedUserLabelResponse",label:null},"client:VXNlcjoxNDM0MDE1MA==:verification":$R[133]={__id:"client:VXNlcjoxNDM0MDE1MA==:verification",__typename:"UserVerification",is_blue_verified:!1,verified_type:null},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:legacy":$R[134]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:counts":$R[135]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:counts",__typename:"ApiCounts",bookmark_count:357,favorite_count:2283,reply_count:29,retweet_count:744},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:views":$R[136]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:details":$R[137]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[138]=[0,279],self_thread_metadata:null,full_text:"Have you ever needed to generate a random number in code? whether it's for rolling a dice, or shuffling a set, this tweet thread is here for you! There's no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learned ...",hashtag_entities:$R[139]={__refs:$R[140]=[]},timestamp_entities:$R[141]={__refs:$R[142]=[]},cashtag_entities:$R[143]={__refs:$R[144]=[]},smarttags:$R[145]={__refs:$R[146]=[]},created_at_ms:1530286208000},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:grok_translated_post_with_availability":$R[147]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:place":$R[148]={__id:"client:VHdlZXQ6MTAxMjcxOTg3NjcwNjg0MDU3OA==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624":$R[149]={__id:"urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624",__typename:"TimelineTimelineEntry",entry_id:"conversationthread-1012720273014042624",sort_index:"2098556129230454774",content:$R[150]={__ref:"client:urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624:content"}},"client:urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624:content":$R[151]={__id:"client:urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624:content",__typename:"TimelineTimelineModule",display_type:"VerticalConversation",metadata:$R[152]={__ref:"client:urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624:content:metadata"},items:$R[153]={__refs:$R[154]=["urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209","urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328"]},header:null,footer:null},"client:urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624:content:metadata":$R[155]={__id:"client:urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624:content:metadata",__typename:"TimelineModuleMetadata",conversation_metadata:$R[156]={__ref:"client:urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624:content:metadata:conversation_metadata"}},"client:urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624:content:metadata:conversation_metadata":$R[157]={__id:"client:urt:server:TimelineTimelineEntry:conversationthread-1012720273014042624:content:metadata:conversation_metadata",__typename:"TimelineModuleConversationMetadata",enable_deduplication:!0,all_tweet_ids:$R[158]=["1012735873627107328"]},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624":$R[159]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012720273014042624",item:$R[160]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item":$R[161]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item",__typename:"TimelineTimelineItem",client_event_info:$R[162]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info"},feedback_info:null,content:$R[163]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info":$R[164]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[165]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info:details":$R[166]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[167]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[168]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info:details:conversation_details":$R[169]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info:details:timelines_details":$R[170]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:content":$R[171]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012720273014042624:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[172]={__ref:"TweetResults:1012720273014042624"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012720273014042624":$R[173]={__id:"TweetResults:1012720273014042624",__typename:"TweetResults",result:$R[174]={__ref:"VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MjAyNzMwMTQwNDI2MjQ=",rest_id:"1012720273014042624"},"VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==":$R[175]={__id:"VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==",__typename:"Tweet",rest_id:"1012720273014042624",core:$R[176]={__ref:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:core"},legacy:$R[177]={__ref:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:legacy"},counts:$R[178]={__ref:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:counts"},views:$R[179]={__ref:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:views"},details:$R[180]={__ref:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:details"},mention_entities:$R[181]={__refs:$R[182]=[]},reply_to_results:$R[183]={__ref:"TweetResults:1012719876706840578"},reply_to_user_results:$R[184]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[185]={__refs:$R[186]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[187]={__refs:$R[188]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[189]={__refs:$R[190]=[]},note_tweet:null,grok_translated_post_with_availability:$R[191]={__ref:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[192]={__ref:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA=="},"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:core":$R[193]={__id:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:core",__typename:"TweetCore",user_results:$R[194]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:legacy":$R[195]={__id:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:counts":$R[196]={__id:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:counts",__typename:"ApiCounts",bookmark_count:1,favorite_count:47,reply_count:1,retweet_count:1},"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:views":$R[197]={__id:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:details":$R[198]={__id:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[199]=[0,207],self_thread_metadata:null,full_text:"O.k. let's start with the most common problem, and the most common mistakes: how do we pick a random number between 0 and N inclusive, let's say N = 5, so like a dice that starts at zero because we're nerds.",hashtag_entities:$R[200]={__refs:$R[201]=[]},timestamp_entities:$R[202]={__refs:$R[203]=[]},cashtag_entities:$R[204]={__refs:$R[205]=[]},smarttags:$R[206]={__refs:$R[207]=[]},created_at_ms:1530286303000},"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:grok_translated_post_with_availability":$R[208]={__id:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:place":$R[209]={__id:"client:VHdlZXQ6MTAxMjcyMDI3MzAxNDA0MjYyNA==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056":$R[210]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012721284092973056",item:$R[211]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item":$R[212]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item",__typename:"TimelineTimelineItem",client_event_info:$R[213]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info"},feedback_info:null,content:$R[214]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info":$R[215]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[216]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info:details":$R[217]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[218]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[219]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info:details:conversation_details":$R[220]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info:details:timelines_details":$R[221]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:content":$R[222]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721284092973056:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[223]={__ref:"TweetResults:1012721284092973056"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012721284092973056":$R[224]={__id:"TweetResults:1012721284092973056",__typename:"TweetResults",result:$R[225]={__ref:"VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MjEyODQwOTI5NzMwNTY=",rest_id:"1012721284092973056"},"VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==":$R[226]={__id:"VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==",__typename:"Tweet",rest_id:"1012721284092973056",core:$R[227]={__ref:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:core"},legacy:$R[228]={__ref:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:legacy"},counts:$R[229]={__ref:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:counts"},views:$R[230]={__ref:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:views"},details:$R[231]={__ref:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:details"},mention_entities:$R[232]={__refs:$R[233]=[]},reply_to_results:$R[234]={__ref:"TweetResults:1012720273014042624"},reply_to_user_results:$R[235]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[236]={__refs:$R[237]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[238]={__refs:$R[239]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[240]={__refs:$R[241]=[]},note_tweet:null,grok_translated_post_with_availability:$R[242]={__ref:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[243]={__ref:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng=="},"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:core":$R[244]={__id:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:core",__typename:"TweetCore",user_results:$R[245]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:legacy":$R[246]={__id:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:counts":$R[247]={__id:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:counts",__typename:"ApiCounts",bookmark_count:2,favorite_count:54,reply_count:5,retweet_count:5},"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:views":$R[248]={__id:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:details":$R[249]={__id:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[250]=[0,257],self_thread_metadata:null,full_text:"A common solution is to r = rand() % (N + 1). Easy, right? Wrong! This solution is biased. To see how, imagine that RAND_MAX is \"15\". 0 % 6 == 0, 6 % 6 == 0, and 12 % 6 == 0 , so there are three rand() values each that return 0. Same works for 1, 2, 3 ...",hashtag_entities:$R[251]={__refs:$R[252]=[]},timestamp_entities:$R[253]={__refs:$R[254]=[]},cashtag_entities:$R[255]={__refs:$R[256]=[]},smarttags:$R[257]={__refs:$R[258]=[]},created_at_ms:1530286544000},"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:grok_translated_post_with_availability":$R[259]={__id:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:place":$R[260]={__id:"client:VHdlZXQ6MTAxMjcyMTI4NDA5Mjk3MzA1Ng==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696":$R[261]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012721669155229696",item:$R[262]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item":$R[263]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item",__typename:"TimelineTimelineItem",client_event_info:$R[264]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info"},feedback_info:null,content:$R[265]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info":$R[266]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[267]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info:details":$R[268]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[269]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[270]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info:details:conversation_details":$R[271]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info:details:timelines_details":$R[272]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:content":$R[273]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012721669155229696:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[274]={__ref:"TweetResults:1012721669155229696"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012721669155229696":$R[275]={__id:"TweetResults:1012721669155229696",__typename:"TweetResults",result:$R[276]={__ref:"VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MjE2NjkxNTUyMjk2OTY=",rest_id:"1012721669155229696"},"VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==":$R[277]={__id:"VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==",__typename:"Tweet",rest_id:"1012721669155229696",core:$R[278]={__ref:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:core"},legacy:$R[279]={__ref:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:legacy"},counts:$R[280]={__ref:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:counts"},views:$R[281]={__ref:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:views"},details:$R[282]={__ref:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:details"},mention_entities:$R[283]={__refs:$R[284]=[]},reply_to_results:$R[285]={__ref:"TweetResults:1012721284092973056"},reply_to_user_results:$R[286]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[287]={__refs:$R[288]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[289]={__refs:$R[290]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[291]={__refs:$R[292]=[]},note_tweet:null,grok_translated_post_with_availability:$R[293]={__ref:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[294]={__ref:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng=="},"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:core":$R[295]={__id:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:core",__typename:"TweetCore",user_results:$R[296]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:legacy":$R[297]={__id:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:counts":$R[298]={__id:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:counts",__typename:"ApiCounts",bookmark_count:0,favorite_count:34,reply_count:1,retweet_count:2},"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:views":$R[299]={__id:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:details":$R[300]={__id:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[301]=[0,246],self_thread_metadata:null,full_text:"But there are only two rand() values that return 4: 4 % 6 and 10 % 6. Same for 5. So 0, 1, 2, 3 are all 50% more likely than 4 or 5. That's bias! Of course with a big RAND_MAX, this bias diminishes, but it's still there. So don't do it this way.",hashtag_entities:$R[302]={__refs:$R[303]=[]},timestamp_entities:$R[304]={__refs:$R[305]=[]},cashtag_entities:$R[306]={__refs:$R[307]=[]},smarttags:$R[308]={__refs:$R[309]=[]},created_at_ms:1530286636000},"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:grok_translated_post_with_availability":$R[310]={__id:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:place":$R[311]={__id:"client:VHdlZXQ6MTAxMjcyMTY2OTE1NTIyOTY5Ng==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817":$R[312]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012722055635234817",item:$R[313]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item":$R[314]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item",__typename:"TimelineTimelineItem",client_event_info:$R[315]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info"},feedback_info:null,content:$R[316]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info":$R[317]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[318]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info:details":$R[319]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[320]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[321]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info:details:conversation_details":$R[322]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info:details:timelines_details":$R[323]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:content":$R[324]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722055635234817:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[325]={__ref:"TweetResults:1012722055635234817"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012722055635234817":$R[326]={__id:"TweetResults:1012722055635234817",__typename:"TweetResults",result:$R[327]={__ref:"VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MjIwNTU2MzUyMzQ4MTc=",rest_id:"1012722055635234817"},"VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==":$R[328]={__id:"VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==",__typename:"Tweet",rest_id:"1012722055635234817",core:$R[329]={__ref:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:core"},legacy:$R[330]={__ref:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:legacy"},counts:$R[331]={__ref:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:counts"},views:$R[332]={__ref:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:views"},details:$R[333]={__ref:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:details"},mention_entities:$R[334]={__refs:$R[335]=[]},reply_to_results:$R[336]={__ref:"TweetResults:1012721669155229696"},reply_to_user_results:$R[337]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[338]={__refs:$R[339]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[340]={__refs:$R[341]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[342]={__refs:$R[343]=[]},note_tweet:null,grok_translated_post_with_availability:$R[344]={__ref:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[345]={__ref:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw=="},"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:core":$R[346]={__id:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:core",__typename:"TweetCore",user_results:$R[347]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:legacy":$R[348]={__id:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:counts":$R[349]={__id:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:counts",__typename:"ApiCounts",bookmark_count:0,favorite_count:17,reply_count:2,retweet_count:1},"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:views":$R[350]={__id:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:details":$R[351]={__id:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[352]=[0,251],self_thread_metadata:null,full_text:"O.k. so what if we use a float to avoid this? It's tempting! We can build a float between 0.0 and 1.0 by doing f = (float) rand() / (float) RAND_MAX. So we build a little macro or function for that, and now we can just do r = randFloat() * 5, right?",hashtag_entities:$R[353]={__refs:$R[354]=[]},timestamp_entities:$R[355]={__refs:$R[356]=[]},cashtag_entities:$R[357]={__refs:$R[358]=[]},smarttags:$R[359]={__refs:$R[360]=[]},created_at_ms:1530286728000},"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:grok_translated_post_with_availability":$R[361]={__id:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:place":$R[362]={__id:"client:VHdlZXQ6MTAxMjcyMjA1NTYzNTIzNDgxNw==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048":$R[363]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012722351899906048",item:$R[364]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item":$R[365]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item",__typename:"TimelineTimelineItem",client_event_info:$R[366]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info"},feedback_info:null,content:$R[367]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info":$R[368]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[369]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info:details":$R[370]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[371]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[372]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info:details:conversation_details":$R[373]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info:details:timelines_details":$R[374]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:content":$R[375]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012722351899906048:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[376]={__ref:"TweetResults:1012722351899906048"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012722351899906048":$R[377]={__id:"TweetResults:1012722351899906048",__typename:"TweetResults",result:$R[378]={__ref:"VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MjIzNTE4OTk5MDYwNDg=",rest_id:"1012722351899906048"},"VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==":$R[379]={__id:"VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==",__typename:"Tweet",rest_id:"1012722351899906048",core:$R[380]={__ref:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:core"},legacy:$R[381]={__ref:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:legacy"},counts:$R[382]={__ref:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:counts"},views:$R[383]={__ref:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:views"},details:$R[384]={__ref:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:details"},mention_entities:$R[385]={__refs:$R[386]=[]},reply_to_results:$R[387]={__ref:"TweetResults:1012722055635234817"},reply_to_user_results:$R[388]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[389]={__refs:$R[390]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[391]={__refs:$R[392]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[393]={__refs:$R[394]=[]},note_tweet:null,grok_translated_post_with_availability:$R[395]={__ref:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[396]={__ref:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA=="},"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:core":$R[397]={__id:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:core",__typename:"TweetCore",user_results:$R[398]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:legacy":$R[399]={__id:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:counts":$R[400]={__id:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:counts",__typename:"ApiCounts",bookmark_count:0,favorite_count:69,reply_count:5,retweet_count:6},"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:views":$R[401]={__id:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:details":$R[402]={__id:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[403]=[0,201],self_thread_metadata:null,full_text:"No! This doesn't work other, because FLOATING POINT IS LIES. The distribution between 0.0 and 1.0 is not evenly spread and there's all sorts of rounding fuzziness that will make r non-uniform. No good.",hashtag_entities:$R[404]={__refs:$R[405]=[]},timestamp_entities:$R[406]={__refs:$R[407]=[]},cashtag_entities:$R[408]={__refs:$R[409]=[]},smarttags:$R[410]={__refs:$R[411]=[]},created_at_ms:1530286798000},"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:grok_translated_post_with_availability":$R[412]={__id:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:place":$R[413]={__id:"client:VHdlZXQ6MTAxMjcyMjM1MTg5OTkwNjA0OA==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928":$R[414]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012723185173884928",item:$R[415]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item":$R[416]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item",__typename:"TimelineTimelineItem",client_event_info:$R[417]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info"},feedback_info:null,content:$R[418]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info":$R[419]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[420]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info:details":$R[421]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[422]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[423]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info:details:conversation_details":$R[424]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info:details:timelines_details":$R[425]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:content":$R[426]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723185173884928:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[427]={__ref:"TweetResults:1012723185173884928"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012723185173884928":$R[428]={__id:"TweetResults:1012723185173884928",__typename:"TweetResults",result:$R[429]={__ref:"VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MjMxODUxNzM4ODQ5Mjg=",rest_id:"1012723185173884928"},"VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==":$R[430]={__id:"VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==",__typename:"Tweet",rest_id:"1012723185173884928",core:$R[431]={__ref:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:core"},legacy:$R[432]={__ref:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:legacy"},counts:$R[433]={__ref:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:counts"},views:$R[434]={__ref:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:views"},details:$R[435]={__ref:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:details"},mention_entities:$R[436]={__refs:$R[437]=[]},reply_to_results:$R[438]={__ref:"TweetResults:1012722351899906048"},reply_to_user_results:$R[439]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[440]={__refs:$R[441]=[]},quoted_tweet_results:null,card:$R[442]={__ref:"Q2FyZDpodHRwczovL3QuY28vS2FwN2phcEhDUA=="},jetfuel_attachment:null,article:null,cashtag_attachments:$R[443]={__refs:$R[444]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[445]={__refs:$R[446]=["client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:url_entities:0"]},note_tweet:null,grok_translated_post_with_availability:$R[447]={__ref:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[448]={__ref:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA=="},"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:core":$R[449]={__id:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:core",__typename:"TweetCore",user_results:$R[450]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:legacy":$R[451]={__id:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:!1,lang:"en"},"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:counts":$R[452]={__id:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:counts",__typename:"ApiCounts",bookmark_count:5,favorite_count:128,reply_count:1,retweet_count:20},"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:views":$R[453]={__id:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:details":$R[454]={__id:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[455]=[0,275],self_thread_metadata:null,full_text:"The solution here is pretty interesting and totally non-intuitive. What you have to do is to compute the highest multiple of n that is smaller than RAND_MAX. Then you call rand() and if you get a number that's higher, you discard it and go again. E.g. https://t.co/Kap7japHCP",hashtag_entities:$R[456]={__refs:$R[457]=[]},timestamp_entities:$R[458]={__refs:$R[459]=[]},cashtag_entities:$R[460]={__refs:$R[461]=[]},smarttags:$R[462]={__refs:$R[463]=[]},created_at_ms:1530286997000},"Q2FyZDpodHRwczovL3QuY28vS2FwN2phcEhDUA==":$R[464]={__id:"Q2FyZDpodHRwczovL3QuY28vS2FwN2phcEhDUA==",__typename:"Card",legacy:null,id:"Q2FyZDpodHRwczovL3QuY28vS2FwN2phcEhDUA=="},"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:url_entities:0":$R[465]={__id:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:url_entities:0",__typename:"UrlsEntity",display_url:"github.com/awslabs/s2n/bl…",expanded_url:"https://github.com/awslabs/s2n/blob/643976c1c03c7f4a3003d7e066f18536c410c2b4/utils/s2n_random.c#L166",indices:$R[466]=[252,275],url:"https://t.co/Kap7japHCP"},"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:grok_translated_post_with_availability":$R[467]={__id:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:place":$R[468]={__id:"client:VHdlZXQ6MTAxMjcyMzE4NTE3Mzg4NDkyOA==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320":$R[469]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012723779708088320",item:$R[470]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item":$R[471]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item",__typename:"TimelineTimelineItem",client_event_info:$R[472]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info"},feedback_info:null,content:$R[473]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info":$R[474]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[475]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info:details":$R[476]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[477]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[478]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info:details:conversation_details":$R[479]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info:details:timelines_details":$R[480]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:content":$R[481]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012723779708088320:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[482]={__ref:"TweetResults:1012723779708088320"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012723779708088320":$R[483]={__id:"TweetResults:1012723779708088320",__typename:"TweetResults",result:$R[484]={__ref:"VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MjM3Nzk3MDgwODgzMjA=",rest_id:"1012723779708088320"},"VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==":$R[485]={__id:"VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==",__typename:"Tweet",rest_id:"1012723779708088320",core:$R[486]={__ref:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:core"},legacy:$R[487]={__ref:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:legacy"},counts:$R[488]={__ref:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:counts"},views:$R[489]={__ref:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:views"},details:$R[490]={__ref:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:details"},mention_entities:$R[491]={__refs:$R[492]=[]},reply_to_results:$R[493]={__ref:"TweetResults:1012723185173884928"},reply_to_user_results:$R[494]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[495]={__refs:$R[496]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[497]={__refs:$R[498]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[499]={__refs:$R[500]=[]},note_tweet:null,grok_translated_post_with_availability:$R[501]={__ref:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[502]={__ref:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA=="},"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:core":$R[503]={__id:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:core",__typename:"TweetCore",user_results:$R[504]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:legacy":$R[505]={__id:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:counts":$R[506]={__id:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:counts",__typename:"ApiCounts",bookmark_count:5,favorite_count:106,reply_count:4,retweet_count:9},"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:views":$R[507]={__id:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:details":$R[508]={__id:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[509]=[0,163],self_thread_metadata:null,full_text:"int random(int max) {\n while(1) {\n int r = rand():\n\n if (r &lt; (RAND_MAX - (RAND_MAX % max))) {\n return r % max;\n }\n }\n}",hashtag_entities:$R[510]={__refs:$R[511]=[]},timestamp_entities:$R[512]={__refs:$R[513]=[]},cashtag_entities:$R[514]={__refs:$R[515]=[]},smarttags:$R[516]={__refs:$R[517]=[]},created_at_ms:1530287139000},"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:grok_translated_post_with_availability":$R[518]={__id:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:place":$R[519]={__id:"client:VHdlZXQ6MTAxMjcyMzc3OTcwODA4ODMyMA==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680":$R[520]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012724219657031680",item:$R[521]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item":$R[522]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item",__typename:"TimelineTimelineItem",client_event_info:$R[523]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info"},feedback_info:null,content:$R[524]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info":$R[525]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[526]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info:details":$R[527]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[528]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[529]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info:details:conversation_details":$R[530]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info:details:timelines_details":$R[531]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:content":$R[532]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724219657031680:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[533]={__ref:"TweetResults:1012724219657031680"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012724219657031680":$R[534]={__id:"TweetResults:1012724219657031680",__typename:"TweetResults",result:$R[535]={__ref:"VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MjQyMTk2NTcwMzE2ODA=",rest_id:"1012724219657031680"},"VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==":$R[536]={__id:"VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==",__typename:"Tweet",rest_id:"1012724219657031680",core:$R[537]={__ref:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:core"},legacy:$R[538]={__ref:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:legacy"},counts:$R[539]={__ref:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:counts"},views:$R[540]={__ref:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:views"},details:$R[541]={__ref:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:details"},mention_entities:$R[542]={__refs:$R[543]=[]},reply_to_results:$R[544]={__ref:"TweetResults:1012723779708088320"},reply_to_user_results:$R[545]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[546]={__refs:$R[547]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[548]={__refs:$R[549]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[550]={__refs:$R[551]=[]},note_tweet:null,grok_translated_post_with_availability:$R[552]={__ref:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[553]={__ref:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA=="},"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:core":$R[554]={__id:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:core",__typename:"TweetCore",user_results:$R[555]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:legacy":$R[556]={__id:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:counts":$R[557]={__id:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:counts",__typename:"ApiCounts",bookmark_count:1,favorite_count:37,reply_count:4,retweet_count:1},"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:views":$R[558]={__id:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:details":$R[559]={__id:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[560]=[0,270],self_thread_metadata:null,full_text:"O.k, so there's some probability that this program might never finish! HALTING PROBLEM, etc, etc. The probability is worst when max == (RAND_MAX / 2) + 1. But even then it's a very rapidly diminishing binomial distribution ... so we just shrug our shoulders. It's fine.",hashtag_entities:$R[561]={__refs:$R[562]=[]},timestamp_entities:$R[563]={__refs:$R[564]=[]},cashtag_entities:$R[565]={__refs:$R[566]=[]},smarttags:$R[567]={__refs:$R[568]=[]},created_at_ms:1530287244000},"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:grok_translated_post_with_availability":$R[569]={__id:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:place":$R[570]={__id:"client:VHdlZXQ6MTAxMjcyNDIxOTY1NzAzMTY4MA==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716":$R[571]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012724736655347716",item:$R[572]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item":$R[573]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item",__typename:"TimelineTimelineItem",client_event_info:$R[574]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info"},feedback_info:null,content:$R[575]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info":$R[576]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[577]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info:details":$R[578]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[579]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[580]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info:details:conversation_details":$R[581]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info:details:timelines_details":$R[582]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:content":$R[583]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012724736655347716:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[584]={__ref:"TweetResults:1012724736655347716"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012724736655347716":$R[585]={__id:"TweetResults:1012724736655347716",__typename:"TweetResults",result:$R[586]={__ref:"VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MjQ3MzY2NTUzNDc3MTY=",rest_id:"1012724736655347716"},"VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==":$R[587]={__id:"VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==",__typename:"Tweet",rest_id:"1012724736655347716",core:$R[588]={__ref:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:core"},legacy:$R[589]={__ref:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:legacy"},counts:$R[590]={__ref:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:counts"},views:$R[591]={__ref:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:views"},details:$R[592]={__ref:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:details"},mention_entities:$R[593]={__refs:$R[594]=[]},reply_to_results:$R[595]={__ref:"TweetResults:1012724219657031680"},reply_to_user_results:$R[596]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[597]={__refs:$R[598]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[599]={__refs:$R[600]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[601]={__refs:$R[602]=[]},note_tweet:null,grok_translated_post_with_availability:$R[603]={__ref:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[604]={__ref:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg=="},"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:core":$R[605]={__id:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:core",__typename:"TweetCore",user_results:$R[606]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:legacy":$R[607]={__id:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:counts":$R[608]={__id:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:counts",__typename:"ApiCounts",bookmark_count:0,favorite_count:45,reply_count:2,retweet_count:3},"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:views":$R[609]={__id:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:details":$R[610]={__id:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[611]=[0,226],self_thread_metadata:null,full_text:"This is why you should use those APIs that ask for the max, that's why they exist, and this is what's going on under the hood. But if you have to do it yourself. This is how. O.k. next, what if we need to random selection ...",hashtag_entities:$R[612]={__refs:$R[613]=[]},timestamp_entities:$R[614]={__refs:$R[615]=[]},cashtag_entities:$R[616]={__refs:$R[617]=[]},smarttags:$R[618]={__refs:$R[619]=[]},created_at_ms:1530287367000},"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:grok_translated_post_with_availability":$R[620]={__id:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:place":$R[621]={__id:"client:VHdlZXQ6MTAxMjcyNDczNjY1NTM0NzcxNg==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402":$R[622]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012727472943718402",item:$R[623]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item":$R[624]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item",__typename:"TimelineTimelineItem",client_event_info:$R[625]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info"},feedback_info:null,content:$R[626]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info":$R[627]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[628]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info:details":$R[629]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[630]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[631]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info:details:conversation_details":$R[632]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info:details:timelines_details":$R[633]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:content":$R[634]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012727472943718402:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[635]={__ref:"TweetResults:1012727472943718402"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012727472943718402":$R[636]={__id:"TweetResults:1012727472943718402",__typename:"TweetResults",result:$R[637]={__ref:"VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3Mjc0NzI5NDM3MTg0MDI=",rest_id:"1012727472943718402"},"VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==":$R[638]={__id:"VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==",__typename:"Tweet",rest_id:"1012727472943718402",core:$R[639]={__ref:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:core"},legacy:$R[640]={__ref:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:legacy"},counts:$R[641]={__ref:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:counts"},views:$R[642]={__ref:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:views"},details:$R[643]={__ref:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:details"},mention_entities:$R[644]={__refs:$R[645]=[]},reply_to_results:$R[646]={__ref:"TweetResults:1012726272064131073"},reply_to_user_results:$R[647]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[648]={__refs:$R[649]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[650]={__refs:$R[651]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[652]={__refs:$R[653]=[]},note_tweet:null,grok_translated_post_with_availability:$R[654]={__ref:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[655]={__ref:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg=="},"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:core":$R[656]={__id:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:core",__typename:"TweetCore",user_results:$R[657]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:legacy":$R[658]={__id:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:counts":$R[659]={__id:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:counts",__typename:"ApiCounts",bookmark_count:8,favorite_count:117,reply_count:5,retweet_count:7},"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:views":$R[660]={__id:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:details":$R[661]={__id:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[662]=[0,254],self_thread_metadata:null,full_text:"jumble = [ A , B , C, D, E, F ] \nfor (i = 0; i &lt; jumble.length; i++) {\n int r = rand(i)\n save = jumble[i]\n jumble[i] = jumble[r]\n jumble[r] = save\n\nIt's O(N) and it works every time. Super easy to remember if you code it a few times.",hashtag_entities:$R[663]={__refs:$R[664]=[]},timestamp_entities:$R[665]={__refs:$R[666]=[]},cashtag_entities:$R[667]={__refs:$R[668]=[]},smarttags:$R[669]={__refs:$R[670]=[]},created_at_ms:1530288019000},"TweetResults:1012726272064131073":$R[671]={__id:"TweetResults:1012726272064131073",__typename:"TweetResults",id:"VHdlZXRSZXN1bHRzOjEwMTI3MjYyNzIwNjQxMzEwNzM=",rest_id:"1012726272064131073"},"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:grok_translated_post_with_availability":$R[672]={__id:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:place":$R[673]={__id:"client:VHdlZXQ6MTAxMjcyNzQ3Mjk0MzcxODQwMg==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445":$R[674]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012728394730045445",item:$R[675]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item":$R[676]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item",__typename:"TimelineTimelineItem",client_event_info:$R[677]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info"},feedback_info:null,content:$R[678]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info":$R[679]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[680]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info:details":$R[681]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[682]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[683]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info:details:conversation_details":$R[684]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info:details:timelines_details":$R[685]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:content":$R[686]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012728394730045445:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[687]={__ref:"TweetResults:1012728394730045445"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012728394730045445":$R[688]={__id:"TweetResults:1012728394730045445",__typename:"TweetResults",result:$R[689]={__ref:"VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MjgzOTQ3MzAwNDU0NDU=",rest_id:"1012728394730045445"},"VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==":$R[690]={__id:"VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==",__typename:"Tweet",rest_id:"1012728394730045445",core:$R[691]={__ref:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:core"},legacy:$R[692]={__ref:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:legacy"},counts:$R[693]={__ref:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:counts"},views:$R[694]={__ref:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:views"},details:$R[695]={__ref:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:details"},mention_entities:$R[696]={__refs:$R[697]=[]},reply_to_results:$R[698]={__ref:"TweetResults:1012728095105847297"},reply_to_user_results:$R[699]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[700]={__refs:$R[701]=[]},quoted_tweet_results:null,card:$R[702]={__ref:"Q2FyZDpodHRwczovL3QuY28vVE4zV2Y0TDBYTw=="},jetfuel_attachment:null,article:null,cashtag_attachments:$R[703]={__refs:$R[704]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[705]={__refs:$R[706]=["client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:url_entities:0"]},note_tweet:null,grok_translated_post_with_availability:$R[707]={__ref:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[708]={__ref:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ=="},"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:core":$R[709]={__id:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:core",__typename:"TweetCore",user_results:$R[710]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:legacy":$R[711]={__id:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:!1,lang:"en"},"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:counts":$R[712]={__id:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:counts",__typename:"ApiCounts",bookmark_count:14,favorite_count:144,reply_count:2,retweet_count:11},"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:views":$R[713]={__id:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:details":$R[714]={__id:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[715]=[0,268],self_thread_metadata:null,full_text:"Sadly, this one is too long for a tweet until next year when twitter decides that we need more space to offend one another, so for now, bookmark this page https://t.co/TN3Wf4L0XO , or print it out and frame it in case the Internet ever dies. It's one of the best bits.",hashtag_entities:$R[716]={__refs:$R[717]=[]},timestamp_entities:$R[718]={__refs:$R[719]=[]},cashtag_entities:$R[720]={__refs:$R[721]=[]},smarttags:$R[722]={__refs:$R[723]=[]},created_at_ms:1530288239000},"TweetResults:1012728095105847297":$R[724]={__id:"TweetResults:1012728095105847297",__typename:"TweetResults",id:"VHdlZXRSZXN1bHRzOjEwMTI3MjgwOTUxMDU4NDcyOTc=",rest_id:"1012728095105847297"},"Q2FyZDpodHRwczovL3QuY28vVE4zV2Y0TDBYTw==":$R[725]={__id:"Q2FyZDpodHRwczovL3QuY28vVE4zV2Y0TDBYTw==",__typename:"Card",legacy:null,id:"Q2FyZDpodHRwczovL3QuY28vVE4zV2Y0TDBYTw=="},"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:url_entities:0":$R[726]={__id:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:url_entities:0",__typename:"UrlsEntity",display_url:"keithschwarz.com/darts-dice-coi…",expanded_url:"http://www.keithschwarz.com/darts-dice-coins/",indices:$R[727]=[155,178],url:"https://t.co/TN3Wf4L0XO"},"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:grok_translated_post_with_availability":$R[728]={__id:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:place":$R[729]={__id:"client:VHdlZXQ6MTAxMjcyODM5NDczMDA0NTQ0NQ==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951":$R[730]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012729975299026951",item:$R[731]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item":$R[732]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item",__typename:"TimelineTimelineItem",client_event_info:$R[733]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info"},feedback_info:null,content:$R[734]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info":$R[735]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[736]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info:details":$R[737]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[738]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[739]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info:details:conversation_details":$R[740]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info:details:timelines_details":$R[741]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:content":$R[742]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012729975299026951:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[743]={__ref:"TweetResults:1012729975299026951"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012729975299026951":$R[744]={__id:"TweetResults:1012729975299026951",__typename:"TweetResults",result:$R[745]={__ref:"VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3Mjk5NzUyOTkwMjY5NTE=",rest_id:"1012729975299026951"},"VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==":$R[746]={__id:"VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==",__typename:"Tweet",rest_id:"1012729975299026951",core:$R[747]={__ref:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:core"},legacy:$R[748]={__ref:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:legacy"},counts:$R[749]={__ref:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:counts"},views:$R[750]={__ref:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:views"},details:$R[751]={__ref:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:details"},mention_entities:$R[752]={__refs:$R[753]=[]},reply_to_results:$R[754]={__ref:"TweetResults:1012728898839248897"},reply_to_user_results:$R[755]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[756]={__refs:$R[757]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[758]={__refs:$R[759]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[760]={__refs:$R[761]=[]},note_tweet:null,grok_translated_post_with_availability:$R[762]={__ref:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[763]={__ref:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ=="},"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:core":$R[764]={__id:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:core",__typename:"TweetCore",user_results:$R[765]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:legacy":$R[766]={__id:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:counts":$R[767]={__id:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:counts",__typename:"ApiCounts",bookmark_count:0,favorite_count:18,reply_count:1,retweet_count:1},"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:views":$R[768]={__id:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:details":$R[769]={__id:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[770]=[0,247],self_thread_metadata:null,full_text:"A normal distribution is a super common statistical distribution, it describes the distribution of lots of phenomena and the central limit theorem says that basically any distribution is secretly just one step removed from the normal distribution.",hashtag_entities:$R[771]={__refs:$R[772]=[]},timestamp_entities:$R[773]={__refs:$R[774]=[]},cashtag_entities:$R[775]={__refs:$R[776]=[]},smarttags:$R[777]={__refs:$R[778]=[]},created_at_ms:1530288616000},"TweetResults:1012728898839248897":$R[779]={__id:"TweetResults:1012728898839248897",__typename:"TweetResults",id:"VHdlZXRSZXN1bHRzOjEwMTI3Mjg4OTg4MzkyNDg4OTc=",rest_id:"1012728898839248897"},"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:grok_translated_post_with_availability":$R[780]={__id:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:place":$R[781]={__id:"client:VHdlZXQ6MTAxMjcyOTk3NTI5OTAyNjk1MQ==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304":$R[782]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012734216596066304",item:$R[783]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item":$R[784]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item",__typename:"TimelineTimelineItem",client_event_info:$R[785]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info"},feedback_info:null,content:$R[786]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info":$R[787]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[788]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info:details":$R[789]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[790]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[791]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info:details:conversation_details":$R[792]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info:details:timelines_details":$R[793]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:content":$R[794]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012734216596066304:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[795]={__ref:"TweetResults:1012734216596066304"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012734216596066304":$R[796]={__id:"TweetResults:1012734216596066304",__typename:"TweetResults",result:$R[797]={__ref:"VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MzQyMTY1OTYwNjYzMDQ=",rest_id:"1012734216596066304"},"VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==":$R[798]={__id:"VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==",__typename:"Tweet",rest_id:"1012734216596066304",core:$R[799]={__ref:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:core"},legacy:$R[800]={__ref:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:legacy"},counts:$R[801]={__ref:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:counts"},views:$R[802]={__ref:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:views"},details:$R[803]={__ref:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:details"},mention_entities:$R[804]={__refs:$R[805]=[]},reply_to_results:$R[806]={__ref:"TweetResults:1012733797098512384"},reply_to_user_results:$R[807]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[808]={__refs:$R[809]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[810]={__refs:$R[811]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[812]={__refs:$R[813]=[]},note_tweet:null,grok_translated_post_with_availability:$R[814]={__ref:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[815]={__ref:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA=="},"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:core":$R[816]={__id:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:core",__typename:"TweetCore",user_results:$R[817]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:legacy":$R[818]={__id:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:counts":$R[819]={__id:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:counts",__typename:"ApiCounts",bookmark_count:0,favorite_count:20,reply_count:4,retweet_count:0},"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:views":$R[820]={__id:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:details":$R[821]={__id:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[822]=[0,208],self_thread_metadata:null,full_text:"Second: if you find yourself building a whole RNG, it's really very hard, again, get deep in the weeds and learn about DRBGs, fork-safety, thread-safety, /dev/urandom, getrandom() and so on. Avoid if you can!",hashtag_entities:$R[823]={__refs:$R[824]=[]},timestamp_entities:$R[825]={__refs:$R[826]=[]},cashtag_entities:$R[827]={__refs:$R[828]=[]},smarttags:$R[829]={__refs:$R[830]=[]},created_at_ms:1530289627000},"TweetResults:1012733797098512384":$R[831]={__id:"TweetResults:1012733797098512384",__typename:"TweetResults",id:"VHdlZXRSZXN1bHRzOjEwMTI3MzM3OTcwOTg1MTIzODQ=",rest_id:"1012733797098512384"},"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:grok_translated_post_with_availability":$R[832]={__id:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:place":$R[833]={__id:"client:VHdlZXQ6MTAxMjczNDIxNjU5NjA2NjMwNA==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209":$R[834]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012735054366302209",item:$R[835]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item":$R[836]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item",__typename:"TimelineTimelineItem",client_event_info:$R[837]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info"},feedback_info:null,content:$R[838]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info":$R[839]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[840]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info:details":$R[841]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[842]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[843]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info:details:conversation_details":$R[844]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info:details:timelines_details":$R[845]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:content":$R[846]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735054366302209:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[847]={__ref:"TweetResults:1012735054366302209"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012735054366302209":$R[848]={__id:"TweetResults:1012735054366302209",__typename:"TweetResults",result:$R[849]={__ref:"VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MzUwNTQzNjYzMDIyMDk=",rest_id:"1012735054366302209"},"VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==":$R[850]={__id:"VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==",__typename:"Tweet",rest_id:"1012735054366302209",core:$R[851]={__ref:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:core"},legacy:$R[852]={__ref:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:legacy"},counts:$R[853]={__ref:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:counts"},views:$R[854]={__ref:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:views"},details:$R[855]={__ref:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:details"},mention_entities:$R[856]={__refs:$R[857]=[]},reply_to_results:$R[858]={__ref:"TweetResults:1012734216596066304"},reply_to_user_results:$R[859]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[860]={__refs:$R[861]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[862]={__refs:$R[863]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[864]={__refs:$R[865]=[]},note_tweet:null,grok_translated_post_with_availability:$R[866]={__ref:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[867]={__ref:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ=="},"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:core":$R[868]={__id:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:core",__typename:"TweetCore",user_results:$R[869]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:legacy":$R[870]={__id:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:counts":$R[871]={__id:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:counts",__typename:"ApiCounts",bookmark_count:0,favorite_count:37,reply_count:4,retweet_count:1},"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:views":$R[872]={__id:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:details":$R[873]={__id:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[874]=[0,270],self_thread_metadata:null,full_text:"Third: always use a secure RNG, your language or programming environment should have one. *Don't* ever seed an RNG yourself. One exception: for fuzz inputs and other tests, where you may want repeat deterministically for debugging. But DON'T LET IT LEAK INTO PRODUCTION.",hashtag_entities:$R[875]={__refs:$R[876]=[]},timestamp_entities:$R[877]={__refs:$R[878]=[]},cashtag_entities:$R[879]={__refs:$R[880]=[]},smarttags:$R[881]={__refs:$R[882]=[]},created_at_ms:1530289827000},"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:grok_translated_post_with_availability":$R[883]={__id:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:place":$R[884]={__id:"client:VHdlZXQ6MTAxMjczNTA1NDM2NjMwMjIwOQ==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328":$R[885]={__id:"urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012735873627107328",item:$R[886]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item":$R[887]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item",__typename:"TimelineTimelineItem",client_event_info:$R[888]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info"},feedback_info:null,content:$R[889]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info":$R[890]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[891]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info:details":$R[892]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[893]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[894]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info:details:conversation_details":$R[895]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info:details:timelines_details":$R[896]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:content":$R[897]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012720273014042624-tweet-1012735873627107328:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[898]={__ref:"TweetResults:1012735873627107328"},display_type:"SelfThread",social_context:null,has_moderated_replies:null},"TweetResults:1012735873627107328":$R[899]={__id:"TweetResults:1012735873627107328",__typename:"TweetResults",result:$R[900]={__ref:"VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA=="},id:"VHdlZXRSZXN1bHRzOjEwMTI3MzU4NzM2MjcxMDczMjg=",rest_id:"1012735873627107328"},"VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==":$R[901]={__id:"VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==",__typename:"Tweet",rest_id:"1012735873627107328",core:$R[902]={__ref:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:core"},legacy:$R[903]={__ref:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:legacy"},counts:$R[904]={__ref:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:counts"},views:$R[905]={__ref:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:views"},details:$R[906]={__ref:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:details"},mention_entities:$R[907]={__refs:$R[908]=[]},reply_to_results:$R[909]={__ref:"TweetResults:1012735327688122369"},reply_to_user_results:$R[910]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[911]={__refs:$R[912]=[]},quoted_tweet_results:null,card:null,jetfuel_attachment:null,article:null,cashtag_attachments:$R[913]={__refs:$R[914]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[915]={__refs:$R[916]=[]},note_tweet:null,grok_translated_post_with_availability:$R[917]={__ref:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[918]={__ref:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA=="},"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:core":$R[919]={__id:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:core",__typename:"TweetCore",user_results:$R[920]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="}},"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:legacy":$R[921]={__id:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:null,lang:"en"},"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:counts":$R[922]={__id:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:counts",__typename:"ApiCounts",bookmark_count:1,favorite_count:98,reply_count:5,retweet_count:6},"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:views":$R[923]={__id:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:details":$R[924]={__id:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[925]=[0,147],self_thread_metadata:null,full_text:"Last tip: always measure your little random functions with a histogram or whatever. I still code these wrong and have to check. Thanks for reading!",hashtag_entities:$R[926]={__refs:$R[927]=[]},timestamp_entities:$R[928]={__refs:$R[929]=[]},cashtag_entities:$R[930]={__refs:$R[931]=[]},smarttags:$R[932]={__refs:$R[933]=[]},created_at_ms:1530290022000},"TweetResults:1012735327688122369":$R[934]={__id:"TweetResults:1012735327688122369",__typename:"TweetResults",id:"VHdlZXRSZXN1bHRzOjEwMTI3MzUzMjc2ODgxMjIzNjk=",rest_id:"1012735327688122369"},"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:grok_translated_post_with_availability":$R[935]={__id:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:place":$R[936]={__id:"client:VHdlZXQ6MTAxMjczNTg3MzYyNzEwNzMyOA==:place",__typename:"ApiPlace",full_name:null,id:null},"urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449":$R[937]={__id:"urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449",__typename:"TimelineTimelineEntry",entry_id:"conversationthread-1012929221495144449",sort_index:"2098556129230454764",content:$R[938]={__ref:"client:urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449:content"}},"client:urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449:content":$R[939]={__id:"client:urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449:content",__typename:"TimelineTimelineModule",display_type:"VerticalConversation",metadata:$R[940]={__ref:"client:urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449:content:metadata"},items:$R[941]={__refs:$R[942]=["urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449"]},header:null,footer:null},"client:urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449:content:metadata":$R[943]={__id:"client:urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449:content:metadata",__typename:"TimelineModuleMetadata",conversation_metadata:$R[944]={__ref:"client:urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449:content:metadata:conversation_metadata"}},"client:urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449:content:metadata:conversation_metadata":$R[945]={__id:"client:urt:server:TimelineTimelineEntry:conversationthread-1012929221495144449:content:metadata:conversation_metadata",__typename:"TimelineModuleConversationMetadata",enable_deduplication:!0,all_tweet_ids:$R[946]=["1012929221495144449"]},"urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449":$R[947]={__id:"urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012929221495144449-tweet-1012929221495144449",item:$R[948]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item"}},"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item":$R[949]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item",__typename:"TimelineTimelineItem",client_event_info:$R[950]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info"},feedback_info:null,content:$R[951]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:content"}},"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info":$R[952]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info",__typename:"TimelineClientEventInfo",action:null,component:"tweet",element:"tweet",details:$R[953]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info:details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info:details":$R[954]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info:details",__typename:"TimelineClientEventDetails",ai_trend_details:null,conversation_details:$R[955]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info:details:conversation_details"},guide_details:null,notification_details:null,timelines_details:$R[956]={__ref:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info:details:timelines_details"}},"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info:details:conversation_details":$R[957]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info:details:conversation_details",__typename:"TimelineConversationDetails",conversation_section:"HighQuality"},"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info:details:timelines_details":$R[958]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:client_event_info:details:timelines_details",__typename:"TimelineTimelinesDetails",controller_data:"DAACDAAEDAABCgABAAAAAAAAAAEKAAIAAAAAAAAAAAoAAwAAAaCS07yLAAAAAA==",injection_type:null,source_data:null},"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:content":$R[959]={__id:"client:urt:server:TimelineModuleItem:conversationthread-1012929221495144449-tweet-1012929221495144449:item:content",__typename:"TimelineTweet",promoted_metadata:null,tweet_results:$R[960]={__ref:"TweetResults:1012929221495144449"},display_type:"Tweet",social_context:null,has_moderated_replies:null},"TweetResults:1012929221495144449":$R[961]={__id:"TweetResults:1012929221495144449",__typename:"TweetResults",result:$R[962]={__ref:"VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ=="},id:"VHdlZXRSZXN1bHRzOjEwMTI5MjkyMjE0OTUxNDQ0NDk=",rest_id:"1012929221495144449"},"VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==":$R[963]={__id:"VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==",__typename:"Tweet",rest_id:"1012929221495144449",core:$R[964]={__ref:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:core"},legacy:$R[965]={__ref:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:legacy"},counts:$R[966]={__ref:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:counts"},views:$R[967]={__ref:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:views"},details:$R[968]={__ref:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:details"},mention_entities:$R[969]={__refs:$R[970]=["client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:mention_entities:0"]},reply_to_results:$R[971]={__ref:"TweetResults:1012719876706840578"},reply_to_user_results:$R[972]={__ref:"VXNlclJlc3VsdHM6MTQzNDAxNTA="},media_entities2:$R[973]={__refs:$R[974]=[]},quoted_tweet_results:null,card:$R[975]={__ref:"Q2FyZDpodHRwczovL3QuY28vWlZQOEZwbldwQQ=="},jetfuel_attachment:null,article:null,cashtag_attachments:$R[976]={__refs:$R[977]=[]},birdwatch_pivot:null,content_disclosure:null,url_entities:$R[978]={__refs:$R[979]=["client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:url_entities:0","client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:url_entities:1","client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:url_entities:2"]},note_tweet:null,grok_translated_post_with_availability:$R[980]={__ref:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:grok_translated_post_with_availability"},exclusive_tweet_info:null,reaction_context:null,place:$R[981]={__ref:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:place"},super_follows_conversation_user_results:null,id:"VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ=="},"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:core":$R[982]={__id:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:core",__typename:"TweetCore",user_results:$R[983]={__ref:"VXNlclJlc3VsdHM6ODU4MjcwOTA="}},"VXNlclJlc3VsdHM6ODU4MjcwOTA=":$R[984]={__id:"VXNlclJlc3VsdHM6ODU4MjcwOTA=",__typename:"UserResults",result:$R[985]={__ref:"VXNlcjo4NTgyNzA5MA=="},id:"VXNlclJlc3VsdHM6ODU4MjcwOTA="},"VXNlcjo4NTgyNzA5MA==":$R[986]={__id:"VXNlcjo4NTgyNzA5MA==",__typename:"User",core:$R[987]={__ref:"client:VXNlcjo4NTgyNzA5MA==:core"},rest_id:"85827090",avatar:$R[988]={__ref:"client:VXNlcjo4NTgyNzA5MA==:avatar"},relationship_counts:$R[989]={__ref:"client:VXNlcjo4NTgyNzA5MA==:relationship_counts"},tweet_counts:$R[990]={__ref:"client:VXNlcjo4NTgyNzA5MA==:tweet_counts"},privacy:$R[991]={__ref:"client:VXNlcjo4NTgyNzA5MA==:privacy"},profile_image_shape:"Circle",identity_profile_labels_highlighted_label:$R[992]={__ref:"client:VXNlcjo4NTgyNzA5MA==:identity_profile_labels_highlighted_label"},verification:$R[993]={__ref:"client:VXNlcjo4NTgyNzA5MA==:verification"},id:"VXNlcjo4NTgyNzA5MA=="},"client:VXNlcjo4NTgyNzA5MA==:core":$R[994]={__id:"client:VXNlcjo4NTgyNzA5MA==:core",__typename:"UserCore",screen_name:"shafikyaghmour",name:"@shafik@hachyderm.io"},"client:VXNlcjo4NTgyNzA5MA==:avatar":$R[995]={__id:"client:VXNlcjo4NTgyNzA5MA==:avatar",__typename:"UserAvatar",image_url:"https://pbs.twimg.com/profile_images/1200601050694082560/w4NubWzl_normal.jpg"},"client:VXNlcjo4NTgyNzA5MA==:relationship_counts":$R[996]={__id:"client:VXNlcjo4NTgyNzA5MA==:relationship_counts",__typename:"UserRelationshipCounts",followers:8422,following:865},"client:VXNlcjo4NTgyNzA5MA==:tweet_counts":$R[997]={__id:"client:VXNlcjo4NTgyNzA5MA==:tweet_counts",__typename:"UserTweetCounts",tweets:23609},"client:VXNlcjo4NTgyNzA5MA==:privacy":$R[998]={__id:"client:VXNlcjo4NTgyNzA5MA==:privacy",__typename:"UserPrivacy",protected:!1},"client:VXNlcjo4NTgyNzA5MA==:identity_profile_labels_highlighted_label":$R[999]={__id:"client:VXNlcjo4NTgyNzA5MA==:identity_profile_labels_highlighted_label",__typename:"HighlightedUserLabelResponse",label:null},"client:VXNlcjo4NTgyNzA5MA==:verification":$R[1000]={__id:"client:VXNlcjo4NTgyNzA5MA==:verification",__typename:"UserVerification",is_blue_verified:!1,verified_type:null},"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:legacy":$R[1001]={__id:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:legacy",__typename:"LegacyTweet",retweeted_status_results:null,possibly_sensitive:!1,lang:"en"},"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:counts":$R[1002]={__id:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:counts",__typename:"ApiCounts",bookmark_count:3,favorite_count:17,reply_count:1,retweet_count:3},"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:views":$R[1003]={__id:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:views",__typename:"ViewCountInfo",count:null},"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:details":$R[1004]={__id:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:details",__typename:"TBirdData",conversation_control:null,display_text_range:$R[1005]=[10,293],self_thread_metadata:null,full_text:"@colmmacc Nice epic thread on random number generation. I came here to point out \"rand() Considered Harmful\" talk which is an awesome take on this https://t.co/ZVP8FpnWpA and slides https://t.co/2OCqYfHi7g\n\nIn C++ we discourage the use of rand() and have &lt;random&gt; https://t.co/bOjnOd9hVr",hashtag_entities:$R[1006]={__refs:$R[1007]=[]},timestamp_entities:$R[1008]={__refs:$R[1009]=[]},cashtag_entities:$R[1010]={__refs:$R[1011]=[]},smarttags:$R[1012]={__refs:$R[1013]=[]},created_at_ms:1530336120000},"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:mention_entities:0":$R[1014]={__id:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:mention_entities:0",__typename:"ApiMentionEntity",id_str:"14340150",indices:$R[1015]=[0,9],is_unmentioned:null,screen_name:"colmmacc"},"Q2FyZDpodHRwczovL3QuY28vWlZQOEZwbldwQQ==":$R[1016]={__id:"Q2FyZDpodHRwczovL3QuY28vWlZQOEZwbldwQQ==",__typename:"Card",legacy:null,id:"Q2FyZDpodHRwczovL3QuY28vWlZQOEZwbldwQQ=="},"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:url_entities:0":$R[1017]={__id:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:url_entities:0",__typename:"UrlsEntity",display_url:"channel9.msdn.com/Events/GoingNa…",expanded_url:"https://channel9.msdn.com/Events/GoingNative/2013/rand-Considered-Harmful",indices:$R[1018]=[147,170],url:"https://t.co/ZVP8FpnWpA"},"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:url_entities:1":$R[1019]={__id:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:url_entities:1",__typename:"UrlsEntity",display_url:"view.officeapps.live.com/op/view.aspx?s…",expanded_url:"https://view.officeapps.live.com/op/view.aspx?src=http%3a%2f%2fvideo.ch9.ms%2fsessions%2fgonat%2f2013%2fSTLGN13rand.pptx",indices:$R[1020]=[182,205],url:"https://t.co/2OCqYfHi7g"},"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:url_entities:2":$R[1021]={__id:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:url_entities:2",__typename:"UrlsEntity",display_url:"stackoverflow.com/a/17798317/170…",expanded_url:"https://stackoverflow.com/a/17798317/1708801",indices:$R[1022]=[270,293],url:"https://t.co/bOjnOd9hVr"},"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:grok_translated_post_with_availability":$R[1023]={__id:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:grok_translated_post_with_availability",__typename:"ApiGrokTranslateResponse",is_available:!1,data:null},"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:place":$R[1024]={__id:"client:VHdlZXQ6MTAxMjkyOTIyMTQ5NTE0NDQ0OQ==:place",__typename:"ApiPlace",full_name:null,id:null},"client:LoggedOutRepliesProduct-Timeline:instructions:2":$R[1025]={__id:"client:LoggedOutRepliesProduct-Timeline:instructions:2",__typename:"TimelineTerminateTimeline",direction:"Top"},"client:LoggedOutRepliesProduct-Timeline:instructions:3":$R[1026]={__id:"client:LoggedOutRepliesProduct-Timeline:instructions:3",__typename:"TimelineTerminateTimeline",direction:"Bottom"},"client:VXNlcjoxNDM0MDE1MA==:profile_bio":$R[1027]={__id:"client:VXNlcjoxNDM0MDE1MA==:profile_bio",__typename:"UserBio",description:"VP / Distinguished Engineer at Amazon Web Services. Also: Open Source and Apache, Cryptography, Irish Music, mediocre Photography."},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\")":$R[1028]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\")",__typename:"TimelineTimeline",id:"LoggedOutRepliesProduct-Timeline",response_objects:null,instructions:$R[1029]={__refs:$R[1030]=["client:LoggedOutRepliesProduct-Timeline:instructions:0","client:LoggedOutRepliesProduct-Timeline:instructions:1","client:LoggedOutRepliesProduct-Timeline:instructions:2","client:LoggedOutRepliesProduct-Timeline:instructions:3"]},entries:$R[1031]={__refs:$R[1032]=["client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):entries:tweet-1012719876706840578","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):entries:conversationthread-1012720273014042624","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):entries:conversationthread-1012929221495144449"]},held_entries:$R[1033]={__refs:$R[1034]=[]},top_cursor:null,bottom_cursor:null,pinned_entry_ids:$R[1035]=[],unread_entry_ids:$R[1036]=[],unread_entries_sort_index:null,is_terminated_at_bottom:!0,is_terminated_at_top:!0,last_top_fetch_timestamp_ms:1789169745374,last_revealed_timestamp_ms:null},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):entries:tweet-1012719876706840578":$R[1037]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):entries:tweet-1012719876706840578",__typename:"TimelineTimelineEntry",entry_id:"tweet-1012719876706840578",sort_index:"2098556129230454784",content:$R[87],is_unread:!1,conversation_position:null},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):entries:conversationthread-1012720273014042624":$R[1038]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):entries:conversationthread-1012720273014042624",__typename:"TimelineTimelineEntry",entry_id:"conversationthread-1012720273014042624",sort_index:"2098556129230454774",content:$R[1039]={__ref:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module:conversationthread-1012720273014042624"},is_unread:!1,conversation_position:null},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module:conversationthread-1012720273014042624":$R[1040]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module:conversationthread-1012720273014042624",__typename:"TimelineTimelineModule",display_type:"VerticalConversation",metadata:$R[152],items:$R[1041]={__refs:$R[1042]=["client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012720273014042624","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012721284092973056","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012721669155229696","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012722055635234817","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012722351899906048","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012723185173884928","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012723779708088320","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012724219657031680","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012724736655347716","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012727472943718402","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012728394730045445","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012729975299026951","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012734216596066304","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012735054366302209","client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012735873627107328"]},header:null,footer:null},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012720273014042624":$R[1043]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012720273014042624",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012720273014042624",item:$R[160]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012721284092973056":$R[1044]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012721284092973056",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012721284092973056",item:$R[211]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012721669155229696":$R[1045]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012721669155229696",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012721669155229696",item:$R[262]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012722055635234817":$R[1046]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012722055635234817",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012722055635234817",item:$R[313]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012722351899906048":$R[1047]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012722351899906048",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012722351899906048",item:$R[364]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012723185173884928":$R[1048]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012723185173884928",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012723185173884928",item:$R[415]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012723779708088320":$R[1049]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012723779708088320",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012723779708088320",item:$R[470]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012724219657031680":$R[1050]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012724219657031680",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012724219657031680",item:$R[521]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012724736655347716":$R[1051]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012724736655347716",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012724736655347716",item:$R[572]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012727472943718402":$R[1052]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012727472943718402",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012727472943718402",item:$R[623]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012728394730045445":$R[1053]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012728394730045445",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012728394730045445",item:$R[675]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012729975299026951":$R[1054]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012729975299026951",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012729975299026951",item:$R[731]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012734216596066304":$R[1055]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012734216596066304",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012734216596066304",item:$R[783]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012735054366302209":$R[1056]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012735054366302209",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012735054366302209",item:$R[835]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012735873627107328":$R[1057]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012720273014042624:conversationthread-1012720273014042624-tweet-1012735873627107328",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012720273014042624-tweet-1012735873627107328",item:$R[886]},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):entries:conversationthread-1012929221495144449":$R[1058]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):entries:conversationthread-1012929221495144449",__typename:"TimelineTimelineEntry",entry_id:"conversationthread-1012929221495144449",sort_index:"2098556129230454764",content:$R[1059]={__ref:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module:conversationthread-1012929221495144449"},is_unread:!1,conversation_position:null},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module:conversationthread-1012929221495144449":$R[1060]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module:conversationthread-1012929221495144449",__typename:"TimelineTimelineModule",display_type:"VerticalConversation",metadata:$R[940],items:$R[1061]={__refs:$R[1062]=["client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012929221495144449:conversationthread-1012929221495144449-tweet-1012929221495144449"]},header:null,footer:null},"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012929221495144449:conversationthread-1012929221495144449-tweet-1012929221495144449":$R[1063]={__id:"client:root:__threaded_conversation_with_injections_v2_urt(focal_tweet_id:\"1012719876706840578\"):module-item:conversationthread-1012929221495144449:conversationthread-1012929221495144449-tweet-1012929221495144449",__typename:"TimelineModuleItem",entry_id:"conversationthread-1012929221495144449-tweet-1012929221495144449",item:$R[948]}}}))($R["tsr"]);document.currentScript.remove()</script><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_6mj2epcpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">Have you ever needed to generate a random number in code? whether it&#x27;s for rolling a dice, or shuffling a set, this tweet thread is here for you! There&#x27;s no reason that it should be easy or obvious, very experienced programmers repeat common mistakes. I did, before I learned ...</span></div><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0"><span class="contents"><a id="_R_mepcpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit" href="/colmmacc/status/1012719876706840578">3:30 PM · Jun 29, 2018</a><script nonce="17DwueGR4+2VebZkygB4Rg==">!function(options){var element=document.getElementById(options.targetId);if(!element)return;var cached=document.querySelector('[data-timezone]');var timeZone=cached&&cached.dataset.timezone||Intl.DateTimeFormat().resolvedOptions().timeZone;element.dataset.timezone=timeZone;element.textContent=(function formatFullTimestamp({ timestamp, lang = "en", timeZone }) {
const date = new Date(timestamp);
let zone = timeZone;
if (zone) try {
new Intl.DateTimeFormat("en", { timeZone: zone }).format();
} catch {
zone = "UTC";
}
return `${new Intl.DateTimeFormat(lang, {
hour: "numeric",
minute: "2-digit",
timeZone: zone
}).format(date)} · ${new Intl.DateTimeFormat(lang, {
month: "short",
day: "numeric",
year: "numeric",
timeZone: zone
}).format(date)}`;
})({timestamp:options.timestamp,lang:options.lang,timeZone:timeZone})}({"lang":"en","targetId":"_R_mepcpip8j6_","timestamp":1530286208000});</script></span><span class="contents"></span></div></div><div class="border-border my-2 border-t"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012719876706840578"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-10 px-3 [&amp;&gt;svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">29</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_7mkupcpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-10 px-3 [&amp;&gt;svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">744</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_7mupcpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-10 px-3 [&amp;&gt;svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">2.3K</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class=""><div class="min-w-0 flex-1"><button id="base-ui-_R_uqupcpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-10 px-3 [&amp;&gt;svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">357</span></span></span></span></button></div></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_raupcpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-10 px-3 [&amp;&gt;svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></article></div></div></li><li><div class="flex flex-col"><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012720273014042624" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbcd9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012720273014042624">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bcd9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">O.k. let&#x27;s start with the most common problem, and the most common mistakes: how do we pick a random number between 0 and N inclusive, let&#x27;s say N = 5, so like a dice that starts at zero because we&#x27;re nerds.</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012720273014042624"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">1</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqncd9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">1</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvcd9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">47</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfcd9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfcd9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012721284092973056" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbcl9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012721284092973056">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bcl9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">A common solution is to r = rand() % (N + 1). Easy, right? Wrong! This solution is biased. To see how, imagine that RAND_MAX is &quot;15&quot;. 0 % 6 == 0, 6 % 6 == 0, and 12 % 6 == 0 , so there are three rand() values each that return 0. Same works for 1, 2, 3 ...</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012721284092973056"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">5</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqncl9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">5</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvcl9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">54</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfcl9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfcl9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012721669155229696" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbct9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012721669155229696">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bct9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">But there are only two rand() values that return 4: 4 % 6 and 10 % 6. Same for 5. So 0, 1, 2, 3 are all 50% more likely than 4 or 5. That&#x27;s bias! Of course with a big RAND_MAX, this bias diminishes, but it&#x27;s still there. So don&#x27;t do it this way.</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012721669155229696"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">1</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqnct9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">2</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvct9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">34</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfct9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfct9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012722055635234817" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbd59cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012722055635234817">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bd59cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">O.k. so what if we use a float to avoid this? It&#x27;s tempting! We can build a float between 0.0 and 1.0 by doing f = (float) rand() / (float) RAND_MAX. So we build a little macro or function for that, and now we can just do r = randFloat() * 5, right?</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012722055635234817"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">2</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqnd59cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">1</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvd59cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">17</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfd59cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfd59cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012722351899906048" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbdd9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012722351899906048">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bdd9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">No! This doesn&#x27;t work other, because FLOATING POINT IS LIES. The distribution between 0.0 and 1.0 is not evenly spread and there&#x27;s all sorts of rounding fuzziness that will make r non-uniform. No good.</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012722351899906048"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">5</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqndd9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">6</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvdd9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">69</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfdd9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfdd9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012723185173884928" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbdl9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012723185173884928">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bdl9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">The solution here is pretty interesting and totally non-intuitive. What you have to do is to compute the highest multiple of n that is smaller than RAND_MAX. Then you call rand() and if you get a number that&#x27;s higher, you discard it and go again. E.g. </span><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-brand text-[length:inherit] font-inherit hover:underline" href="https://github.com/awslabs/s2n/blob/643976c1c03c7f4a3003d7e066f18536c410c2b4/utils/s2n_random.c#L166" rel="noopener noreferrer" target="_blank">github.com/awslabs/s2n/bl…</a></div></div><div class="flex flex-col gap-3 empty:hidden"><div class="flex flex-col gap-1 empty:hidden"></div></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012723185173884928"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">1</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqndl9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">20</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvdl9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">128</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfdl9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfdl9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012723779708088320" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbdt9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012723779708088320">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bdt9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">int random(int max) {
while(1) {
int r = rand():
if (r &lt; (RAND_MAX - (RAND_MAX % max))) {
return r % max;
}
}
}</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012723779708088320"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">4</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqndt9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">9</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvdt9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">106</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfdt9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfdt9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012724219657031680" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbe59cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012724219657031680">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5be59cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">O.k, so there&#x27;s some probability that this program might never finish! HALTING PROBLEM, etc, etc. The probability is worst when max == (RAND_MAX / 2) + 1. But even then it&#x27;s a very rapidly diminishing binomial distribution ... so we just shrug our shoulders. It&#x27;s fine.</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012724219657031680"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">4</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqne59cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">1</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uve59cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">37</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfe59cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfe59cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012724736655347716" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbed9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012724736655347716">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bed9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">This is why you should use those APIs that ask for the max, that&#x27;s why they exist, and this is what&#x27;s going on under the hood. But if you have to do it yourself. This is how. O.k. next, what if we need to random selection ...</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012724736655347716"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">2</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqned9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">3</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uved9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">45</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfed9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfed9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012727472943718402" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbel9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012727472943718402">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bel9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">jumble = [ A , B , C, D, E, F ]
for (i = 0; i &lt; jumble.length; i++) {
int r = rand(i)
save = jumble[i]
jumble[i] = jumble[r]
jumble[r] = save
It&#x27;s O(N) and it works every time. Super easy to remember if you code it a few times.</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012727472943718402"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">5</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqnel9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">7</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvel9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">117</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfel9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfel9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012728394730045445" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbet9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012728394730045445">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bet9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">Sadly, this one is too long for a tweet until next year when twitter decides that we need more space to offend one another, so for now, bookmark this page </span><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-brand text-[length:inherit] font-inherit hover:underline" href="http://www.keithschwarz.com/darts-dice-coins/" rel="noopener noreferrer" target="_blank">keithschwarz.com/darts-dice-coi…</a><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit"> , or print it out and frame it in case the Internet ever dies. It&#x27;s one of the best bits.</span></div></div><div class="flex flex-col gap-3 empty:hidden"><div class="flex flex-col gap-1 empty:hidden"></div></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012728394730045445"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">2</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqnet9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">11</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvet9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">144</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfet9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfet9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012729975299026951" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbf59cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012729975299026951">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bf59cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">A normal distribution is a super common statistical distribution, it describes the distribution of lots of phenomena and the central limit theorem says that basically any distribution is secretly just one step removed from the normal distribution.</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012729975299026951"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">1</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqnf59cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">1</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvf59cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">18</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rff59cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dff59cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012734216596066304" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbfd9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012734216596066304">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bfd9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">Second: if you find yourself building a whole RNG, it&#x27;s really very hard, again, get deep in the weeds and learn about DRBGs, fork-safety, thread-safety, /dev/urandom, getrandom() and so on. Avoid if you can!</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012734216596066304"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">4</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqnfd9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvfd9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">20</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rffd9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dffd9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012735054366302209" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><span aria-hidden="true" class="absolute top-5 -bottom-3 left-1/2 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbfl9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012735054366302209">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bfl9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">Third: always use a secure RNG, your language or programming environment should have one. *Don&#x27;t* ever seed an RNG yourself. One exception: for fuzz inputs and other tests, where you may want repeat deterministically for debugging. But DON&#x27;T LET IT LEAK INTO PRODUCTION.</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012735054366302209"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">4</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqnfl9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">1</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvfl9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">37</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rffl9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dffl9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical border-b border-gray-100 cursor-pointer hover:bg-gray-100/50" data-href="/colmmacc/status/1012735873627107328" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><span aria-hidden="true" class="absolute -top-3 left-1/2 h-8 w-0.5 -translate-x-1/2 bg-gray-200"></span><div class="relative z-10"><a class="" href="/colmmacc"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@colmmacc" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg" srcSet="https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__mini.jpg 24w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__normal.jpg 48w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__bigger.jpg 73w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__x96.jpg 96w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__200x200.jpg 200w, https://pbs.twimg.com/profile_images/696813823584374784/I2mByZE__400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/colmmacc">Colm MacCárthaigh</a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/colmmacc">@colmmacc</a></div></div></span><span class="contents"><a id="_R_4lbft9cpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/colmmacc/status/1012735873627107328">Jun 29, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dd5bft9cpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">Last tip: always measure your little random functions with a histogram or whatever. I still code these wrong and have to check. Thanks for reading!</span></div></div><div class="flex flex-col gap-3 empty:hidden"></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012735873627107328"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">5</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_uqnft9cpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">6</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_uvft9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">98</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_3rfft9cpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3dfft9cpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div></div></li><li><div class="flex flex-col"><div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical border-b border-gray-100 cursor-pointer hover:bg-gray-100/50" data-href="/shafikyaghmour/status/1012929221495144449" role="link" tabindex="0"><article class="flex flex-col gap-1"><div class="flex gap-2"><div class="relative flex w-10 shrink-0 justify-center self-stretch"><div class="relative z-10"><a class="" href="/shafikyaghmour"><div class="shrink-0 overflow-hidden bg-neutral-300 rounded-full size-10 transition duration-200 hover:brightness-90"><img alt="@shafikyaghmour" class="size-full object-cover" draggable="false" loading="lazy" sizes="40px" src="https://pbs.twimg.com/profile_images/1200601050694082560/w4NubWzl_normal.jpg" srcSet="https://pbs.twimg.com/profile_images/1200601050694082560/w4NubWzl_mini.jpg 24w, https://pbs.twimg.com/profile_images/1200601050694082560/w4NubWzl_normal.jpg 48w, https://pbs.twimg.com/profile_images/1200601050694082560/w4NubWzl_bigger.jpg 73w, https://pbs.twimg.com/profile_images/1200601050694082560/w4NubWzl_x96.jpg 96w, https://pbs.twimg.com/profile_images/1200601050694082560/w4NubWzl_reasonably_small.jpg 128w, https://pbs.twimg.com/profile_images/1200601050694082560/w4NubWzl_200x200.jpg 200w, https://pbs.twimg.com/profile_images/1200601050694082560/w4NubWzl_400x400.jpg 400w"/></div></a></div></div><div class="flex min-w-0 flex-1 flex-col gap-3"><div class="flex flex-col gap-0.5"><div class="flex items-start justify-between gap-2"><div class="shrink flex items-center text-gray-700 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:content-[&#x27;·&#x27;] [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:px-1 [&amp;&gt;span:not(:empty)~span:not(:empty)]:before:shrink-0 min-w-0 overflow-hidden"><span class="contents"><div class="overflow-hidden flex items-center gap-1 min-w-0"><div class="flex max-w-full shrink-0 items-center gap-1"><a class="font-chirp max-w-full whitespace-pre-wrap break-all text-text line-clamp-1 text-body font-bold hover:underline" href="https://x.com/shafikyaghmour">@<span class="__cf_email__" data-cfemail="0172696067686a4169606269786564736c2f686e">[email&#160;protected]</span></a></div><div class="flex min-w-0 items-center gap-2"><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 no-underline [font-feature-settings:&#x27;ss01&#x27;] line-clamp-1 text-body font-normal" href="https://x.com/shafikyaghmour">@shafikyaghmour</a></div></div></span><span class="contents"><a id="_R_ildtpcpip8j6_" data-state="closed" class="font-chirp max-w-full whitespace-pre-wrap break-words text-gray-700 text-body font-normal hover:underline inline-flex w-fit shrink-0 whitespace-nowrap" href="/shafikyaghmour/status/1012929221495144449">Jun 30, 2018</a></span></div><div class="flex shrink-0 items-center gap-1 whitespace-nowrap"><button data-slot="xds-menu-trigger" type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_1lkldtpcpip8j6_" aria-label="More" class="group relative inline-flex cursor-pointer items-center justify-center gap-2 rounded-full font-semibold select-none transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-70 aria-disabled:cursor-not-allowed aria-disabled:opacity-70 h-8 min-w-8 text-subtext1 [&amp;_svg:not([class*=&#x27;size-&#x27;])]:size-4 text-primary hover:bg-btn-ghost-hover aria-expanded:bg-btn-ghost-hover active:bg-btn-ghost-pressed w-8 px-0 [&amp;_svg]:transition-transform [&amp;_svg]:duration-200 group-hover:[&amp;_svg]:scale-110 -my-2 shrink-0" style="border-radius:9999px"><span class="pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity opacity-0"><svg aria-hidden="true" class="animate-spin size-4 text-[color:inherit]" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg></span><span class="inline-flex items-center whitespace-nowrap" style="opacity:1"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-more" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M3 12c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2zm9 2c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm7 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"></path></svg></span></button></div></div><div dir="auto" class="font-chirp max-w-full whitespace-pre-wrap break-words text-text text-body font-normal"><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">Nice epic thread on random number generation. I came here to point out &quot;rand() Considered Harmful&quot; talk which is an awesome take on this </span><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-brand text-[length:inherit] font-inherit hover:underline" href="https://channel9.msdn.com/Events/GoingNative/2013/rand-Considered-Harmful" rel="noopener noreferrer" target="_blank">channel9.msdn.com/Events/GoingNa…</a><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit"> and slides </span><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-brand text-[length:inherit] font-inherit hover:underline" href="https://view.officeapps.live.com/op/view.aspx?src=http%3a%2f%2fvideo.ch9.ms%2fsessions%2fgonat%2f2013%2fSTLGN13rand.pptx" rel="noopener noreferrer" target="_blank">view.officeapps.live.com/op/view.aspx?s…</a><span class="font-chirp max-w-full whitespace-pre-wrap break-words text-inherit text-[length:inherit] font-inherit">
In C++ we discourage the use of rand() and have &lt;random&gt; </span><a class="font-chirp max-w-full whitespace-pre-wrap break-words text-brand text-[length:inherit] font-inherit hover:underline" href="https://stackoverflow.com/a/17798317/1708801" rel="noopener noreferrer" target="_blank">stackoverflow.com/a/17798317/170…</a></div></div><div class="flex flex-col gap-3 empty:hidden"><div class="flex flex-col gap-1 empty:hidden"></div></div><div class="-mx-2 flex h-5 min-h-5 w-[calc(100%+16px)] items-center justify-between overflow-visible @container"><div class="min-w-0 flex-1"><a class="rounded-xs focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring max-w-full text-[length:inherit] font-[inherit] text-[color:inherit] group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" aria-label="Reply" href="/i/status/1012929221495144449"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-reply-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M1.751 10c0-4.42 3.584-8 8.005-8h4.366c4.49 0 8.129 3.64 8.129 8.13 0 2.96-1.607 5.68-4.196 7.11l-8.054 4.46v-3.69h-.067c-4.49.1-8.183-3.51-8.183-8.01zm8.005-6c-3.317 0-6.005 2.69-6.005 6 0 3.37 2.77 6.08 6.138 6.01l.351-.01h1.761v2.3l5.087-2.81c1.951-1.08 3.163-3.13 3.163-5.36 0-3.39-2.744-6.13-6.129-6.13H9.756z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">1</span></span></span></span></a></div><div class="min-w-0 flex-1"><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_3rattpcpip8j6_" data-slot="xds-menu-trigger" data-base-ui-tooltip-trigger="" aria-label="Repost" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-green-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-green-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-retweet-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4.5 3.88l4.432 4.14-1.364 1.46L5.5 7.55V16c0 1.1.896 2 2 2H13v2H7.5c-2.209 0-4-1.79-4-4V7.55L1.432 9.48.068 8.02 4.5 3.88zM16.5 6H11V4h5.5c2.209 0 4 1.79 4 4v8.45l2.068-1.93 1.364 1.46-4.432 4.14-4.432-4.14 1.364-1.46 2.068 1.93V8c0-1.1-.896-2-2-2z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">3</span></span></span></span></button></div><div class="min-w-0 flex-1"><button id="base-ui-_R_3rttpcpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Like" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-magenta-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-magenta-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-heart-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M16.697 5.5c-1.222-.06-2.679.51-3.89 2.16l-.805 1.09-.806-1.09C9.984 6.01 8.526 5.44 7.304 5.5c-1.243.07-2.349.78-2.91 1.91-.552 1.12-.633 2.78.479 4.82 1.074 1.97 3.257 4.27 7.129 6.61 3.87-2.34 6.052-4.64 7.126-6.61 1.111-2.04 1.03-3.7.477-4.82-.561-1.13-1.666-1.84-2.908-1.91zm4.187 7.69c-1.351 2.48-4.001 5.12-8.379 7.67l-.503.3-.504-.3c-4.379-2.55-7.029-5.19-8.382-7.67-1.36-2.5-1.41-4.86-.514-6.67.887-1.79 2.647-2.91 4.601-3.01 1.651-.09 3.368.56 4.798 2.01 1.429-1.45 3.146-2.1 4.796-2.01 1.954.1 3.714 1.22 4.601 3.01.896 1.81.846 4.17-.514 6.67z"></path></svg><span class="inline-flex overflow-hidden" data-animated-count="true" style="opacity:1;width:auto;transform:none"><span class="inline-flex tabular-nums text-subtext2 ps-1"><span class="x-animated-count-visual inline-flex select-none" data-animated-count-visual="true" dir="ltr">17</span></span></span></span></button></div><div class="flex shrink-0 items-center"><div class="@max-[290px]:hidden"><button id="base-ui-_R_fdttpcpip8j6_" data-base-ui-tooltip-trigger="" aria-label="Bookmark" aria-pressed="false" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary" type="button"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-bookmark-stroke" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M4 4.5C4 3.12 5.119 2 6.5 2h11C18.881 2 20 3.12 20 4.5v18.44l-8-5.71-8 5.71V4.5zM6.5 4c-.276 0-.5.22-.5.5v14.56l6-4.29 6 4.29V4.5c0-.28-.224-.5-.5-.5h-11z"></path></svg></span></button></div><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_dlttpcpip8j6_" data-slot="xds-menu-trigger" aria-label="Share" class="group inline-flex items-center rounded-full transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 hover:text-blue-500 text-secondary"><span class="relative isolate inline-flex items-center rounded-full before:-z-10 before:pointer-events-none before:absolute before:inset-0 before:rounded-full before:scale-[0.88] before:opacity-[0] before:transition-[opacity,scale] before:duration-[140ms] before:ease-[ease-out] group-hover:before:scale-100 group-hover:before:opacity-[1] motion-reduce:before:transition-none before:bg-blue-500/10 h-9 px-2.5 [&amp;&gt;svg]:size-[18px]"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" data-icon="icon-outgoing" viewBox="0 0 24 24" width="1em" height="1em" display="flex" role="img" aria-hidden="true"><path d="M12 2.59l5.7 5.7-1.41 1.42L13 6.41V16h-2V6.41l-3.3 3.3-1.41-1.42L12 2.59zM21 15l-.02 3.51c0 1.38-1.12 2.49-2.5 2.49H5.5C4.11 21 3 19.88 3 18.5V15h2v3.5c0 .28.22.5.5.5h12.98c.28 0 .5-.22.5-.5L19 15h2z"></path></svg></span></button></div></div></div></div></article></div></div></div></li></ul><div aria-hidden="true"><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical"><div aria-label="Loading post" role="status"><div class="flex items-start"><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! size-11 shrink-0 rounded-[999px]!"></div><div class="ms-3 flex min-w-0 flex-1 flex-col gap-[18px]"><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] w-[155px] rounded-[100px]!"></div><div class="flex flex-col gap-1"><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] w-full rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] w-[106px] rounded-[100px]!"></div></div></div></div><div class="mt-3 flex h-5 items-center ps-14"><div class="flex min-w-0 flex-1 gap-4 px-4"><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div></div></div></div></div><div class="transition-colors focus-visible:outline-2 focus-visible:outline-blue-500 focus-visible:-outline-offset-2 px-horizontal py-vertical"><div aria-label="Loading post" role="status"><div class="flex items-start"><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! size-11 shrink-0 rounded-[999px]!"></div><div class="ms-3 flex min-w-0 flex-1 flex-col gap-[18px]"><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] w-[155px] rounded-[100px]!"></div><div class="flex flex-col gap-1"><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] w-full rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] w-[106px] rounded-[100px]!"></div></div></div></div><div class="mt-3 flex h-5 items-center ps-14"><div class="flex min-w-0 flex-1 gap-4 px-4"><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div><div aria-hidden="true" class="bg-secondary block rounded-sm bg-tertiary! corner-round! h-[13px] min-w-0 flex-1 rounded-[100px]!"></div></div></div></div></div></div></div></div></div></div><script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script><script nonce="17DwueGR4+2VebZkygB4Rg==">$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};
$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script><script nonce='17DwueGR4+2VebZkygB4Rg=='>($R=>$R[71].return(void 0))($R["tsr"]);$_TSR.e();document.currentScript.remove()</script></body></html>