added type specification