ALmost complete version