Existing solutions for writing:

Todo: