Initial reworking for my fork