Added a self-executing anonymous function wrapper