refactor physical structure