adding Writable implementations