_specwin(func, ser, fwin, len, winc, dc, sym, dwin)
{
local dataser;
dataser = _winfunform(ser, fwin, winc, dc, sym);
if (strcmp(len, "-1") == 0)
{
eval(sprintf("setwf(%s, '%s(%s)')", dwin, func, dataser));
}
else if (strcmp(len, "-2") == 0)
{
eval(sprintf("setwf(%s, '%s(%s, bestpow2(%s))')", dwin, func, dataser, ser));
}
else
{
eval(sprintf("setwf(%s, '%s(%s, %s)')", dwin, func, dataser, len));
}
}