Initial functioning version.