refactor BCM host