updated to use textual package