added some partial data structures classes