refactor a bit, add delete and info calls