added complexity for basic version
Is ready for merging