Added constructors taking input streams