refactor block entry