[theoretical part] add lens