implemented mirror draft