@ivory i still don't understand how this works