Add new interface and generalise for all files