refactored DataLoader and Utils