Extending forward a copy of an animation

Hi there.
I am a bit stuck here. I do not even know what words to use to search on internet and research about what I want to achieve.

You assume the next “source” animation:

What I want to achieve is that a copy of that “source” animation is repeated starting for example from the keyframe 130. Something like this:

What I have done is work from the Graph Editor, select all keyframes from source animation, Shift+D and moving to the right until the first keyframe from copy animation will stand at position 130. Then I have been selecting the part of the copy of each single curve (x, y, z) and moving until the first keyframe from the animation copy it is in position 0 in Y axis Graph Editor. This is the same position where the last keyframe from source animation is located. I do not know, maybe the rule to make a continuous copy of the animation in graph editor would be matching the end keyframes in source animation with the initial keyframes in the copy, displacing each curve (x, y, z) individually in the “Y” axis?

You will note that I’ve done intentionally that the cube is at the origin (0,0,0) in the end of the source animation to simplify things.
Well, I suspect that in more complex animations may achieve this is not so simple as this example. So, my question is how would be the right way to achieve what I have done? Is there any better way, modifier or more simple and automated technique to achieve it?

Well, in the IRC channel (thanks to JA12, mix123) have pointed me to this video tutorial:

“Offset an Animation Cycle” were definitely the words I needed to look for what I wanted.
Anyway still I wonder if there is some way or script to automatically do what I did: In Graph editor select all, shift+D, moving to the right (and then on the Y axis each curve individually) until the first keyframe from “copy” animation will match with last keyframes for “source” animation.

I’m not sure if I understand, but if you want to repeat an animation, you can add a modifier “cycle” to each curve
or in the NLA editor, you can import several time the action that you created.

Thanks mathiasA. My fault was that I did not set the modifier cycles with “Repeat with offset” as explained here:

So if I add the modifier to each curve, then in each curve cycles modifier I select “Repeat with offset”, that is exactly what I wanted from the Graph Editor.
It is also possible to do this with actions from the NLA Editor as explained in the video tutorial.

So, it is solved. Thanks.