typo and rewrite async and oop files