Added new file for selfcontained functionality