Added basic structure and functions