move finalizer above free