script update, modular functionality