ideas
violating isp