Basic functionality is written.