Otimization
Updated description
Optimizations and bug fixes

Round 2 !