building HAL part I