Author: kavik.patel@nyusoft.com