Thoughts, ideas and implement.