finished basic idea