Update (version 2.0)
Many modifications