PUMA Library Reference Manual