scaladoc (copied from S-99)