must create focus change and clear function