program forging process