Add logic function