add method on, and auto release undefined