improve basing && fix parsing