add some work on rle
use unmarshal properly