prototype for self upgrade