diff --git a/lib/roblox_emulator/src/runner/instance/instance.rs b/lib/roblox_emulator/src/runner/instance/instance.rs
index 63b8c3c..809434d 100644
--- a/lib/roblox_emulator/src/runner/instance/instance.rs
+++ b/lib/roblox_emulator/src/runner/instance/instance.rs
@@ -130,19 +130,23 @@ type_from_lua_userdata!(Instance);
 
 impl mlua::UserData for Instance{
 	fn add_fields<F:mlua::UserDataFields<Self>>(fields:&mut F){
-		fields.add_field_method_get("Parent",|lua,this|{
+		fn get_parent(lua:&mlua::Lua,this:&Instance)->mlua::Result<Option<Instance>>{
 			dom_mut(lua,|dom|{
 				let instance=this.get(dom)?;
 				Ok(Instance::new(instance.parent()))
 			})
-		});
-		fields.add_field_method_set("Parent",|lua,this,val:Option<Instance>|{
+		}
+		fields.add_field_method_get("parent",get_parent);
+		fields.add_field_method_get("Parent",get_parent);
+		fn set_parent(lua:&mlua::Lua,this:&mut Instance,val:Option<Instance>)->mlua::Result<()>{
 			let parent=val.unwrap_or(Instance::nil());
 			dom_mut(lua,|dom|{
 				dom.transfer_within(this.referent,parent.referent);
 				Ok(())
 			})
-		});
+		}
+		fields.add_field_method_set("parent",set_parent);
+		fields.add_field_method_set("Parent",set_parent);
 		fields.add_field_method_get("Name",|lua,this|{
 			dom_mut(lua,|dom|{
 				let instance=this.get(dom)?;