use prelude's open function