Initial changes. Not tested yet.