detailed description of it all...