add library to DRY up attribute access