added documentation, example structure