localize $! so it wont get serialized