Also can you add some scala doc here.  I'm not really sure what these states mean.