stable version with View