Initial (incomplete) version.