add some poly functionality