move validity etc , not fully finished.