Changed overall design and scripting.