new script structure