switched to dictionary representation