moved objects into separate classes