Fix #35 & #68: dynamic support