refacotr use-die