Added new detailed description and a little correct of the previous version after testing.