update self documenting