contact functionality done