<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def target_internal_dependencies(target):
 """Returns internal Jarable dependencies that were "directly" declared. Directly declared deps are those that are explicitly listed in the definition of a target, rather than being depended on transitively. But in order to walk through aggregator targets such as `target`, `dependencies`, or `jar_library`, this recursively descends the dep graph and stops at Jarable instances."""

  for dep in target.dependencies:
    if isinstance(dep, Jarable):
      yield dep
    else:
      for childdep in target_internal_dependencies(dep):
        yield childdep