remake register templets.(an half part)