Added scanner interface and utility methods