implementing advanced rating