https://jgamblin.com/2014/05/20/randomlyopencdvbs/