main partial added