adding run functionality