some work on IDEAL