use arrays/slices instead of container/list