Setting up program structure