added type hint