major internal changes