Without a sample graph, I'm using the modern graph...
graph = TinkerFactory.createModern()
g.V().has('name','marko').
project('user','created','friends').
by(valueMap(true,'name','age')).
by(out('created').has('lang','java').valueMap('name')).
by(out('knows').limit(5).valueMap(true,'name').fold())
[user:[id:1,label:person,name:[marko],age:[29]],
created:[name:[lop]],
friends:[[id:2,label:person,name:[vadas]],
[id:4,label:person,name:[josh]]]]
This graph doesn't have anything like 'profilePicture' with 'size' so I used 'created' with 'lang' instead.