Update from Andrew Bartlett with documentation for