Added Part I source code