first commit. Common prototype is ready.