proper documentation