design and core changes