added some ideal stuff, or something