better documentation / comments