The problem is that you only have one instance of orderables and you keep changing the same instance and re-adding it to the list. Each reference in the list points to the same object. Move the orderables declaration inside the inner for loop and it will fix the problem.