script controller