Template for Hal based architecture