various change and unfinished
same