Rough prototype version.