the combinations may be introduced by using different data structures