Refactory

Change-Id: Ib85be889188ea59048f9bdfa7fba6928febdfbd4