dependency update
make output filename via class name
move some methods to private