basic code structure in place