Initial functionality with horrible performance.