added functionality for handle to be initialized with an optional a user-specified value