merge hex108's code