documentation is extracted from here so let's have a big documentation here