custom array and custom dictionary