maybe better way to join