new lines
first try at the full implementation, not tested yet (but can be compiled :-))