notes, use static because my interwebs brake
edit product function