converted it to use InputSUppliers