modify initialisation order