compiles but trigger IOException