some partial patches!