add down/up model
add random state