Some changes in interface and code