final versions, NOTE: data need to be bakced up somewhere