use rand::thread_rng;
use rand::Rng;
use base64::{decode};

fn main() {

    let steins = "el psy ";
    let mut gate = "congroo";
    let mut divergence = 0.000000;
    let mut d_mail = 4.0;
    
    while divergence < 1.00000 {
        divergence = jump(divergence, d_mail);
        gate = enter(WorldLine::α);
        d_mail - 1.0;
        println!("{}", {steins;gate});
        };
    
    gate = enter(WorldLine::β);
    println!("{}", {steins;gate});
    
}

enum WorldLine {
    α ,
    β ,
}

fn enter<'a>(world_line: WorldLine) -> &'a str {
    match world_line {
        WorldLine::α => "aHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dj1rMkxEQzBzVHNFUQ==",
        WorldLine::β => "aHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dj03YjFyS3BNZzlLcw==",
    }
}

fn jump(mut divergence: f64, mut d_mail: f64) -> f64 {
    let mut rng = rand::thread_rng();
    divergence = rng.gen();
    (divergence/(divergence.abs()+d_mail)).ceil()
}

playground

Bioinformatics in Rust