random solver