First basic implmementation.