piece framework