basics are done; rbm part still todo