Moved all implicit defs to a separate helpers