refactored to initialize link with options hash