Hal library