using an FRP data structure