fixed static function run()