tried to optimize subject loading by only reading JSON file once