v3.0 Extensive changes