First implementation draft