generalized script