@tarekziade & @natim review