add in project

master
Angeliki 6 years ago
parent 9b5a58170a
commit bfe1c382e7

@ -24,6 +24,7 @@
</style> </style>
<body> <body>
<h4 align="left">woman-in-the-middle-attack</h4>
<h4 align="right">...a space for Angeliki Diakrousi to unpack</h4> <h4 align="right">...a space for Angeliki Diakrousi to unpack</h4>
<li class="list"> <li class="list">
<a href="thesis/thesis-angeliki.html" target="_blank">Let' s Talk About Unspeakable Things</a> <a href="thesis/thesis-angeliki.html" target="_blank">Let' s Talk About Unspeakable Things</a>
@ -89,6 +90,16 @@
<audio controls class="audio-mini" style="background-color: violet;" src="project/audio/finearts-meeting-transcribing.mp3"></audio>transcribing <audio controls class="audio-mini" style="background-color: violet;" src="project/audio/finearts-meeting-transcribing.mp3"></audio>transcribing
</div> </div>
<link rel="stylesheet" type="text/css" media="screen" href="https://cdn.conversejs.org/4.2.0/css/converse.min.css">
<script src="https://cdn.conversejs.org/4.2.0/dist/converse.min.js" charset="utf-8"></script>
<script>
converse.initialize({
bosh_service_url: 'https://conversejs.org/http-bind/', // Please use this connection manager only for testing purposes
show_controlbox_by_default: true
});
</script>
</body> </body>

@ -0,0 +1,70 @@
1
00:00:11,740 --> 00:00:18,060
Em... I hear... It sounds like walking and it's quite windy outside
2
00:00:18,620 --> 00:00:25,460
But it sounds like... It's... The microphone is inside or something
3
00:00:26,980 --> 00:00:29,340
It's probably music
4
00:00:30,320 --> 00:00:35,700
From a car maybe or from some radio?
5
00:00:37,600 --> 00:00:42,400
It's outside on the street. I hear some cars in the background
6
00:00:48,700 --> 00:00:53,600
Mmmm... It sounds like gardening sounds
7
00:00:54,820 --> 00:00:59,040
There are people in the background or maybe it's bikes
8
00:01:05,840 --> 00:01:08,500
Oh I hear a bird in the background
9
00:01:12,120 --> 00:01:16,440
A very monotone sound
10
00:01:16,740 --> 00:01:21,180
It's like driving, maybe driving in a car
11
00:01:35,120 --> 00:01:36,580
And some wind around
It seems like outside but there is some noise in the background
12
00:01:36,580 --> 00:01:36,600
It seems like outside but there is some noise in the background
13
00:01:46,340 --> 00:01:48,460
It's outside
14
00:02:04,920 --> 00:02:04,940
Oh, I hear children in the background crying
15
00:02:04,940 --> 00:02:08,360
There is some weird sound in the foreground, which I... It's hard to describe [chuckling]
Oh, I hear children in the background crying
16
00:02:08,360 --> 00:02:08,440
There is some weird sound in the foreground, which I... It's hard to describe [chuckling]
17
00:02:14,900 --> 00:02:19,580
Again it sounds like there is a kindergarten or school nearby

@ -15,6 +15,27 @@
a { a {
text-decoration:none; text-decoration:none;
} }
#transcriptWrapper {
overflow: hidden;
}
#transcriptWrapper3 {
overflow: hidden;
}
#transcript3 > div {
transition: all .8s ease;
list-style-type: disc;
}
.speaking3 {
font-weight:bold
}
#transcript > div {
transition: all .8s ease;
list-style-type: disc;
}
.speaking {
font-weight:bold
}
</style> </style>
<body> <body>
@ -26,19 +47,17 @@
</p> </p>
</section> </section>
<!-- <section>
<em>Hypothesis #1: I assume that gender representation is different in public spaces. What sounds reveal that? I assume that separation of public and private reflect that.
Experiment: I listen and record carefully sounds from the area that are coming from different spaces and voices. Exploring the private and public. Asking inhabitants to describe these sounds.</em>
</section> -->
<section> <section>
<div> <div>
<audio style="width: 100%; background: #FFFFFF;" id="a1" controls src="audio/selection-track-extracts-1.mp3"></audio> <audio style="width: 100%; background: #FFFFFF;" id="a1" controls src="audio/selection-track-extracts-1.mp3"></audio>
<audio style="width: 100%; background: #222;" id="a2" controls src="audio/description-lidia-CUT.mp3"></audio> <audio ontimeupdate="playTranscript()" style="width: 100%; background: #222;" id="a2" controls src="audio/description-lidia-CUT.mp3"></audio>
<audio style="width: 100%; background: #222;" id="a3" controls src="audio/description-eugenie-CUT-SHORT.mp3"></audio> <audio ontimeupdate="playTranscript3()" style="width: 100%; background: #222;" id="a3" controls src="audio/description-eugenie-CUT-SHORT.mp3"></audio>
<audio style="width: 100%; background: #222;" id="a4" controls src="audio/description-alex1.mp3"></audio> <audio style="width: 100%; background: #222;" id="a4" controls src="audio/description-alex1.mp3"></audio>
<button id="but">listen</button> <button id="but">listen</button>
<button id="butI">interrupt</button>
</div> </div>
<audio id="interrupt" src="audio/leeszaal-meetings-discussion.mp3"></audio>
</section> </section>
<section> <section>
@ -54,8 +73,9 @@ Experiment: I listen and record carefully sounds from the area that are coming f
<table> <tr> <table> <tr>
<td> <td>
<div class='sub'> <div id="transcriptWrapper" class='sub'>
<h3>Lidia</h3> <h3>Lidia</h3>
<div id="transcript">
<div><a data-start="0.4" href="#">00:00:00,400</a> A vint</div> <div><a data-start="0.4" href="#">00:00:00,400</a> A vint</div>
<div><a data-start="8.18" href="#">00:00:08,180</a> A bag</div> <div><a data-start="8.18" href="#">00:00:08,180</a> A bag</div>
<div><a data-start="16.54" href="#">00:00:16,540</a> Someone with a bag</div> <div><a data-start="16.54" href="#">00:00:16,540</a> Someone with a bag</div>
@ -65,11 +85,13 @@ Experiment: I listen and record carefully sounds from the area that are coming f
<div><a data-start="77.68" href="#">00:01:17,680</a> Wind</div> <div><a data-start="77.68" href="#">00:01:17,680</a> Wind</div>
<div><a data-start="120.6" href="#">00:02:00,600</a> Wow</div> <div><a data-start="120.6" href="#">00:02:00,600</a> Wow</div>
<div><a data-start="136.68" href="#">00:02:16,680</a> Children?</div> <div><a data-start="136.68" href="#">00:02:16,680</a> Children?</div>
</div> </div></div>
</td> </td>
<td> <td>
<div class='sub'>
<div id="transcriptWrapper3" class='sub'>
<h3>Eugenie</h3> <h3>Eugenie</h3>
<div id="transcript3">
<div><a data-start="1.8" href="#">00:00:01,800</a> Children outside</div> <div><a data-start="1.8" href="#">00:00:01,800</a> Children outside</div>
<div><a data-start="10.76" href="#">00:00:10,760</a> I think it's outside</div> <div><a data-start="10.76" href="#">00:00:10,760</a> I think it's outside</div>
<div><a data-start="13.7" href="#">00:00:13,700</a> Shoes, walking people</div> <div><a data-start="13.7" href="#">00:00:13,700</a> Shoes, walking people</div>
@ -82,7 +104,7 @@ Experiment: I listen and record carefully sounds from the area that are coming f
<div><a data-start="90.9" href="#">00:01:30,900</a> People in a room. Inside. They are moving, close</div> <div><a data-start="90.9" href="#">00:01:30,900</a> People in a room. Inside. They are moving, close</div>
<div><a data-start="114.62" href="#">00:01:54,620</a> It's inside somewhere, somewhere...</div> <div><a data-start="114.62" href="#">00:01:54,620</a> It's inside somewhere, somewhere...</div>
<div><a data-start="135.4" href="#">00:02:15,400</a> Children in a swimming pool</div> <div><a data-start="135.4" href="#">00:02:15,400</a> Children in a swimming pool</div>
</div> </div></div>
</td> </td>
<td> <td>
<div class='sub'> <div class='sub'>
@ -194,7 +216,7 @@ a1.addEventListener("play", function(){
}) })
a1.addEventListener("pause", function(){ a1.addEventListener("pause", function(){
but.innerHTML="play" but.innerHTML="listen"
}) })
var links=document.querySelectorAll("div.sub a") var links=document.querySelectorAll("div.sub a")
@ -216,8 +238,47 @@ for (var i=0, l=links.length; i<l; i++) {
} }
var interrupt = document.getElementById("interrupt");
butI = document.getElementById("butI");
butI.addEventListener("click", function () {
if (interrupt.paused) {
b1.pause();
b2.pause();
b3.pause();
a1.pause();
a2.pause();
a3.pause();
a4.pause();
interrupt.play();
} else {
interrupt.pause();
a1.play();
a2.play();
a3.play();
a4.play();
b1.play();
b2.play();
b3.play();
}
})
interrupt.addEventListener("play", function(){
butI.innerHTML="stop interrupt"
})
interrupt.addEventListener("pause", function(){
butI.innerHTML="interrupt"
})
</script> </script>
<script> <script>
var b1 = document.getElementById("b1"), var b1 = document.getElementById("b1"),
b2 = document.getElementById("b2"), b2 = document.getElementById("b2"),
@ -240,7 +301,7 @@ b1.addEventListener("play", function(){
}) })
b1.addEventListener("pause", function(){ b1.addEventListener("pause", function(){
butB.innerHTML="play" butB.innerHTML="listen"
}) })
var links=document.querySelectorAll("div.subB a") var links=document.querySelectorAll("div.subB a")
@ -262,6 +323,54 @@ for (var i=0, l=links.length; i<l; i++) {
</script> </script>
<script>
var dialogueTimings = [0,8,16,28,33,50,77,120,136],
dialogues = document.querySelectorAll('#transcript>div'),
transcriptWrapper = document.querySelector('#transcriptWrapper'),
audio = document.querySelector('#a2'),
previousDialogueTime = -1;
function playTranscript() {
var currentDialogueTime = Math.max.apply(Math, dialogueTimings.filter(function(v){return v <= audio.currentTime}));
if(previousDialogueTime !== currentDialogueTime) {
previousDialogueTime = currentDialogueTime;
var currentDialogue = dialogues[dialogueTimings.indexOf(currentDialogueTime)];
transcriptWrapper.scrollTop = currentDialogue.offsetTop - 50;
var previousDialogue = document.getElementsByClassName('speaking')[0];
if(previousDialogue !== undefined)
previousDialogue.className = previousDialogue.className.replace('speaking','');
currentDialogue.className +=' speaking';
}
}
;
var dialogueTimings3 = [1,10,13,20,27,31,53,58,135],
dialogues3 = document.querySelectorAll('#transcript3>div'),
transcriptWrapper3 = document.querySelector('#transcriptWrapper3'),
audio = document.querySelector('#a3'),
previousDialogueTime = -1;
function playTranscript3() {
var currentDialogueTime = Math.max.apply(Math, dialogueTimings3.filter(function(v){return v <= audio.currentTime}));
if(previousDialogueTime !== currentDialogueTime) {
previousDialogueTime = currentDialogueTime;
var currentDialogue = dialogues3[dialogueTimings3.indexOf(currentDialogueTime)];
transcriptWrapper3.scrollTop = currentDialogue.offsetTop - 50;
var previousDialogue = document.getElementsByClassName('speaking3')[0];
if(previousDialogue !== undefined)
previousDialogue.className = previousDialogue.className.replace('speaking3','');
currentDialogue.className +=' speaking3';
}
}
;
</script>
<img src="images/soundwalk-photo1.jpg" style="float:center;" width="300px"></img> <img src="images/soundwalk-photo1.jpg" style="float:center;" width="300px"></img>
<img src="images/soundwalk-photo3.jpg" style="float:center;" width="300px"></img> <img src="images/soundwalk-photo3.jpg" style="float:center;" width="300px"></img>

@ -0,0 +1,78 @@
# This file must be used with "source bin/activate" *from bash*
# you cannot run it directly
deactivate () {
unset -f pydoc >/dev/null 2>&1
# reset old environment variables
# ! [ -z ${VAR+_} ] returns true if VAR is declared at all
if ! [ -z "${_OLD_VIRTUAL_PATH+_}" ] ; then
PATH="$_OLD_VIRTUAL_PATH"
export PATH
unset _OLD_VIRTUAL_PATH
fi
if ! [ -z "${_OLD_VIRTUAL_PYTHONHOME+_}" ] ; then
PYTHONHOME="$_OLD_VIRTUAL_PYTHONHOME"
export PYTHONHOME
unset _OLD_VIRTUAL_PYTHONHOME
fi
# This should detect bash and zsh, which have a hash command that must
# be called to get it to forget past commands. Without forgetting
# past commands the $PATH changes we made may not be respected
if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then
hash -r 2>/dev/null
fi
if ! [ -z "${_OLD_VIRTUAL_PS1+_}" ] ; then
PS1="$_OLD_VIRTUAL_PS1"
export PS1
unset _OLD_VIRTUAL_PS1
fi
unset VIRTUAL_ENV
if [ ! "${1-}" = "nondestructive" ] ; then
# Self destruct!
unset -f deactivate
fi
}
# unset irrelevant variables
deactivate nondestructive
VIRTUAL_ENV="/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv"
export VIRTUAL_ENV
_OLD_VIRTUAL_PATH="$PATH"
PATH="$VIRTUAL_ENV/bin:$PATH"
export PATH
# unset PYTHONHOME if set
if ! [ -z "${PYTHONHOME+_}" ] ; then
_OLD_VIRTUAL_PYTHONHOME="$PYTHONHOME"
unset PYTHONHOME
fi
if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT-}" ] ; then
_OLD_VIRTUAL_PS1="${PS1-}"
if [ "x" != x ] ; then
PS1="${PS1-}"
else
PS1="(`basename \"$VIRTUAL_ENV\"`) ${PS1-}"
fi
export PS1
fi
# Make sure to unalias pydoc if it's already there
alias pydoc 2>/dev/null >/dev/null && unalias pydoc || true
pydoc () {
python -m pydoc "$@"
}
# This should detect bash and zsh, which have a hash command that must
# be called to get it to forget past commands. Without forgetting
# past commands the $PATH changes we made may not be respected
if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then
hash -r 2>/dev/null
fi

@ -0,0 +1,42 @@
# This file must be used with "source bin/activate.csh" *from csh*.
# You cannot run it directly.
# Created by Davide Di Blasi <davidedb@gmail.com>.
set newline='\
'
alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH:q" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT:q" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; test "\!:*" != "nondestructive" && unalias deactivate && unalias pydoc'
# Unset irrelevant variables.
deactivate nondestructive
setenv VIRTUAL_ENV "/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv"
set _OLD_VIRTUAL_PATH="$PATH:q"
setenv PATH "$VIRTUAL_ENV:q/bin:$PATH:q"
if ("" != "") then
set env_name = ""
else
set env_name = "$VIRTUAL_ENV:t:q"
endif
# Could be in a non-interactive environment,
# in which case, $prompt is undefined and we wouldn't
# care about the prompt anyway.
if ( $?prompt ) then
set _OLD_VIRTUAL_PROMPT="$prompt:q"
if ( "$prompt:q" =~ *"$newline:q"* ) then
:
else
set prompt = "[$env_name:q] $prompt:q"
endif
endif
unset env_name
alias pydoc python -m pydoc
rehash

@ -0,0 +1,101 @@
# This file must be used using `source bin/activate.fish` *within a running fish ( http://fishshell.com ) session*.
# Do not run it directly.
function _bashify_path -d "Converts a fish path to something bash can recognize"
set fishy_path $argv
set bashy_path $fishy_path[1]
for path_part in $fishy_path[2..-1]
set bashy_path "$bashy_path:$path_part"
end
echo $bashy_path
end
function _fishify_path -d "Converts a bash path to something fish can recognize"
echo $argv | tr ':' '\n'
end
function deactivate -d 'Exit virtualenv mode and return to the normal environment.'
# reset old environment variables
if test -n "$_OLD_VIRTUAL_PATH"
# https://github.com/fish-shell/fish-shell/issues/436 altered PATH handling
if test (echo $FISH_VERSION | tr "." "\n")[1] -lt 3
set -gx PATH (_fishify_path $_OLD_VIRTUAL_PATH)
else
set -gx PATH $_OLD_VIRTUAL_PATH
end
set -e _OLD_VIRTUAL_PATH
end
if test -n "$_OLD_VIRTUAL_PYTHONHOME"
set -gx PYTHONHOME $_OLD_VIRTUAL_PYTHONHOME
set -e _OLD_VIRTUAL_PYTHONHOME
end
if test -n "$_OLD_FISH_PROMPT_OVERRIDE"
# Set an empty local `$fish_function_path` to allow the removal of `fish_prompt` using `functions -e`.
set -l fish_function_path
# Erase virtualenv's `fish_prompt` and restore the original.
functions -e fish_prompt
functions -c _old_fish_prompt fish_prompt
functions -e _old_fish_prompt
set -e _OLD_FISH_PROMPT_OVERRIDE
end
set -e VIRTUAL_ENV
if test "$argv[1]" != 'nondestructive'
# Self-destruct!
functions -e pydoc
functions -e deactivate
functions -e _bashify_path
functions -e _fishify_path
end
end
# Unset irrelevant variables.
deactivate nondestructive
set -gx VIRTUAL_ENV "/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv"
# https://github.com/fish-shell/fish-shell/issues/436 altered PATH handling
if test (echo $FISH_VERSION | tr "." "\n")[1] -lt 3
set -gx _OLD_VIRTUAL_PATH (_bashify_path $PATH)
else
set -gx _OLD_VIRTUAL_PATH $PATH
end
set -gx PATH "$VIRTUAL_ENV/bin" $PATH
# Unset `$PYTHONHOME` if set.
if set -q PYTHONHOME
set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME
set -e PYTHONHOME
end
function pydoc
python -m pydoc $argv
end
if test -z "$VIRTUAL_ENV_DISABLE_PROMPT"
# Copy the current `fish_prompt` function as `_old_fish_prompt`.
functions -c fish_prompt _old_fish_prompt
function fish_prompt
# Save the current $status, for fish_prompts that display it.
set -l old_status $status
# Prompt override provided?
# If not, just prepend the environment name.
if test -n ""
printf '%s%s' "" (set_color normal)
else
printf '%s(%s) ' (set_color normal) (basename "$VIRTUAL_ENV")
end
# Restore the original $status
echo "exit $old_status" | source
_old_fish_prompt
end
set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV"
end

@ -0,0 +1,60 @@
# This file must be dot sourced from PoSh; you cannot run it directly. Do this: . ./activate.ps1
$script:THIS_PATH = $myinvocation.mycommand.path
$script:BASE_DIR = split-path (resolve-path "$THIS_PATH/..") -Parent
function global:deactivate([switch] $NonDestructive)
{
if (test-path variable:_OLD_VIRTUAL_PATH)
{
$env:PATH = $variable:_OLD_VIRTUAL_PATH
remove-variable "_OLD_VIRTUAL_PATH" -scope global
}
if (test-path function:_old_virtual_prompt)
{
$function:prompt = $function:_old_virtual_prompt
remove-item function:\_old_virtual_prompt
}
if ($env:VIRTUAL_ENV)
{
$old_env = split-path $env:VIRTUAL_ENV -leaf
remove-item env:VIRTUAL_ENV -erroraction silentlycontinue
}
if (!$NonDestructive)
{
# Self destruct!
remove-item function:deactivate
remove-item function:pydoc
}
}
function global:pydoc
{
python -m pydoc $args
}
# unset irrelevant variables
deactivate -nondestructive
$VIRTUAL_ENV = $BASE_DIR
$env:VIRTUAL_ENV = $VIRTUAL_ENV
$global:_OLD_VIRTUAL_PATH = $env:PATH
$env:PATH = "$env:VIRTUAL_ENV/bin:" + $env:PATH
if (!$env:VIRTUAL_ENV_DISABLE_PROMPT)
{
function global:_old_virtual_prompt
{
""
}
$function:_old_virtual_prompt = $function:prompt
function global:prompt
{
# Add a prefix to the current prompt, but don't discard it.
write-host "($( split-path $env:VIRTUAL_ENV -leaf )) " -nonewline
& $function:_old_virtual_prompt
}
}

@ -0,0 +1,46 @@
"""Activate virtualenv for current interpreter:
Use exec(open(this_file).read(), {'__file__': this_file}).
This can be used when you must use an existing Python interpreter, not the virtualenv bin/python.
"""
import os
import site
import sys
try:
__file__
except NameError:
raise AssertionError("You must use exec(open(this_file).read(), {'__file__': this_file}))")
# prepend bin to PATH (this file is inside the bin directory)
bin_dir = os.path.dirname(os.path.abspath(__file__))
os.environ["PATH"] = os.pathsep.join([bin_dir] + os.environ.get("PATH", "").split(os.pathsep))
base = os.path.dirname(bin_dir)
# virtual env is right above bin directory
os.environ["VIRTUAL_ENV"] = base
# add the virtual environments site-package to the host python import mechanism
IS_PYPY = hasattr(sys, "pypy_version_info")
IS_JYTHON = sys.platform.startswith("java")
if IS_JYTHON:
site_packages = os.path.join(base, "Lib", "site-packages")
elif IS_PYPY:
site_packages = os.path.join(base, "site-packages")
else:
IS_WIN = sys.platform == "win32"
if IS_WIN:
site_packages = os.path.join(base, "Lib", "site-packages")
else:
site_packages = os.path.join(base, "lib", "python{}".format(sys.version[:3]), "site-packages")
prev = set(sys.path)
site.addsitedir(site_packages)
sys.real_prefix = sys.prefix
sys.prefix = base
# Move the added items to the front of the path, in place
new = list(sys.path)
sys.path[:] = [i for i in new if i not in prev] + [i for i in new if i in prev]

@ -0,0 +1,10 @@
#!/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from setuptools.command.easy_install import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())

@ -0,0 +1,10 @@
#!/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from setuptools.command.easy_install import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())

@ -0,0 +1,10 @@
#!/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from numpy.f2py.f2py2e import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())

@ -0,0 +1,10 @@
#!/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from numpy.f2py.f2py2e import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())

@ -0,0 +1,10 @@
#!/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from numpy.f2py.f2py2e import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())

@ -0,0 +1,10 @@
#!/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())

@ -0,0 +1,10 @@
#!/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())

@ -0,0 +1,10 @@
#!/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())

Binary file not shown.

@ -0,0 +1,78 @@
#!/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv/bin/python
import sys
import getopt
import sysconfig
valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags',
'ldflags', 'help']
if sys.version_info >= (3, 2):
valid_opts.insert(-1, 'extension-suffix')
valid_opts.append('abiflags')
if sys.version_info >= (3, 3):
valid_opts.append('configdir')
def exit_with_usage(code=1):
sys.stderr.write("Usage: {0} [{1}]\n".format(
sys.argv[0], '|'.join('--'+opt for opt in valid_opts)))
sys.exit(code)
try:
opts, args = getopt.getopt(sys.argv[1:], '', valid_opts)
except getopt.error:
exit_with_usage()
if not opts:
exit_with_usage()
pyver = sysconfig.get_config_var('VERSION')
getvar = sysconfig.get_config_var
opt_flags = [flag for (flag, val) in opts]
if '--help' in opt_flags:
exit_with_usage(code=0)
for opt in opt_flags:
if opt == '--prefix':
print(sysconfig.get_config_var('prefix'))
elif opt == '--exec-prefix':
print(sysconfig.get_config_var('exec_prefix'))
elif opt in ('--includes', '--cflags'):
flags = ['-I' + sysconfig.get_path('include'),
'-I' + sysconfig.get_path('platinclude')]
if opt == '--cflags':
flags.extend(getvar('CFLAGS').split())
print(' '.join(flags))
elif opt in ('--libs', '--ldflags'):
abiflags = getattr(sys, 'abiflags', '')
libs = ['-lpython' + pyver + abiflags]
libs += getvar('LIBS').split()
libs += getvar('SYSLIBS').split()
# add the prefix/lib/pythonX.Y/config dir, but only if there is no
# shared library in prefix/lib/.
if opt == '--ldflags':
if not getvar('Py_ENABLE_SHARED'):
libs.insert(0, '-L' + getvar('LIBPL'))
if not getvar('PYTHONFRAMEWORK'):
libs.extend(getvar('LINKFORSHARED').split())
print(' '.join(libs))
elif opt == '--extension-suffix':
ext_suffix = sysconfig.get_config_var('EXT_SUFFIX')
if ext_suffix is None:
ext_suffix = sysconfig.get_config_var('SO')
print(ext_suffix)
elif opt == '--abiflags':
if not getattr(sys, 'abiflags', None):
exit_with_usage()
print(sys.abiflags)
elif opt == '--configdir':
print(sysconfig.get_config_var('LIBPL'))

@ -0,0 +1,10 @@
#!/home/angeliki/Documents/0918_PZI/0918_Grad/xpub_graduation/project/venv/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from wheel.cli import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())

@ -0,0 +1 @@
/usr/include/python2.7

@ -0,0 +1 @@
/usr/lib/python2.7/UserDict.py

@ -0,0 +1 @@
/usr/lib/python2.7/_abcoll.py

@ -0,0 +1 @@
/usr/lib/python2.7/_weakrefset.py

@ -0,0 +1 @@
/usr/lib/python2.7/abc.py

@ -0,0 +1 @@
/usr/lib/python2.7/codecs.py

@ -0,0 +1 @@
/usr/lib/python2.7/copy_reg.py

@ -0,0 +1,134 @@
import os
import sys
import warnings
# opcode is not a virtualenv module, so we can use it to find the stdlib
# Important! To work on pypy, this must be a module that resides in the
# lib-python/modified-x.y.z directory
import opcode
dirname = os.path.dirname
distutils_path = os.path.join(os.path.dirname(opcode.__file__), "distutils")
if os.path.normpath(distutils_path) == os.path.dirname(os.path.normpath(__file__)):
warnings.warn("The virtualenv distutils package at %s appears to be in the same location as the system distutils?")
else:
__path__.insert(0, distutils_path) # noqa: F821
if sys.version_info < (3, 4):
import imp
real_distutils = imp.load_module("_virtualenv_distutils", None, distutils_path, ("", "", imp.PKG_DIRECTORY))
else:
import importlib.machinery
distutils_path = os.path.join(distutils_path, "__init__.py")
loader = importlib.machinery.SourceFileLoader("_virtualenv_distutils", distutils_path)
if sys.version_info < (3, 5):
import types
real_distutils = types.ModuleType(loader.name)
else:
import importlib.util
spec = importlib.util.spec_from_loader(loader.name, loader)
real_distutils = importlib.util.module_from_spec(spec)
loader.exec_module(real_distutils)
# Copy the relevant attributes
try:
__revision__ = real_distutils.__revision__
except AttributeError:
pass
__version__ = real_distutils.__version__
from distutils import dist, sysconfig # isort:skip
try:
basestring
except NameError:
basestring = str
# patch build_ext (distutils doesn't know how to get the libs directory
# path on windows - it hardcodes the paths around the patched sys.prefix)
if sys.platform == "win32":
from distutils.command.build_ext import build_ext as old_build_ext
class build_ext(old_build_ext):
def finalize_options(self):
if self.library_dirs is None:
self.library_dirs = []
elif isinstance(self.library_dirs, basestring):
self.library_dirs = self.library_dirs.split(os.pathsep)
self.library_dirs.insert(0, os.path.join(sys.real_prefix, "Libs"))
old_build_ext.finalize_options(self)
from distutils.command import build_ext as build_ext_module
build_ext_module.build_ext = build_ext
# distutils.dist patches:
old_find_config_files = dist.Distribution.find_config_files
def find_config_files(self):
found = old_find_config_files(self)
if os.name == "posix":
user_filename = ".pydistutils.cfg"
else:
user_filename = "pydistutils.cfg"
user_filename = os.path.join(sys.prefix, user_filename)
if os.path.isfile(user_filename):
for item in list(found):
if item.endswith("pydistutils.cfg"):
found.remove(item)
found.append(user_filename)
return found
dist.Distribution.find_config_files = find_config_files
# distutils.sysconfig patches:
old_get_python_inc = sysconfig.get_python_inc
def sysconfig_get_python_inc(plat_specific=0, prefix=None):
if prefix is None:
prefix = sys.real_prefix
return old_get_python_inc(plat_specific, prefix)
sysconfig_get_python_inc.__doc__ = old_get_python_inc.__doc__
sysconfig.get_python_inc = sysconfig_get_python_inc
old_get_python_lib = sysconfig.get_python_lib
def sysconfig_get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
if standard_lib and prefix is None:
prefix = sys.real_prefix
return old_get_python_lib(plat_specific, standard_lib, prefix)
sysconfig_get_python_lib.__doc__ = old_get_python_lib.__doc__
sysconfig.get_python_lib = sysconfig_get_python_lib
old_get_config_vars = sysconfig.get_config_vars
def sysconfig_get_config_vars(*args):
real_vars = old_get_config_vars(*args)
if sys.platform == "win32":
lib_dir = os.path.join(sys.real_prefix, "libs")
if isinstance(real_vars, dict) and "LIBDIR" not in real_vars:
real_vars["LIBDIR"] = lib_dir # asked for all
elif isinstance(real_vars, list) and "LIBDIR" in args:
real_vars = real_vars + [lib_dir] # asked for list
return real_vars
sysconfig_get_config_vars.__doc__ = old_get_config_vars.__doc__
sysconfig.get_config_vars = sysconfig_get_config_vars

@ -0,0 +1,6 @@
# This is a config file local to this virtualenv installation
# You may include options that will be used by all distutils commands,
# and by easy_install. For instance:
#
# [easy_install]
# find_links = http://mylocalsite

@ -0,0 +1 @@
/usr/lib/python2.7/encodings

@ -0,0 +1 @@
/usr/lib/python2.7/fnmatch.py

@ -0,0 +1 @@
/usr/lib/python2.7/genericpath.py

@ -0,0 +1 @@
/usr/lib/python2.7/lib-dynload

@ -0,0 +1 @@
/usr/lib/python2.7/linecache.py

@ -0,0 +1 @@
/usr/lib/python2.7/locale.py

@ -0,0 +1 @@
/usr/lib/python2.7/ntpath.py

@ -0,0 +1 @@
/usr/lib/python2.7/os.py

Binary file not shown.

@ -0,0 +1 @@
/usr/lib/python2.7/posixpath.py

@ -0,0 +1 @@
/usr/lib/python2.7/re.py

Binary file not shown.

@ -0,0 +1,20 @@
Copyright (c) 2017-2019 Ingy döt Net
Copyright (c) 2006-2016 Kirill Simonov
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

@ -0,0 +1,40 @@
Metadata-Version: 2.1
Name: PyYAML
Version: 5.1
Summary: YAML parser and emitter for Python
Home-page: https://github.com/yaml/pyyaml
Author: Kirill Simonov
Author-email: xi@resolvent.net
License: MIT
Download-URL: https://pypi.org/project/PyYAML/
Platform: Any
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Text Processing :: Markup
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
YAML is a data serialization format designed for human readability
and interaction with scripting languages. PyYAML is a YAML parser
and emitter for Python.
PyYAML features a complete YAML 1.1 parser, Unicode support, pickle
support, capable extension API, and sensible error messages. PyYAML
supports standard YAML tags and provides Python-specific tags that
allow to represent an arbitrary Python object.
PyYAML is applicable for a broad range of tasks from complex
configuration files to object serialization and persistence.

@ -0,0 +1,40 @@
PyYAML-5.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
PyYAML-5.1.dist-info/LICENSE,sha256=oq25yVm3l0lKDvgL32DiLbJ0nuPgwJCFVuPrVI-WfFY,1101
PyYAML-5.1.dist-info/METADATA,sha256=33vAx8vSzjUMXGHO2jp0u8tvgkRqfAH3-OEDSpjfIx8,1704
PyYAML-5.1.dist-info/RECORD,,
PyYAML-5.1.dist-info/WHEEL,sha256=HMBxudg1Bdignf3xswgnPWbkfRGI13bogQQwWC4xJ5w,105
PyYAML-5.1.dist-info/top_level.txt,sha256=rpj0IVMTisAjh_1vG3Ccf9v5jpCQwAz6cD1IVU5ZdhQ,11
yaml/__init__.py,sha256=Ke2gASae4i0HLUxbz8l2CUR3__qpspvBBI1gltOxQbE,12182
yaml/__init__.pyc,,
yaml/composer.py,sha256=TtvWJCaffdVHhHx_muLguloDUwg1NUbo-GlJ0me6xuA,4923
yaml/composer.pyc,,
yaml/constructor.py,sha256=HrBLwPOrijfcmurB4Ww71xrTtMKehs0-xh3NNlQzveY,26834
yaml/constructor.pyc,,
yaml/cyaml.py,sha256=6MZKSJHTWwoct5urK9qbGXAhM1xz_Boawlf5SVMC85o,3842
yaml/cyaml.pyc,,
yaml/dumper.py,sha256=yMFwlojOY-M4EMUT8FiROY2QC2GAGQO7Iiky0xBlJFc,2833
yaml/dumper.pyc,,
yaml/emitter.py,sha256=09BwSivdd4BbPgx2rbFcoMOa9H1yZxqY1YILjOXvFeo,43427
yaml/emitter.pyc,,
yaml/error.py,sha256=7K-NdIv0qNKPKbnXxEg0L_b9K7nYDORr3rzm8_b-iBY,2559
yaml/error.pyc,,
yaml/events.py,sha256=50_TksgQiE4up-lKo_V-nBy-tAIxkIPQxY5qDhKCeHw,2445
yaml/events.pyc,,
yaml/loader.py,sha256=T61DzDkbfResZoQfVy1U3vN0_mKFyBALB9et-478-w4,2055
yaml/loader.pyc,,
yaml/nodes.py,sha256=gPKNj8pKCdh2d4gr3gIYINnPOaOxGhJAUiYhGRnPE84,1440
yaml/nodes.pyc,,
yaml/parser.py,sha256=sgXahZA3DkySYnaC4D_zcl3l2y4Y5R40icWtdwkF_NE,25542
yaml/parser.pyc,,
yaml/reader.py,sha256=y6cj-OcZjnFDO1u6Blmi-tKoi-3Pjvmo2PikMnO5FFc,6850
yaml/reader.pyc,,
yaml/representer.py,sha256=BaJcXjs4a1yjYMnCKxJ39TZlWahVu2OE7K6dEEy0Bqo,17791
yaml/representer.pyc,,
yaml/resolver.py,sha256=5Z3boiMikL6Qt6fS5Mt8fHym0GxbW7CMT2f2fnD1ZPQ,9122
yaml/resolver.pyc,,
yaml/scanner.py,sha256=Umb0oXZGFIf814tr_CUPPfKfeWUZj9ucqz06q20v0Fg,52027
yaml/scanner.pyc,,
yaml/serializer.py,sha256=tRsRwfu5E9fpLU7LY3vBQf2prt77hwnYlMt5dnBJLig,4171
yaml/serializer.pyc,,
yaml/tokens.py,sha256=lTQIzSVw8Mg9wv459-TjiOQe6wVziqaRlqX2_89rp54,2573
yaml/tokens.pyc,,

@ -0,0 +1,5 @@
Wheel-Version: 1.0
Generator: bdist_wheel (0.33.1)
Root-Is-Purelib: false
Tag: cp27-cp27mu-linux_x86_64

@ -0,0 +1,14 @@
Metadata-Version: 2.0
Name: TextGrid
Version: 1.4
Summary: Praat TextGrid manipulation.
Home-page: UNKNOWN
Author: Kyle Gorman et al.
Author-email: kylebgorman@gmail.com
License: UNKNOWN
Description-Content-Type: UNKNOWN
Platform: UNKNOWN
UNKNOWN

@ -0,0 +1,13 @@
TextGrid-1.4.dist-info/DESCRIPTION.rst,sha256=OCTuuN6LcWulhHS3d5rfjdsQtW22n7HENFRh6jC6ego,10
TextGrid-1.4.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
TextGrid-1.4.dist-info/METADATA,sha256=IFHsDhZZFuOJdumPEBkSTUqAlDSJMDUJW05UhdRiGjg,250
TextGrid-1.4.dist-info/RECORD,,
TextGrid-1.4.dist-info/WHEEL,sha256=9Z5Xm-eel1bTS7e6ogYiKz0zmPEqDwIypurdHN1hR40,116
TextGrid-1.4.dist-info/metadata.json,sha256=Nue5ZSguO37SYRnPFE8MCpWaMwa5J-nxt6us3cS4MHc,372
TextGrid-1.4.dist-info/top_level.txt,sha256=XHJGg7FS4QKvUdqLkmC2SmknY5vhVIxj0ooAPxOaMuY,9
textgrid/__init__.py,sha256=k-l1bvhZB1An_ijRtB4kbjWCuBWjxlmzgeb-9ybsyZ4,79
textgrid/__init__.pyc,,
textgrid/exceptions.py,sha256=pUSc3V9Vc4dzReiBF1lE7ANOjIijvkSDYKQYyFCajus,43
textgrid/exceptions.pyc,,
textgrid/textgrid.py,sha256=eVCsld7TCG_BcBS8RhsEtWf-273CmqW96-ddyuZN2v4,33505
textgrid/textgrid.pyc,,

@ -0,0 +1,6 @@
Wheel-Version: 1.0
Generator: bdist_wheel (0.29.0)
Root-Is-Purelib: true
Tag: py2-none-any
Tag: py3-none-any

@ -0,0 +1 @@
{"description_content_type": "UNKNOWN", "extensions": {"python.details": {"contacts": [{"email": "kylebgorman@gmail.com", "name": "Kyle Gorman et al.", "role": "author"}], "document_names": {"description": "DESCRIPTION.rst"}}}, "generator": "bdist_wheel (0.29.0)", "metadata_version": "2.0", "name": "TextGrid", "summary": "Praat TextGrid manipulation.", "version": "1.4"}

@ -0,0 +1,5 @@
"""Run the EasyInstall command"""
if __name__ == '__main__':
from setuptools.command.easy_install import main
main()

@ -0,0 +1,54 @@
Metadata-Version: 2.1
Name: numpy
Version: 1.16.2
Summary: NumPy is the fundamental package for array computing with Python.
Home-page: https://www.numpy.org
Author: Travis E. Oliphant et al.
Maintainer: NumPy Developers
Maintainer-email: numpy-discussion@python.org
License: BSD
Download-URL: https://pypi.python.org/pypi/numpy
Platform: Windows
Platform: Linux
Platform: Solaris
Platform: Mac OS-X
Platform: Unix
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved
Classifier: Programming Language :: C
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Software Development
Classifier: Topic :: Scientific/Engineering
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Operating System :: Unix
Classifier: Operating System :: MacOS
Requires-Python: >=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*
It provides:
- a powerful N-dimensional array object
- sophisticated (broadcasting) functions
- tools for integrating C/C++ and Fortran code
- useful linear algebra, Fourier transform, and random number capabilities
- and much more
Besides its obvious scientific uses, NumPy can also be used as an efficient
multi-dimensional container of generic data. Arbitrary data-types can be
defined. This allows NumPy to seamlessly and speedily integrate with a wide
variety of databases.
All NumPy wheels distributed on PyPI are BSD licensed.

@ -0,0 +1,803 @@
../../../bin/f2py,sha256=WCOexfKhCMTNtQGohYPYG2qfcYBxXcHfYqRTX9uw8x0,286
../../../bin/f2py2,sha256=WCOexfKhCMTNtQGohYPYG2qfcYBxXcHfYqRTX9uw8x0,286
../../../bin/f2py2.7,sha256=WCOexfKhCMTNtQGohYPYG2qfcYBxXcHfYqRTX9uw8x0,286
numpy-1.16.2.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
numpy-1.16.2.dist-info/METADATA,sha256=MyfSLq4okJQpnE7_0yoqjdO3I3YvMALqZOnJdFCvr7U,1948
numpy-1.16.2.dist-info/RECORD,,
numpy-1.16.2.dist-info/WHEEL,sha256=M5Ujap42zjfAFnpJOoFU72TFHuBKh-JF0Rqu5vZhkVE,110
numpy-1.16.2.dist-info/entry_points.txt,sha256=EvEfDEP2oBMNGDgk_sl6nu5nHwbMn1G_bN_aoiCI4ZY,113
numpy-1.16.2.dist-info/top_level.txt,sha256=4J9lbBMLnAiyxatxh8iRKV5Entd_6-oqbO7pzJjMsPw,6
numpy/.libs/libgfortran-ed201abd.so.3.0.0,sha256=xkH_25s9lTuTrEf3fE8GZK68sYSPsIlP3SJ6Qze9aIM,1023960
numpy/.libs/libopenblasp-r0-382c8f3a.3.5.dev.so,sha256=MgisyqBW3cKbBpB8GwsyuN2JKQUJtVPllGByvSYLck4,29764696
numpy/LICENSE.txt,sha256=75wRgMQl3M781Yx0TIDCm5QIlvSAKTqjJnit7QWANzQ,46470
numpy/__config__.py,sha256=6JW9C97RVmv2Rqmvmsh704QBrLHxkyJpFHadrlll9LE,1554
numpy/__config__.pyc,,
numpy/__init__.py,sha256=6bqV6_Ot0ysgHlDh0mhaoowho85c5GC5OEtyZrScd9U,7110
numpy/__init__.pyc,,
numpy/_distributor_init.py,sha256=IgPkSK3H9bgjFeUfWuXhjKrgetQl5ztUW-rTyjGHK3c,331
numpy/_distributor_init.pyc,,
numpy/_globals.py,sha256=p8xxERZsxjGPUWV9pMY3jz75NZxDLppGeKaHbYGCDqM,2379
numpy/_globals.pyc,,
numpy/_pytesttester.py,sha256=eLWMwBiqamHoev8-VlmtvCaxV_gitqK7js-UkjUW4qs,6854
numpy/_pytesttester.pyc,,
numpy/compat/__init__.py,sha256=MHle4gJcrXh1w4SNv0mz5rbUTAjAzHnyO3rtbSW3AUo,498
numpy/compat/__init__.pyc,,
numpy/compat/_inspect.py,sha256=xEImUFhm4VAzT2LJj2Va_yDAHJsdy0RwSi1JwOOhykU,7513
numpy/compat/_inspect.pyc,,
numpy/compat/py3k.py,sha256=pBEgOIEsaycTciDcN33Dt2WdNA8c3JBtxkSuzA2g8TQ,6663
numpy/compat/py3k.pyc,,
numpy/compat/setup.py,sha256=REJcwNU7EbfwBFS1FHazGJcUhh50_5gYttr3BSczCiM,382
numpy/compat/setup.pyc,,
numpy/compat/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/compat/tests/__init__.pyc,,
numpy/compat/tests/test_compat.py,sha256=KI-7Ru3Ia5TwGBmBWTM3Qjq6G_CFOzX1uId--9MecXo,691
numpy/compat/tests/test_compat.pyc,,
numpy/conftest.py,sha256=KLI46jUH5d7LGWeUI5WuGbAL1_2TukfRWKnlue4Ncrk,1686
numpy/conftest.pyc,,
numpy/core/__init__.py,sha256=_QCag_dScAatINZX8mlDcGdabAemkT8iq9GiWWgWisE,5928
numpy/core/__init__.pyc,,
numpy/core/_add_newdocs.py,sha256=I_ndaFJhI6iD5ySeC2HGpGRdPgv5JIP2vd6_Wo2tbjo,203038
numpy/core/_add_newdocs.pyc,,
numpy/core/_aliased_types.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/core/_aliased_types.pyc,,
numpy/core/_dtype.py,sha256=rvaeOf-ypqhRrb4_Aljt2CXX6uZrX0STQ0pQwlXTKv4,9688
numpy/core/_dtype.pyc,,
numpy/core/_dtype_ctypes.py,sha256=srVPSI6kJvXjzIvkBQDU1itAfT-vCZKeyjgCF3yC-6Q,3448
numpy/core/_dtype_ctypes.pyc,,
numpy/core/_dummy.so,sha256=6ymA-LVfcdEzHE71a6qp91sQ-WTxcqP2rx3vXPIsapM,15911
numpy/core/_internal.py,sha256=U3CSOXeUC79XPV-ZaxlhniUt3q5iFJXlQVFeIcwcsY4,27779
numpy/core/_internal.pyc,,
numpy/core/_methods.py,sha256=3QDUJ2FAN317yU5fE6lPdFgBVrnBaiYnUkuTu1vWmoU,5083
numpy/core/_methods.pyc,,
numpy/core/_multiarray_tests.so,sha256=Yb9JupRaApkHMPry22_gupVhAqw2wWk0D3Mmo4b9OY4,546243
numpy/core/_multiarray_umath.so,sha256=yDVY4aDlT98Wlvgo1tYgO3L51DSaQfgZFRNH2inY1IE,19667840
numpy/core/_operand_flag_tests.so,sha256=FkVNAuX0uAk6KjUMNJiSURvBXs33ytk_HPE-dd_zrjs,29842
numpy/core/_rational_tests.so,sha256=VFcpJ5c5MPOkT8HbLcHVO2_Juz0nGM14R7byTD5cVjk,261212
numpy/core/_string_helpers.py,sha256=NGGGhaFdU5eGiUAj3GTIBoOgWs4r9aTNlsE2r9NgX6Q,2855
numpy/core/_string_helpers.pyc,,
numpy/core/_struct_ufunc_tests.so,sha256=1r1lYPRdWLixFyn7aczDqsLn2X_EOMl_n5lMp9zkLcI,30069
numpy/core/_type_aliases.py,sha256=FA2Pz5OKqcLl1QKLJNu-ETHIzQ1ii3LH5pSdHhZkfZA,9181
numpy/core/_type_aliases.pyc,,
numpy/core/_umath_tests.so,sha256=TddxXbUXnLoLhXFUJx9Tn0WZi4sY5Fb9OG6Zxi0swyM,82716
numpy/core/arrayprint.py,sha256=9-GT05iiKZvMAjhoN1AUraQ1BzRaWmmq5_n0eWPp9L4,60310
numpy/core/arrayprint.pyc,,
numpy/core/cversions.py,sha256=ukYNpkei0Coi7DOcbroXuDoXc6kl5odxmcy_39pszA0,413
numpy/core/cversions.pyc,,
numpy/core/defchararray.py,sha256=gRmZlrryuLgNQLsFjMzZz4X2hFnTZzzqfkpiTWwvthI,71118
numpy/core/defchararray.pyc,,
numpy/core/einsumfunc.py,sha256=-P82bltMMGjUCRpYjJYohGdPpxLExucGlWJLMA7XxDw,51207
numpy/core/einsumfunc.pyc,,
numpy/core/fromnumeric.py,sha256=gza7xG7bWMWNtrQ0mV4719FWHpOAmk27LnhXsdQ5Ics,109555
numpy/core/fromnumeric.pyc,,
numpy/core/function_base.py,sha256=_1hlf2CCd-eXq5p7sJz56RhzrqyMmzBQjfti-i-uhbQ,16336
numpy/core/function_base.pyc,,
numpy/core/generate_numpy_api.py,sha256=0JBYTvekUeJyhp7QMKtWJSK-L6lVNhev16y0F2qX2pU,7470
numpy/core/generate_numpy_api.pyc,,
numpy/core/getlimits.py,sha256=zGUdeXCw8GAWly8MCTL6xWEyoBDszviDpc47SbS_BhY,18936
numpy/core/getlimits.pyc,,
numpy/core/include/numpy/__multiarray_api.h,sha256=MS8l193p6aGZSSuV6ube6F9Ms7Wsn5TKVv9WHM7eCkw,60958
numpy/core/include/numpy/__ufunc_api.h,sha256=szHiF_4UY3EY8wH0q1YW9UmoakOHQTsHog75MJwEyTg,12143
numpy/core/include/numpy/_neighborhood_iterator_imp.h,sha256=hNiUJ3gmJRxdjByk5R5jmLeBKpNfaP_29KLHFuTrSIA,1861
numpy/core/include/numpy/_numpyconfig.h,sha256=bDiTLQ972ZWQBEpx6OM8riS64nSAelKa2kIimnXm_Ss,1010
numpy/core/include/numpy/arrayobject.h,sha256=SXj-2avTHV8mNWvv7sOYHLKkRKcafDG7_HNpQNot1GE,164
numpy/core/include/numpy/arrayscalars.h,sha256=vC7QCznlT8vkyvxbIh4QNwi1LR7UkP7GJ1j_0ZiJa1E,3509
numpy/core/include/numpy/halffloat.h,sha256=ohvyl3Kz3mB1hW3MRzxwPDH-0L9WWM_eKhvYLjtT_2w,1878
numpy/core/include/numpy/multiarray_api.txt,sha256=Panvwe-mLDLFw9WU90x2M7nqrCE99JzBD186Xa5R4po,56385
numpy/core/include/numpy/ndarrayobject.h,sha256=ZVCR5RE1W4QUJ8X6jeai-9gwWvgDkImR8ZEH1XI2wl0,11507
numpy/core/include/numpy/ndarraytypes.h,sha256=eHZA7lbctLPjUPdyXu6ITCnyOmlt88IIG2rZkjs4DAA,64719
numpy/core/include/numpy/noprefix.h,sha256=YE-lWegAdZKI5lf44AW5jiWbnmO6hircWzj_WMFrLT4,6786
numpy/core/include/numpy/npy_1_7_deprecated_api.h,sha256=LLeZKLuJADU3RDfT04pu5FCxCBU5cEzY5Q9phR_HL78,4715
numpy/core/include/numpy/npy_3kcompat.h,sha256=exFgMT6slmo2Zg3bFsY3mKLUrrkg3KU_66gUmu5IYKk,14666
numpy/core/include/numpy/npy_common.h,sha256=FIVNq2pSdIRJsoi56GAruahhfp1OwafweqCDhakUc8w,37277
numpy/core/include/numpy/npy_cpu.h,sha256=3frXChwN0Cxca-sAeTTOJCiZ6_2q1EuggUwqEotdXLg,3879
numpy/core/include/numpy/npy_endian.h,sha256=HHanBydLvLC2anJJySvy6wZ_lYaC_xI6GNwT8cJ78rE,2596
numpy/core/include/numpy/npy_interrupt.h,sha256=Eyddk806h30jxgymbr44b7eIZKrHXtNzXpPtUPp2Ng8,3439
numpy/core/include/numpy/npy_math.h,sha256=AeaXjX76YzIMT67EdZMnjG1--x61UI2htuGtGwgfA24,18838
numpy/core/include/numpy/npy_no_deprecated_api.h,sha256=X-wRYdpuwIuerTnBblKjR7Dqsv8rqxn01RFLVWUHvi8,567
numpy/core/include/numpy/npy_os.h,sha256=cEvEvpD92EeFjsjRelw1dXJaHYL-0yPJDuz3VeSJs4E,817
numpy/core/include/numpy/numpyconfig.h,sha256=J5BLHoCyhe383tIM4YriMgYDjOPC4xWzRvqBPyNCTOE,1207
numpy/core/include/numpy/old_defines.h,sha256=7eiZoi7JrdVT9LXKCoeta5AoIncGa98GcVlWqDrLjwk,6306
numpy/core/include/numpy/oldnumeric.h,sha256=Yo-LiSzVfDK2YyhlH41ff4gS0m-lv8XjI4JcAzpdy94,708
numpy/core/include/numpy/ufunc_api.txt,sha256=2d31yVD80vKEgf5Pr5JtDjnVjc2DLfiXRWQuq7KT5wc,6889
numpy/core/include/numpy/ufuncobject.h,sha256=ocjHj2QCTYkbxIdSmPi-2k3vzKNJ96oB7giwiWFS2i0,13051
numpy/core/include/numpy/utils.h,sha256=KqJzngAvarYV3oZQu5fY0ARPVihUP7FsZjdljysaSUk,729
numpy/core/info.py,sha256=SjDs9EfOswEy-ABgUr9f09v83sUdhmwFXRlaZbOGCnA,4692
numpy/core/info.pyc,,
numpy/core/lib/libnpymath.a,sha256=b-gdLaZupHyZrHs-1v0f7TG5QQrmR0RwgJjmiGO3Y0o,350538
numpy/core/lib/npy-pkg-config/mlib.ini,sha256=_LsWV1eStNqwhdiYPa2538GL46dnfVwT4MrI1zbsoFw,147
numpy/core/lib/npy-pkg-config/npymath.ini,sha256=kamUNrYKAmXqQa8BcNv7D5sLqHh6bnChM0_5rZCsTfY,360
numpy/core/machar.py,sha256=StiB_u3QIWj55RQASESDLjv_8650DE8vuCd7evhlmDI,10854
numpy/core/machar.pyc,,
numpy/core/memmap.py,sha256=4SEtSehRX8SJtGseMP1hm4LgrRR4oLa20wlRLUy4aJU,11612
numpy/core/memmap.pyc,,
numpy/core/multiarray.py,sha256=26mdC_rn84U2WwIjf6mZX7rW_YugkEHRIDZBkKrRImQ,50606
numpy/core/multiarray.pyc,,
numpy/core/numeric.py,sha256=OaLQxu1NQmiehpC5BHRLMBIKXUqiqmDTaqhIgvN8K5M,92560
numpy/core/numeric.pyc,,
numpy/core/numerictypes.py,sha256=8esH4zpSWgjUnfpe9CK0D5MmBPojh6iWLGEDza9Pi2E,17849
numpy/core/numerictypes.pyc,,
numpy/core/overrides.py,sha256=OSkSrhC7dl63cK9Pr0qt4X5rMsB025MNoPV-_o15VNM,6658
numpy/core/overrides.pyc,,
numpy/core/records.py,sha256=6N9oqz53J_5eGPsR9DxltkYxJdzraA2dJil0xBiqJm4,30418
numpy/core/records.pyc,,
numpy/core/setup.py,sha256=3vqfmmG_JLENcuBVmjzpiznKMciwKcd1a6B0MOE7z2I,41384
numpy/core/setup.pyc,,
numpy/core/setup_common.py,sha256=8Ywhbj-uud98QbEgIZEQGvmpD6S2Ve-dlOYqb_9lkmw,16571
numpy/core/setup_common.pyc,,
numpy/core/shape_base.py,sha256=4Sjp5Jjs5BfLJ0rU6PUrxl-hNk6ye5IcrpbUNbD667U,28273
numpy/core/shape_base.pyc,,
numpy/core/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/core/tests/__init__.pyc,,
numpy/core/tests/_locales.py,sha256=GQro3bha8c5msgQyvNzmDUrNwqS2cGkKKuN4gg4c6tI,2266
numpy/core/tests/_locales.pyc,,
numpy/core/tests/data/astype_copy.pkl,sha256=lWSzCcvzRB_wpuRGj92spGIw-rNPFcd9hwJaRVvfWdk,716
numpy/core/tests/data/recarray_from_file.fits,sha256=NA0kliz31FlLnYxv3ppzeruONqNYkuEvts5wzXEeIc4,8640
numpy/core/tests/test_abc.py,sha256=cpIqt3VFBZLHbuNpO4NuyCGgd--k1zij5aasu7FV77I,2402
numpy/core/tests/test_abc.pyc,,
numpy/core/tests/test_api.py,sha256=k7pN6IGolFQHBT7CmaRZHJqR59amWk6QcVK4RdqQkKc,18902
numpy/core/tests/test_api.pyc,,
numpy/core/tests/test_arrayprint.py,sha256=PPUppm9m6cPx2mjU0lQevTdnLSq0_6JIe8LyumN3ujM,34701
numpy/core/tests/test_arrayprint.pyc,,
numpy/core/tests/test_datetime.py,sha256=1h-LfflxFQCvWsZcQwK8Ry8mWW0mziuIQ1n-NX1Qqtc,101949
numpy/core/tests/test_datetime.pyc,,
numpy/core/tests/test_defchararray.py,sha256=L5EoOBTZVrRU1Vju5IhY8BSUlBOGPzEViKJwyQSlpXo,25481
numpy/core/tests/test_defchararray.pyc,,
numpy/core/tests/test_deprecations.py,sha256=BkNax57OUQmuEvqnR4Lv2p2y0UNpXPHhsGAR6a4qjmQ,21435
numpy/core/tests/test_deprecations.pyc,,
numpy/core/tests/test_dtype.py,sha256=lPGPQGw4_6ZPn4ns_7nmJNumlvUv_DALMvm8pymaqWY,43520
numpy/core/tests/test_dtype.pyc,,
numpy/core/tests/test_einsum.py,sha256=bg9t1Hu_z0G8xGWqJuIOqS21QMR76xdQl8xQhlejXPc,44090
numpy/core/tests/test_einsum.pyc,,
numpy/core/tests/test_errstate.py,sha256=5vN5Xiv9cILQ0j62P7DrZPvTAiAddRY4EfoCUGQqgMk,1335
numpy/core/tests/test_errstate.pyc,,
numpy/core/tests/test_extint128.py,sha256=-0zEInkai1qRhXI0bdHCguU_meD3s6Td4vUIBwirYQI,5709
numpy/core/tests/test_extint128.pyc,,
numpy/core/tests/test_function_base.py,sha256=L7fBYrSEjcZdVDF1I811LWwXRAGxfcOv8b68VDxZGQo,12977
numpy/core/tests/test_function_base.pyc,,
numpy/core/tests/test_getlimits.py,sha256=2fBK7Slo67kP6bThcN9bOKmeX9gGPQVUE17jGVydoXk,4427
numpy/core/tests/test_getlimits.pyc,,
numpy/core/tests/test_half.py,sha256=Hnlj7T4-kAKT-2gPa7-vNrbOOJ6qfZoaq0jW4CbCtRs,22300
numpy/core/tests/test_half.pyc,,
numpy/core/tests/test_indexerrors.py,sha256=0Ku3Sy5jcaE3D2KsyDrFTvgQzMv2dyWja3hc4t5-n_k,4857
numpy/core/tests/test_indexerrors.pyc,,
numpy/core/tests/test_indexing.py,sha256=i0P9N0vV6RKU_n-sT8whMeG-6ydRVKAREg-b3veKKXM,50602
numpy/core/tests/test_indexing.pyc,,
numpy/core/tests/test_item_selection.py,sha256=pMjd_8v5YC4WVjLLIrhmisPOG_DMw4j3YGEZ-UY1kOA,3599
numpy/core/tests/test_item_selection.pyc,,
numpy/core/tests/test_longdouble.py,sha256=Qzlzxtk0NTXUq2loU_RPFVruc3hwjmbOJy-VatXr0F0,6314
numpy/core/tests/test_longdouble.pyc,,
numpy/core/tests/test_machar.py,sha256=FrKeGhC7j-z9tApS_uI1E0DUkzieKIdUHMQPfCSM0t8,1141
numpy/core/tests/test_machar.pyc,,
numpy/core/tests/test_mem_overlap.py,sha256=AyBz4pm7HhTDdlW2pq9FR1AO0E5QAYdKpBoWbOdSrco,29505
numpy/core/tests/test_mem_overlap.pyc,,
numpy/core/tests/test_memmap.py,sha256=mYreq9HqWDz5Z9r6mmdvz4iB6VnUR61ytVCzzd3mhc0,7316
numpy/core/tests/test_memmap.pyc,,
numpy/core/tests/test_multiarray.py,sha256=2mzeCjnNFSIXEa0ZAp0myFEcQ31ENi4DHH8ERNI8Tn4,303271
numpy/core/tests/test_multiarray.pyc,,
numpy/core/tests/test_nditer.py,sha256=e2vzCwKhLjcjgE4zPv7YgFpCE78NWdDJpL__fCR-prU,112097
numpy/core/tests/test_nditer.pyc,,
numpy/core/tests/test_numeric.py,sha256=EwIsuf6vPm9YsbvmoHOklKEgGuRuf8hBs003FPk-Seo,102550
numpy/core/tests/test_numeric.pyc,,
numpy/core/tests/test_numerictypes.py,sha256=5NMUrwVqBH_qUFk-62QhUxMwg7FPPdm9hcPdftE_4zo,18526
numpy/core/tests/test_numerictypes.pyc,,
numpy/core/tests/test_overrides.py,sha256=qRa8AOOBnejS6ZfW7vP3g-jioFdIwBBJ3hYrPZXy7ks,13196
numpy/core/tests/test_overrides.pyc,,
numpy/core/tests/test_print.py,sha256=Q53dqbjQQIlCzRp_1ZY0A-ptP7FlbBZVPeMeMLX0cVg,6876
numpy/core/tests/test_print.pyc,,
numpy/core/tests/test_records.py,sha256=jFWlwrYqBGKSdmtq55Qqrg8dg-3wvcagr9KRXCC2wMA,17734
numpy/core/tests/test_records.pyc,,
numpy/core/tests/test_regression.py,sha256=DObYUilkZkErqk67UGsRfhgaNLma7vAZhS73uFJjmaE,87021
numpy/core/tests/test_regression.pyc,,
numpy/core/tests/test_scalar_ctors.py,sha256=kjyYllJHyhMQGT49Xbjjc2tuFHXcQIM-PAZExMWczq8,2294
numpy/core/tests/test_scalar_ctors.pyc,,
numpy/core/tests/test_scalarbuffer.py,sha256=0U9U95ogctbQb9ggbmgiQ2UmzXEpO6mbXnn4ciuAO50,3561
numpy/core/tests/test_scalarbuffer.pyc,,
numpy/core/tests/test_scalarinherit.py,sha256=iP5lLn-z1vtongCvDt-JBnHwNWNREx4ovu12Iy-mGiA,1838
numpy/core/tests/test_scalarinherit.pyc,,
numpy/core/tests/test_scalarmath.py,sha256=Z14wE1NY6S3UEBVIlNj3KfOsuteXSZliHZKTqnU-nWM,27257
numpy/core/tests/test_scalarmath.pyc,,
numpy/core/tests/test_scalarprint.py,sha256=AissnDOK_noK09FFQp-oioDk3WjgKkTuGf1-vUWDfFg,15469
numpy/core/tests/test_scalarprint.pyc,,
numpy/core/tests/test_shape_base.py,sha256=8NAbKisPKVc3z9CdPr_oCVRDWjjvui_sAGLCXweTkR4,24351
numpy/core/tests/test_shape_base.pyc,,
numpy/core/tests/test_ufunc.py,sha256=tkfbCdwV_tDSLcZl79CsTev2cjBBP-o3bTwrOYeVjEo,77403
numpy/core/tests/test_ufunc.pyc,,
numpy/core/tests/test_umath.py,sha256=AOt3f7EnCM8RZJ8enlkgNQ6IT8SkrYx-a98g5Lq46cM,108290
numpy/core/tests/test_umath.pyc,,
numpy/core/tests/test_umath_complex.py,sha256=QJHRggzmZw0eFoqyc83I8mdcU5ayPLI9kAmj3MUPEF8,19323
numpy/core/tests/test_umath_complex.pyc,,
numpy/core/tests/test_unicode.py,sha256=PvWt5NLjgwulCgXakHEKMJ2pSpTLbUWgz9dZExEcSJ8,13656
numpy/core/tests/test_unicode.pyc,,
numpy/core/umath.py,sha256=rdEijDCvJClpWvMFCUVRUlrAQQ_lq4jeNJla-hTfpFU,1919
numpy/core/umath.pyc,,
numpy/core/umath_tests.py,sha256=Sr6VQTbH-sOMlXy-tg1-Unht7MKaaV4wtAYR6mQYNbU,455
numpy/core/umath_tests.pyc,,
numpy/ctypeslib.py,sha256=-uBRC3nl-33m3g3cPEJ_yh73Z191ErweCnoWDYGWcVw,17206
numpy/ctypeslib.pyc,,
numpy/distutils/__config__.py,sha256=6JW9C97RVmv2Rqmvmsh704QBrLHxkyJpFHadrlll9LE,1554
numpy/distutils/__config__.pyc,,
numpy/distutils/__init__.py,sha256=b93HZiRpHfSC9E-GPiXk6PWDwQ3STJ4rlzvx6PhHH1k,1092
numpy/distutils/__init__.pyc,,
numpy/distutils/__version__.py,sha256=SSRZKvGfvg_GpYbXWtI5gaTK0NGW9nBBCyNghaaXBh8,151
numpy/distutils/__version__.pyc,,
numpy/distutils/_shell_utils.py,sha256=zKjy56kw6erYPK71h-afpX9HYn2ZeQHSMpvvYiVwOu0,2603
numpy/distutils/_shell_utils.pyc,,
numpy/distutils/ccompiler.py,sha256=ytnf5_oaWfnssvfJQr0aXntNDXUcvZLCasOnwAiYKA0,29537
numpy/distutils/ccompiler.pyc,,
numpy/distutils/command/__init__.py,sha256=l5r9aYwIEq1D-JJc8WFUxABk6Ip28FpRK_ok7wSLRZE,1098
numpy/distutils/command/__init__.pyc,,
numpy/distutils/command/autodist.py,sha256=1oytviCdsUjm3YxLLVePvWEqxyz0eDRRqvfokDm2sXQ,2048
numpy/distutils/command/autodist.pyc,,
numpy/distutils/command/bdist_rpm.py,sha256=rhhIyFzkd5NGi6lZaft44EBPZB3zZFRDc75klJYnbw8,775
numpy/distutils/command/bdist_rpm.pyc,,
numpy/distutils/command/build.py,sha256=6Q9bDubq5WfwR1K5woDFXed692szD0Rq-5Ckv2xpoK4,1618
numpy/distutils/command/build.pyc,,
numpy/distutils/command/build_clib.py,sha256=_Y3upI_slekgMk2CI2vplOXj5p1_aEHa-F9_nJ0HOgg,13389
numpy/distutils/command/build_clib.pyc,,
numpy/distutils/command/build_ext.py,sha256=QXS_Z1vrpvTrTjUb6m9n1upo9zljo4o5yd27Su5LJfQ,25949
numpy/distutils/command/build_ext.pyc,,
numpy/distutils/command/build_py.py,sha256=7TBGLz0va0PW6sEX-aUjsXdzvhuSbJGgIrMim1JTwu4,1210
numpy/distutils/command/build_py.pyc,,
numpy/distutils/command/build_scripts.py,sha256=ze19jHBhC3JggKLbL9wgs9I3mG7ls-V2NbykvleNwgQ,1731
numpy/distutils/command/build_scripts.pyc,,
numpy/distutils/command/build_src.py,sha256=aUl2Zf8WktMCr8f1u6YoAlblNSVGjv-lz_7yTfOKC80,30908
numpy/distutils/command/build_src.pyc,,
numpy/distutils/command/config.py,sha256=DxvvFqUtKPCXzHCfC2DOQcMBm67YkRdXyWeBa3bYFQE,19094
numpy/distutils/command/config.pyc,,
numpy/distutils/command/config_compiler.py,sha256=SKJTEk_Y_Da-dVYOHAdf4c3yXxjlE1dsr-hJxY0m0PU,4435
numpy/distutils/command/config_compiler.pyc,,
numpy/distutils/command/develop.py,sha256=nYM5yjhKtGKh_3wZwrvEQBLYHKldz64aU-0iSycSkXA,641
numpy/distutils/command/develop.pyc,,
numpy/distutils/command/egg_info.py,sha256=pdiCFQiQuIpf_xmVk9Njl7iowY9CxGn9KRbU-A9eBfg,987
numpy/distutils/command/egg_info.pyc,,
numpy/distutils/command/install.py,sha256=yBj3NM6sctAbG3QR5Y4qPs7YjxpW7EoKeMPEkNWf2qU,3127
numpy/distutils/command/install.pyc,,
numpy/distutils/command/install_clib.py,sha256=6tUO3FbF_b_e_Ly31qod9rB4yHA2z8m2mh6qry1a4yk,1315
numpy/distutils/command/install_clib.pyc,,
numpy/distutils/command/install_data.py,sha256=7iWTw93ty2sBPwHwg_EEhgQhZSZe6SsKdfTS9RbUR9A,914
numpy/distutils/command/install_data.pyc,,
numpy/distutils/command/install_headers.py,sha256=NbZwt-Joo80z_1TfxA-mIWXm2L9Mmh4ZLht7HAuveoo,985
numpy/distutils/command/install_headers.pyc,,
numpy/distutils/command/sdist.py,sha256=tHmlb0RzD8x04dswPXEua9H_b6GuHWY1V3hYkwJDKvA,799
numpy/distutils/command/sdist.pyc,,
numpy/distutils/compat.py,sha256=xzkW8JgJgGTmye34QCYTIkLfsXBvmPu4tvgCwXNdiU0,218
numpy/distutils/compat.pyc,,
numpy/distutils/conv_template.py,sha256=5VAAMSjzrSe_mCxzMHVW6GQZ0ATqQr5N9EFYhuTeQvg,9702
numpy/distutils/conv_template.pyc,,
numpy/distutils/core.py,sha256=9GNNyWDTCqfnD7Jp2tzp9vOBVyeJmF8lsgv_xdlt59g,8230
numpy/distutils/core.pyc,,
numpy/distutils/cpuinfo.py,sha256=AHJuQeg78_P5EReO1kLd-MAohvB-GfV8zuRh7F8hltI,23015
numpy/distutils/cpuinfo.pyc,,
numpy/distutils/exec_command.py,sha256=laMoxZ17D5I0cnkUce94wpfgTl1j3xWHn_A_jisdcu8,10795
numpy/distutils/exec_command.pyc,,
numpy/distutils/extension.py,sha256=q_NjgW-sOoeEBbeSEJwFh411mTgsF7BzGYso61Wf0qg,2967
numpy/distutils/extension.pyc,,
numpy/distutils/fcompiler/__init__.py,sha256=v3zk6W_xQXCI5H00aVBYDi5IgSug7zrGQKxpl74Qs_k,40154
numpy/distutils/fcompiler/__init__.pyc,,
numpy/distutils/fcompiler/absoft.py,sha256=AKbj5uGr8dpGDLzRIJbdUnXXAtF_5k4JqnqwTWvy-tQ,5565
numpy/distutils/fcompiler/absoft.pyc,,
numpy/distutils/fcompiler/compaq.py,sha256=djulalEdV6b58ofcEw14Uoq5-aNgblJMqLIzNwmJ2SE,4109
numpy/distutils/fcompiler/compaq.pyc,,
numpy/distutils/fcompiler/environment.py,sha256=A6AdFm6GwL5znym5qito1o3brZEgDTJs3AeCRUxu0fA,3309
numpy/distutils/fcompiler/environment.pyc,,
numpy/distutils/fcompiler/g95.py,sha256=K68RRAvOvyKoh-jsD9J4ZDsHltrGnJ_AllxULhy6iOE,1396
numpy/distutils/fcompiler/g95.pyc,,
numpy/distutils/fcompiler/gnu.py,sha256=oHipJDyfisSK9_Kdkv1Av8hDHY3UbLALgWfBO7cXkPA,20804
numpy/distutils/fcompiler/gnu.pyc,,
numpy/distutils/fcompiler/hpux.py,sha256=xpNfy7vCKWPnJ5M3JPnjMAewKBAfKN5hFX3hvEL2zaM,1419
numpy/distutils/fcompiler/hpux.pyc,,
numpy/distutils/fcompiler/ibm.py,sha256=66gCrBbbVvqu_LvdX7a9MA15NqNIY2DXPOPUFrU1zRc,3595
numpy/distutils/fcompiler/ibm.pyc,,
numpy/distutils/fcompiler/intel.py,sha256=WlsBtvZnLpFke7oTpMCDYFlccNSUWWkB2p422iwQURU,6861
numpy/distutils/fcompiler/intel.pyc,,
numpy/distutils/fcompiler/lahey.py,sha256=pJ0-xgtYwyYXgt8JlN8PFeYYEWB3vOmFkNx6UUFXzuM,1393
numpy/distutils/fcompiler/lahey.pyc,,
numpy/distutils/fcompiler/mips.py,sha256=IxLojWR1oi0VW93PxPpHQXRwZcYffD1dunllQW2w19A,1780
numpy/distutils/fcompiler/mips.pyc,,
numpy/distutils/fcompiler/nag.py,sha256=eiTvBopdCgVh5-HDTryVbRrYvf4r_Sqse1mruTt5Blo,2608
numpy/distutils/fcompiler/nag.pyc,,
numpy/distutils/fcompiler/none.py,sha256=N6adoFAf8inIQfCDEBzK5cGI3hLIWWpHmQXux8iJDfA,824
numpy/distutils/fcompiler/none.pyc,,
numpy/distutils/fcompiler/pathf95.py,sha256=Xf1JMB30PDSoNpA1Y-vKPRBeNO0XfSi0dvVQvvdjfUQ,1127
numpy/distutils/fcompiler/pathf95.pyc,,
numpy/distutils/fcompiler/pg.py,sha256=G0uNPfedmbkYWfChg1UbxBKqo25RenzSVJN1BUtRDw0,4232
numpy/distutils/fcompiler/pg.pyc,,
numpy/distutils/fcompiler/sun.py,sha256=21DQ6Rprr9rEp4pp7Np8kCwOc0Xfqdxa1iX0O-yPJPM,1643
numpy/distutils/fcompiler/sun.pyc,,
numpy/distutils/fcompiler/vast.py,sha256=LJ21-WIJsiquLtjdDaNsJqblwN5wuM2FZsYl1R40vN8,1733
numpy/distutils/fcompiler/vast.pyc,,
numpy/distutils/from_template.py,sha256=671F-qa8R1gbJUe1tCZFjw64K7J98ZnfeSV1HvWbZas,7979
numpy/distutils/from_template.pyc,,
numpy/distutils/info.py,sha256=lNxUhbJnzWjA47P2I_9NW-tuVrjGzL62jHDlQJ3pp6E,157
numpy/distutils/info.pyc,,
numpy/distutils/intelccompiler.py,sha256=1qzr6PMxi0UkR0NUY3rt3gqww9GwJ-Gbe91yxQKlieU,4291
numpy/distutils/intelccompiler.pyc,,
numpy/distutils/lib2def.py,sha256=RWD0EpuUHoxIuc9VyyDCH2d73jgsdGG2PBKVisanlVU,3502
numpy/distutils/lib2def.pyc,,
numpy/distutils/line_endings.py,sha256=aBO2e754iin4Ylo7FNwlBg6nPudXMnQZYdhVhf-E3aA,2053
numpy/distutils/line_endings.pyc,,
numpy/distutils/log.py,sha256=yHzdtNdTg6YtvO50Hu-Le5WJ7Typ2TvaCYabelTaUO0,2745
numpy/distutils/log.pyc,,
numpy/distutils/mingw/gfortran_vs2003_hack.c,sha256=cbsN3Lk9Hkwzr9c-yOP2xEBg1_ml1X7nwAMDWxGjzc8,77
numpy/distutils/mingw32ccompiler.py,sha256=4fU0Qe_BcIZOFnjwy423AfEHXVepbyayWu89-UxDGGY,25178
numpy/distutils/mingw32ccompiler.pyc,,
numpy/distutils/misc_util.py,sha256=vUYKvhcqAd10VZOCm0Gw2heGfVTnndNj64BYiPbtbQA,82905
numpy/distutils/misc_util.pyc,,
numpy/distutils/msvc9compiler.py,sha256=TuPYjPFp3nYQSIG1goNxuOly7o3VMx-H35POMpycB3k,2258
numpy/distutils/msvc9compiler.pyc,,
numpy/distutils/msvccompiler.py,sha256=7EUlHbgdKBBJG3AzgE94AQeUFnj0HcD6M7_YPN7vdCs,1994
numpy/distutils/msvccompiler.pyc,,
numpy/distutils/npy_pkg_config.py,sha256=k3lxSOC_InRBSGddbfbvMLRTGqnE-LliNXakwdZ3AH8,13154
numpy/distutils/npy_pkg_config.pyc,,
numpy/distutils/numpy_distribution.py,sha256=lbnEW1OxWxC_1n2sKd0Q3fC5QnNdFuAkNAlvXF99zIQ,700
numpy/distutils/numpy_distribution.pyc,,
numpy/distutils/pathccompiler.py,sha256=FjNouOTL8u4gLMbJW7GdT0RlsD2nXV1_SEBNZj9QdpQ,779
numpy/distutils/pathccompiler.pyc,,
numpy/distutils/setup.py,sha256=q3DcCZNkK_jHsC0imocewd4uCKQWWXjkzd4nkBmkMFI,611
numpy/distutils/setup.pyc,,
numpy/distutils/system_info.py,sha256=vwtulLGu7HBcUtEjlBkssLCy0vxlUx_2yNBmf0eLD_U,89628
numpy/distutils/system_info.pyc,,
numpy/distutils/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/distutils/tests/__init__.pyc,,
numpy/distutils/tests/test_exec_command.py,sha256=SH9RaWmUnSu8uGEjwyoTrzqoVPclTUnM6UTGSKxW8qc,7146
numpy/distutils/tests/test_exec_command.pyc,,
numpy/distutils/tests/test_fcompiler.py,sha256=t26JUHwJxl_m-ALPa5XABgVFrMthBw7gRKN4yYX1hYQ,2678
numpy/distutils/tests/test_fcompiler.pyc,,
numpy/distutils/tests/test_fcompiler_gnu.py,sha256=O57uCEHeQIS0XF8GloEas3OlaOfmIHDWEtgYS_q3x48,2218
numpy/distutils/tests/test_fcompiler_gnu.pyc,,
numpy/distutils/tests/test_fcompiler_intel.py,sha256=fOjd_jv0Od6bZyzFf4YpZMcnFva0OZK7yJV_4Hebb6A,1140
numpy/distutils/tests/test_fcompiler_intel.pyc,,
numpy/distutils/tests/test_fcompiler_nagfor.py,sha256=5-Num0A3cN7_NS3BlAgYt174S-OGOWRLL9rXtv-h_fA,1176
numpy/distutils/tests/test_fcompiler_nagfor.pyc,,
numpy/distutils/tests/test_from_template.py,sha256=SDYoe0XUpAayyEQDq7ZhrvEEz7U9upJDLYzhcdoVifc,1103
numpy/distutils/tests/test_from_template.pyc,,
numpy/distutils/tests/test_misc_util.py,sha256=8LIm12X83HmvgmpvJJ9inaU7FlGt287VwDM-rMKCOv4,3316
numpy/distutils/tests/test_misc_util.pyc,,
numpy/distutils/tests/test_npy_pkg_config.py,sha256=wa0QMQ9JAye87t2gDbFaBHp0HGpNFgwxJrJ30ZrHvNk,2639
numpy/distutils/tests/test_npy_pkg_config.pyc,,
numpy/distutils/tests/test_shell_utils.py,sha256=we9P8AvjCQky1NRDP3sXAJnNUek7rDmMR4Ar9cg9iSk,2030
numpy/distutils/tests/test_shell_utils.pyc,,
numpy/distutils/tests/test_system_info.py,sha256=Asv6c-N1I2JQHAcBZuObsoBlaaKOVepkhyFAmGp0zow,7730
numpy/distutils/tests/test_system_info.pyc,,
numpy/distutils/unixccompiler.py,sha256=M7Hn3ANMo8iP-sZtSAebI3RCLp0ViRYxawAbck0hlQM,5177
numpy/distutils/unixccompiler.pyc,,
numpy/doc/__init__.py,sha256=BDpxTM0iw2F4thjBkYqjIXX57F5KfIaH8xMd67N6Jh0,574
numpy/doc/__init__.pyc,,
numpy/doc/basics.py,sha256=5ygY_jESZpg9TENO0dszCttlq5v5IXvXjL2pWg5Atms,9658
numpy/doc/basics.pyc,,
numpy/doc/broadcasting.py,sha256=0uofJxPfkwsaQaTSju8TwiOpsmXSw2F3bzG8CdkKviU,5603
numpy/doc/broadcasting.pyc,,
numpy/doc/byteswapping.py,sha256=ivf9jUApDmMijOj1f5BGYkGCRVh4OLa_Wybbcl3A9Zw,5349
numpy/doc/byteswapping.pyc,,
numpy/doc/constants.py,sha256=G-xVDfqRId16dKXe1Owy6-tlexIzJUTuir2yu3iQgMc,9290
numpy/doc/constants.pyc,,
numpy/doc/creation.py,sha256=6FUALDWgqPWObcW-ZHDQMAnfo42I60rRR9pDpwb4-YE,5496
numpy/doc/creation.pyc,,
numpy/doc/glossary.py,sha256=D5Ljv1ZOOIj-O0Peg2E2QaUBV3mZb60bJOI_4gQmFTo,13583
numpy/doc/glossary.pyc,,
numpy/doc/indexing.py,sha256=qhhsiAeG_7Y2rgziwj515Fsw0wFL4dq1quT-ja3-0zs,15669
numpy/doc/indexing.pyc,,
numpy/doc/internals.py,sha256=xYp6lv4yyV0ZIo_qCvLCAWxDa0rhu7FNrTmpXY1isO4,9669
numpy/doc/internals.pyc,,
numpy/doc/misc.py,sha256=JWJqyiYL2qoSMVAb0QC8w_Pm5l7ZLxx2Z9D5ilgU4Uo,6191
numpy/doc/misc.pyc,,
numpy/doc/structured_arrays.py,sha256=Kr2n-4TQjfVVBoOLt3Lv30e6j5et9y8zYXZx3wg_hCc,26108
numpy/doc/structured_arrays.pyc,,
numpy/doc/subclassing.py,sha256=AqtEltybX__ghj91b73QgXcGpYd8gGlwoO-R7SQDwe8,28561
numpy/doc/subclassing.pyc,,
numpy/doc/ufuncs.py,sha256=vsAkCLEMh7Qa_3x4WbDMY3IQsDCLdOCuB_6P2aEcVLg,5427
numpy/doc/ufuncs.pyc,,
numpy/dual.py,sha256=SZ3DLWXQFv1lRKN1TlG487xmexpJFa7faaBdnnexm3E,1865
numpy/dual.pyc,,
numpy/f2py/__init__.py,sha256=nHuShe3wj5HQ2Xyb42DEorG3DK63HaXRNUizZgqB83g,3101
numpy/f2py/__init__.pyc,,
numpy/f2py/__main__.py,sha256=mnksAcMyLdK0So_DseQn0zalhnA7LflS7hHvo7QCVjU,134
numpy/f2py/__main__.pyc,,
numpy/f2py/__version__.py,sha256=rEHB9hlWmpryhNa0EmMnlAlDCGI4GXILC9CZUEV3Wew,254
numpy/f2py/__version__.pyc,,
numpy/f2py/auxfuncs.py,sha256=mDvaBo3Y8tYpXLZfq8DCv6UZ3-2JqWc_iNBZRxGesb0,21826
numpy/f2py/auxfuncs.pyc,,
numpy/f2py/capi_maps.py,sha256=FgizIHORFdaX5eIVZEQSlC9kVAidh0jfKoJYMK4Z86E,31416
numpy/f2py/capi_maps.pyc,,
numpy/f2py/cb_rules.py,sha256=un1xn8goj4jFL8FzxRwWSAzpr0CVcvwObVUKdIGJyaA,22946
numpy/f2py/cb_rules.pyc,,
numpy/f2py/cfuncs.py,sha256=NRxuXAaryWHOFh5205BvvDjajituolH6FvtsumCltvI,45114
numpy/f2py/cfuncs.pyc,,
numpy/f2py/common_rules.py,sha256=DOCOo4brpFaKNll8hOjG_vCYuOfKyTBYMItaDC_osEc,4981
numpy/f2py/common_rules.pyc,,
numpy/f2py/crackfortran.py,sha256=eiNE5IpgI8pYEocd2R3U7iays2lTid0x8ClkAsKB67Q,128927
numpy/f2py/crackfortran.pyc,,
numpy/f2py/diagnose.py,sha256=VNuNTGnQaXn9Fn2jlueYt47634CvLQSaAWJWy_Nxwnw,5295
numpy/f2py/diagnose.pyc,,
numpy/f2py/f2py2e.py,sha256=w9zSJG3tnCMyOrgZJqhZiEUoAnnI7oU61kYZzvsLdfo,23983
numpy/f2py/f2py2e.pyc,,
numpy/f2py/f2py_testing.py,sha256=8rkBjUsNhBavpoBgi_bqDS8H8tBdd5BR8hrE6ENsIAo,1523
numpy/f2py/f2py_testing.pyc,,
numpy/f2py/f90mod_rules.py,sha256=YFK4MPkGHBxshAInbcapnumX3qlu0h6ya6GQpS8zWLk,9850
numpy/f2py/f90mod_rules.pyc,,
numpy/f2py/func2subr.py,sha256=Oy12rqUa1vcXvzR6g8yx8jSYDwfKt5Jqiebf1QaWX1o,9224
numpy/f2py/func2subr.pyc,,
numpy/f2py/info.py,sha256=Mk1-neqpqYQ6njoVUCKHmMkyFkAqYeWH4cGZr8NfKiI,136
numpy/f2py/info.pyc,,
numpy/f2py/rules.py,sha256=WijCZZXIQSbV5wRHGGgjUvQlh4gQ9tKaqbSYTjvOyRk,58526
numpy/f2py/rules.pyc,,
numpy/f2py/setup.py,sha256=qNCIqRPcpEUhJBjihtEXEe4Iil4XDYVRAI_sZm7xZhM,2444
numpy/f2py/setup.pyc,,
numpy/f2py/src/fortranobject.c,sha256=VtPYFyh0jv5N432cFTZGonH7qwkUWJRdDUwZZ6RnqnU,35984
numpy/f2py/src/fortranobject.h,sha256=ltMxueNeETQtEYSA_E7bpRtF8Jj1xuOBS-YNhjBMfOw,5227
numpy/f2py/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/f2py/tests/__init__.pyc,,
numpy/f2py/tests/src/array_from_pyobj/wrapmodule.c,sha256=L_Z0GMyfYIoRiS0FIBlzy_nxlFoNbkLAatObVmKeGsk,9025
numpy/f2py/tests/src/assumed_shape/.f2py_f2cmap,sha256=But9r9m4iL7EGq_haMW8IiQ4VivH0TgUozxX4pPvdpE,29
numpy/f2py/tests/src/assumed_shape/foo_free.f90,sha256=oBwbGSlbr9MkFyhVO2aldjc01dr9GHrMrSiRQek8U64,460
numpy/f2py/tests/src/assumed_shape/foo_mod.f90,sha256=rfzw3QdI-eaDSl-hslCgGpd5tHftJOVhXvb21Y9Gf6M,499
numpy/f2py/tests/src/assumed_shape/foo_use.f90,sha256=rmT9k4jP9Ru1PLcGqepw9Jc6P9XNXM0axY7o4hi9lUw,269
numpy/f2py/tests/src/assumed_shape/precision.f90,sha256=r08JeTVmTTExA-hYZ6HzaxVwBn1GMbPAuuwBhBDtJUk,130
numpy/f2py/tests/src/common/block.f,sha256=GQ0Pd-VMX3H3a-__f2SuosSdwNXHpBqoGnQDjf8aG9g,224
numpy/f2py/tests/src/kind/foo.f90,sha256=zIHpw1KdkWbTzbXb73hPbCg4N2Htj3XL8DIwM7seXpo,347
numpy/f2py/tests/src/mixed/foo.f,sha256=90zmbSHloY1XQYcPb8B5d9bv9mCZx8Z8AMTtgDwJDz8,85
numpy/f2py/tests/src/mixed/foo_fixed.f90,sha256=pxKuPzxF3Kn5khyFq9ayCsQiolxB3SaNtcWaK5j6Rv4,179
numpy/f2py/tests/src/mixed/foo_free.f90,sha256=fIQ71wrBc00JUAVUj_r3QF9SdeNniBiMw6Ly7CGgPWU,139
numpy/f2py/tests/src/parameter/constant_both.f90,sha256=-bBf2eqHb-uFxgo6Q7iAtVUUQzrGFqzhHDNaxwSICfQ,1939
numpy/f2py/tests/src/parameter/constant_compound.f90,sha256=re7pfzcuaquiOia53UT7qNNrTYu2euGKOF4IhoLmT6g,469
numpy/f2py/tests/src/parameter/constant_integer.f90,sha256=nEmMLitKoSAG7gBBEQLWumogN-KS3DBZOAZJWcSDnFw,612
numpy/f2py/tests/src/parameter/constant_non_compound.f90,sha256=IcxESVLKJUZ1k9uYKoSb8Hfm9-O_4rVnlkiUU2diy8Q,609
numpy/f2py/tests/src/parameter/constant_real.f90,sha256=quNbDsM1Ts2rN4WtPO67S9Xi_8l2cXabWRO00CPQSSQ,610
numpy/f2py/tests/src/regression/inout.f90,sha256=CpHpgMrf0bqA1W3Ozo3vInDz0RP904S7LkpdAH6ODck,277
numpy/f2py/tests/src/size/foo.f90,sha256=IlFAQazwBRr3zyT7v36-tV0-fXtB1d7WFp6S1JVMstg,815
numpy/f2py/tests/src/string/char.f90,sha256=ihr_BH9lY7eXcQpHHDQhFoKcbu7VMOX5QP2Tlr7xlaM,618
numpy/f2py/tests/test_array_from_pyobj.py,sha256=gLSX9JuF_8NNboUQRzRF3IYC7pWJ06Mw8m6sy2wQvCQ,22083
numpy/f2py/tests/test_array_from_pyobj.pyc,,
numpy/f2py/tests/test_assumed_shape.py,sha256=QhSsSJ4gzrgACSO-dyasMPhJSfa7PzDAxAd9yN0M6zI,949
numpy/f2py/tests/test_assumed_shape.pyc,,
numpy/f2py/tests/test_block_docstring.py,sha256=lbRnFEGeseQ-WP9grC8Y4J6xKu-Nwgp0_fSVuYn19Hw,568
numpy/f2py/tests/test_block_docstring.pyc,,
numpy/f2py/tests/test_callback.py,sha256=d5366rZPJMowFLd7AiwUMRdhKTe8BMeakcp1plQNBJI,3994
numpy/f2py/tests/test_callback.pyc,,
numpy/f2py/tests/test_common.py,sha256=tLmi1JrfwFdTcBlUInxTn04f6Hf8eSB00sWRoKJvHrM,868
numpy/f2py/tests/test_common.pyc,,
numpy/f2py/tests/test_compile_function.py,sha256=gQG9PeMaXCcjlc233cEJb5eMoNFfvzAdkHf8qb7Css0,4256
numpy/f2py/tests/test_compile_function.pyc,,
numpy/f2py/tests/test_kind.py,sha256=G6u6EWjVHenmPju3RQCa9bSeCJGDul3VyXFgp2_Yc7w,1078
numpy/f2py/tests/test_kind.pyc,,
numpy/f2py/tests/test_mixed.py,sha256=nUgGcvcbyd_NB6NuwFCIH8ze5eeMztC-fE5lCHXc9Bg,931
numpy/f2py/tests/test_mixed.pyc,,
numpy/f2py/tests/test_parameter.py,sha256=_wX-gM-XGxA_mfDBM8np9NLjYiCF6LJbglwKf09JbdM,3976
numpy/f2py/tests/test_parameter.pyc,,
numpy/f2py/tests/test_quoted_character.py,sha256=Q0oDtl3STQqzSap5VYPpfzJJ72NtQchm6Vg-bwuoBl4,1029
numpy/f2py/tests/test_quoted_character.pyc,,
numpy/f2py/tests/test_regression.py,sha256=lPQUKx5RrVtGhyIvIcWS5GgA_CgQypabuuna-Q1z3hs,764
numpy/f2py/tests/test_regression.pyc,,
numpy/f2py/tests/test_return_character.py,sha256=4a_JeEtY1AkT-Q-01iaZyqWLDGmZGW17d88JNFZoXTc,3864
numpy/f2py/tests/test_return_character.pyc,,
numpy/f2py/tests/test_return_complex.py,sha256=FO4oflCncNIft36R3Fe9uiyDtryiB-_d2PLMH3x64I4,4779
numpy/f2py/tests/test_return_complex.pyc,,
numpy/f2py/tests/test_return_integer.py,sha256=cyyAbyHUepwYeyXlgIa2FD4B7A2dHnpp2jwx8ZDQiZQ,4749
numpy/f2py/tests/test_return_integer.pyc,,
numpy/f2py/tests/test_return_logical.py,sha256=u3dazkOU1oz9kZKYXBd2GWaEr02MYfjGdLrb7kT8MiY,4974
numpy/f2py/tests/test_return_logical.pyc,,
numpy/f2py/tests/test_return_real.py,sha256=QVRKzeO44ZuIlV8EycmtXaHT_i0rnX2bi3rOh7py4GM,5619
numpy/f2py/tests/test_return_real.pyc,,
numpy/f2py/tests/test_semicolon_split.py,sha256=v7YFx-oTbXUZZ4qjdblCYeVVtkD1YYa4CbuEf2LTOLs,1580
numpy/f2py/tests/test_semicolon_split.pyc,,
numpy/f2py/tests/test_size.py,sha256=GV7S4tl8FhK60T_EpX86yVQo_bMVTdyOTB8fGVIQ24o,1352
numpy/f2py/tests/test_size.pyc,,
numpy/f2py/tests/test_string.py,sha256=LTQC9AFVsUAuJVFuH3Wltl-NfFIilVl0KvBNnEgdnmo,676
numpy/f2py/tests/test_string.pyc,,
numpy/f2py/tests/util.py,sha256=u06FJvpEGZM6P9WaZWkfTxR5TSdjCm7eXku45MO5R_o,9436
numpy/f2py/tests/util.pyc,,
numpy/f2py/use_rules.py,sha256=L6nTSJnxougQ2PVAzR7s-1spidcfDp9tzLIFAJe3gUI,3652
numpy/f2py/use_rules.pyc,,
numpy/fft/__init__.py,sha256=KGWBTdw_6ckUIfniIdikkgBwDy8riaGID8x4cdOf_Ds,252
numpy/fft/__init__.pyc,,
numpy/fft/fftpack.py,sha256=lsjJM82Zdhh9t68dQrzO6iPihdgE_QK3GtSSfpYEcxI,47089
numpy/fft/fftpack.pyc,,
numpy/fft/fftpack_lite.so,sha256=SHB5OV2xfkGP6xHoRsRM6r2F39PpCrYdhlkhrZ-YtQE,149826
numpy/fft/helper.py,sha256=6Q_SGRP2hukwWRJjiL5OidSfdJIkvZo7AePSqYMLgJI,9710
numpy/fft/helper.pyc,,
numpy/fft/info.py,sha256=831NwiCI33uiLx21G7kFCwzZuFxDfmU8n-2LG4FJm2w,7235
numpy/fft/info.pyc,,
numpy/fft/setup.py,sha256=VR1boee7xZd3lOQVRJ3083I0kYqq_-RCo6CK6UK8Lso,550
numpy/fft/setup.pyc,,
numpy/fft/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/fft/tests/__init__.pyc,,
numpy/fft/tests/test_fftpack.py,sha256=Ub9oaoyEILrev0kZoEh0hTaYlf-orOUtfKIsNbANwoU,7019
numpy/fft/tests/test_fftpack.pyc,,
numpy/fft/tests/test_helper.py,sha256=q8y7x0IaXRW2ai0dCEmhW48MRkQ6k8bSegti5gCE6ac,9774
numpy/fft/tests/test_helper.pyc,,
numpy/lib/__init__.py,sha256=NgwUuJaACbQF-qd9VLy6CEPwcZHk1GEdWPW0UhZPQl8,1358
numpy/lib/__init__.pyc,,
numpy/lib/_datasource.py,sha256=qKNDjPS0q8CJ4HD9I6IPgJEmr2MN2m-yinyYOJBqZ1w,25523
numpy/lib/_datasource.pyc,,
numpy/lib/_iotools.py,sha256=JERUFZ1Xja8mq9T7AQdtO2RwoblLmmDcfhnL9iT0xOE,32683
numpy/lib/_iotools.pyc,,
numpy/lib/_version.py,sha256=8ouI5DbgX1RuNbPhVX_Fn14_v7ZiwwQ1grQPX3_bXBs,4866
numpy/lib/_version.pyc,,
numpy/lib/arraypad.py,sha256=dAhAzdE0AXL26VMyOj0XIzh_XqcjWv6SDSDaAGSFxyQ,45097
numpy/lib/arraypad.pyc,,
numpy/lib/arraysetops.py,sha256=gpQmyj62NhyGms41X4J0L2qF5apzPqSCRsSN1Os8AVo,24175
numpy/lib/arraysetops.pyc,,
numpy/lib/arrayterator.py,sha256=niYNI2qhySUT5j_3gl07pPbkmY4GJqdwIGaMZyPil84,7191
numpy/lib/arrayterator.pyc,,
numpy/lib/financial.py,sha256=fYFVxvZmJJUxyWarmOpNz8rhFfs_Gv3vx8iB9L2LVwc,25985
numpy/lib/financial.pyc,,
numpy/lib/format.py,sha256=-LoQbL9aFfVv38VLi99Pga5zY1tO4qdsog7VGc2N4wE,30723
numpy/lib/format.pyc,,
numpy/lib/function_base.py,sha256=oCjNZGSGegRLTaEMmOJwYoTTWR1eZuVEO9HJLCk26Gc,156000
numpy/lib/function_base.pyc,,
numpy/lib/histograms.py,sha256=0FviiX5FbM5sxHjbHHE54LQLday_AoX4LCF_N8_x4bk,39375
numpy/lib/histograms.pyc,,
numpy/lib/index_tricks.py,sha256=OymHt6Mzi16XZBWSvLdnwGr9ywaPker-3Dq2vQHXN7I,29087
numpy/lib/index_tricks.pyc,,
numpy/lib/info.py,sha256=oVczF_pC_CMZC2h2adb2HHza_1qF3qI065j4RBrd-I4,6616
numpy/lib/info.pyc,,
numpy/lib/mixins.py,sha256=GeOiq01E663Z_06xQfIUYKpl2JPkswqhaQEernjnO_Q,7268
numpy/lib/mixins.pyc,,
numpy/lib/nanfunctions.py,sha256=7LsFmh0meOwBJpzoNnR1V8e2nAJv61A8Ib9EWmYFRLg,57741
numpy/lib/nanfunctions.pyc,,
numpy/lib/npyio.py,sha256=PqeSplzcbS7aZQdlYTxYAFPfJkPwJuS1I1f_sfEEpO0,84661
numpy/lib/npyio.pyc,,
numpy/lib/polynomial.py,sha256=Gm-XIvalJS2B1KMRvyBddziWHtd8ZCmWfxZlJ0kOiyc,40292
numpy/lib/polynomial.pyc,,
numpy/lib/recfunctions.py,sha256=OQ3lGqoHCauSXqgGJaGH0Bl1eNV_SdoAz02P0_7L2lw,54851
numpy/lib/recfunctions.pyc,,
numpy/lib/scimath.py,sha256=axf_K8DphkbuKZXA6K2A5fbyIu1BdKQ6P74iFW9YpTc,14698
numpy/lib/scimath.pyc,,
numpy/lib/setup.py,sha256=os9eV9wSzwTQlfxeoQ33gYQ4wOj1_6EvqcROc8PyGbE,379
numpy/lib/setup.pyc,,
numpy/lib/shape_base.py,sha256=T1RaVDs9X7GUBclWBf2SZkLZhY3xbpctMv8rtt0gdM0,37967
numpy/lib/shape_base.pyc,,
numpy/lib/stride_tricks.py,sha256=P7koCHdGLg31K2aQPIPcAmqLKKsnY-HZw_eS3hqUpZA,9123
numpy/lib/stride_tricks.pyc,,
numpy/lib/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/lib/tests/__init__.pyc,,
numpy/lib/tests/data/py2-objarr.npy,sha256=F4cyUC-_TB9QSFLAo2c7c44rC6NUYIgrfGx9PqWPSKk,258
numpy/lib/tests/data/py2-objarr.npz,sha256=xo13HBT0FbFZ2qvZz0LWGDb3SuQASSaXh7rKfVcJjx4,366
numpy/lib/tests/data/py3-objarr.npy,sha256=pTTVh8ezp-lwAK3fkgvdKU8Arp5NMKznVD-M6Ex_uA0,341
numpy/lib/tests/data/py3-objarr.npz,sha256=qQR0gS57e9ta16d_vCQjaaKM74gPdlwCPkp55P-qrdw,449
numpy/lib/tests/data/python3.npy,sha256=X0ad3hAaLGXig9LtSHAo-BgOvLlFfPYMnZuVIxRmj-0,96
numpy/lib/tests/data/win64python2.npy,sha256=agOcgHVYFJrV-nrRJDbGnUnF4ZTPYXuSeF-Mtg7GMpc,96
numpy/lib/tests/test__datasource.py,sha256=5LwfmvIysaLHlCYkmsj46S7YRF2zRG4BmKSjjJr6fdE,11463
numpy/lib/tests/test__datasource.pyc,,
numpy/lib/tests/test__iotools.py,sha256=7ocNK0I-XKtiJLxnq2Fq_Yszi-e-70Km7crI28Jyqww,13714
numpy/lib/tests/test__iotools.pyc,,
numpy/lib/tests/test__version.py,sha256=eCeeSqb8G3WNtCgkM3XGz9Zszyye-KFDlNQ7EY2J_UY,2055
numpy/lib/tests/test__version.pyc,,
numpy/lib/tests/test_arraypad.py,sha256=ZIcLFH5ykizK2XT6WN1f9CyR48tqHQnx_b2Ojurs7eo,49320
numpy/lib/tests/test_arraypad.pyc,,
numpy/lib/tests/test_arraysetops.py,sha256=WsH_vJI5guzG9Mix0y-kwVceTZ8e-aKJxEaf_RNTcbE,22157
numpy/lib/tests/test_arraysetops.pyc,,
numpy/lib/tests/test_arrayterator.py,sha256=run7iWWbvoHGGsDv_uB6G8QENFzOCSgUIxAMVp7ZMu4,1357
numpy/lib/tests/test_arrayterator.pyc,,
numpy/lib/tests/test_financial.py,sha256=8cCdlpNixwl1Wrgblemxi3ndTxX_Sq2yr-30lSURnq0,17098
numpy/lib/tests/test_financial.pyc,,
numpy/lib/tests/test_format.py,sha256=m8X4eNPyby2wOIENzkW8apHugUi5WRkzHZO15h9MSDU,35376
numpy/lib/tests/test_format.pyc,,
numpy/lib/tests/test_function_base.py,sha256=3qeRuK68MKs7Xkxe61M2ozQkCiSnTDpGFeJbrp807Uc,117817
numpy/lib/tests/test_function_base.pyc,,
numpy/lib/tests/test_histograms.py,sha256=0EhLLKOADkyQZTucCcXfYyAC5X1n5_vglMid0VJO-DE,33415
numpy/lib/tests/test_histograms.pyc,,
numpy/lib/tests/test_index_tricks.py,sha256=Ql-AUXqIgQSdLjbeRI7GmaiVVtdgH0YoR0m5DGS_V-g,16322
numpy/lib/tests/test_index_tricks.pyc,,
numpy/lib/tests/test_io.py,sha256=Z2bkX6n7a7lIKS4hfWxf20XyCFQfjFK8PAjEocnpOI0,96988
numpy/lib/tests/test_io.pyc,,
numpy/lib/tests/test_mixins.py,sha256=YNIKF716Jz7V8FJ8Zzww_F6laTD8j3A6SBxCXqt6rAQ,7233
numpy/lib/tests/test_mixins.pyc,,
numpy/lib/tests/test_nanfunctions.py,sha256=wS-i0JsIwMb0p35vW2qGC_dpewDFVzI2YTnJ25pr1O8,36179
numpy/lib/tests/test_nanfunctions.pyc,,
numpy/lib/tests/test_packbits.py,sha256=W4gtoYBa5LbevvbXL9lvrZRT5Wt1fqyI3J7oDLtza_A,12851
numpy/lib/tests/test_packbits.pyc,,
numpy/lib/tests/test_polynomial.py,sha256=C7XhyAVCbh_5_HWiZ5XPEVOq_WGtBa8hvmcmVYE3QDc,10055
numpy/lib/tests/test_polynomial.pyc,,
numpy/lib/tests/test_recfunctions.py,sha256=3ExnP2zwR3y9mO3rZ_ueqIQ5aMitvje76U-xWUG_PjY,38471
numpy/lib/tests/test_recfunctions.pyc,,
numpy/lib/tests/test_regression.py,sha256=96pKecYGHPZwAoHV3_kLvl3gIb0PN0m33R0H3dd7uSk,8472
numpy/lib/tests/test_regression.pyc,,
numpy/lib/tests/test_shape_base.py,sha256=nVUzbHADBmrOaOHeh5fA27gjxsnOC3r-S5lyo1n5MV8,23979
numpy/lib/tests/test_shape_base.pyc,,
numpy/lib/tests/test_stride_tricks.py,sha256=HUp9YL7eBTRfT8gs6iraMl6M3YvoDxfFmkkwwmroing,15392
numpy/lib/tests/test_stride_tricks.pyc,,
numpy/lib/tests/test_twodim_base.py,sha256=toC7eTjEuZxygJwQub0tC7_uGCtLVVMCHfa6EUkGJU4,17524
numpy/lib/tests/test_twodim_base.pyc,,
numpy/lib/tests/test_type_check.py,sha256=KxnoWjY3iGTnr0pDWEah73ZAx_6a85S9SSnkKIG-sn0,13509
numpy/lib/tests/test_type_check.pyc,,
numpy/lib/tests/test_ufunclike.py,sha256=VFt_8BDH7q80yXmYJSn1crolIMizKFN3mAJcigaazLU,3350
numpy/lib/tests/test_ufunclike.pyc,,
numpy/lib/tests/test_utils.py,sha256=kIH7i6N_Gtsk8FgIHTuYvASeGxQB15UYPJwqvWBPWkY,2474
numpy/lib/tests/test_utils.pyc,,
numpy/lib/twodim_base.py,sha256=sFRiYvhrOG9EY_YMlTblXb4aJKZaE3WLUx1WBKoIgG4,27339
numpy/lib/twodim_base.pyc,,
numpy/lib/type_check.py,sha256=XsSXtj8bHk22iq4NNZpwqMKPM9FoddtYNWKFi63oZqc,18073
numpy/lib/type_check.pyc,,
numpy/lib/ufunclike.py,sha256=1df-LT8UlC_SRmc06DhAnsUZLHROx0p56jw6GUwcap8,7156
numpy/lib/ufunclike.pyc,,
numpy/lib/user_array.py,sha256=7nJPlDfP-04Lcq8iH_cqBbSEsx5cHCcj-2Py-oh-5t0,7817
numpy/lib/user_array.pyc,,
numpy/lib/utils.py,sha256=L_JtNhuRwM6_4YyhM5jCpeH36j_lj5-t6XJT3pB4In0,36161
numpy/lib/utils.pyc,,
numpy/linalg/__init__.py,sha256=P2q5fyWhZEc-xhcruFEcHWmYhSBOWSr63i9UjE8x3fk,2326
numpy/linalg/__init__.pyc,,
numpy/linalg/_umath_linalg.so,sha256=o-tN4TdHWHggXAxfA1nBDiHBJqqyuW6o09zBFoFwzAw,872112
numpy/linalg/info.py,sha256=AbXPYYabJK5In0F9IMk-oVWZgDyEaoU45Wnq6RtuCJs,1198
numpy/linalg/info.pyc,,
numpy/linalg/lapack_lite.so,sha256=BNhR9YGqEaCh68JU5TlJnmxJGqZdgZ7_ZCS_lQwRay4,108832
numpy/linalg/linalg.py,sha256=rZuKNk2u7c65Cp8yssB1BEeCSPauDClcgYF6N4dY2So,85094
numpy/linalg/linalg.pyc,,
numpy/linalg/setup.py,sha256=k1X4EfRWACFtJYfb8Wiol_-pPnEMtqURxQ8H9FwFHWg,1878
numpy/linalg/setup.pyc,,
numpy/linalg/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/linalg/tests/__init__.pyc,,
numpy/linalg/tests/test_build.py,sha256=xKcJ8JmGk-zTqxxMhDX5GFsw-ptn8uwOUOcxaTUuPHc,1704
numpy/linalg/tests/test_build.pyc,,
numpy/linalg/tests/test_deprecations.py,sha256=eGYDVF3rmGQyDEMGOc-p_zc84Cx1I3jQPyaJe7xOvEc,706
numpy/linalg/tests/test_deprecations.pyc,,
numpy/linalg/tests/test_linalg.py,sha256=y87Nka03PZAqUl5GqzOb4LsLbgbGib5V9ehdoTIPLRI,69977
numpy/linalg/tests/test_linalg.pyc,,
numpy/linalg/tests/test_regression.py,sha256=zz7lprqDg7yU-z1d6AOdCDH3Tjqgw82QGiaPM7peixY,5671
numpy/linalg/tests/test_regression.pyc,,
numpy/ma/__init__.py,sha256=fcmMCElT3MmCkjIGVhXyEAbjuWe_j1NVUiE65eAMvy0,1470
numpy/ma/__init__.pyc,,
numpy/ma/bench.py,sha256=q3y_e1wpHVEdg0iIxrBshWVt2LOFfYi6q-eIJ3RSVrU,4942
numpy/ma/bench.pyc,,
numpy/ma/core.py,sha256=UVL30fxCdddsnMlLOgcCxl-ca_-Iqm6uyN8QHnczcH4,256431
numpy/ma/core.pyc,,
numpy/ma/extras.py,sha256=iNaY5jpgYLssKzzgS7FfhlZ3BM59gjLbsNb7CUylLDU,56986
numpy/ma/extras.pyc,,
numpy/ma/mrecords.py,sha256=j8EituvbyOFG5oiTwHBnVdQX1mhD_qByBezBeB_R1hM,26937
numpy/ma/mrecords.pyc,,
numpy/ma/setup.py,sha256=zkieH8BeiGVXl3Wlt_WeP9kciZlyAZY20DDu4SGk4b4,429
numpy/ma/setup.pyc,,
numpy/ma/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/ma/tests/__init__.pyc,,
numpy/ma/tests/test_core.py,sha256=pM6Wn3jxw6cPV7wFlNKWyyAYFDAGAm0oYtw2txBudKw,196219
numpy/ma/tests/test_core.pyc,,
numpy/ma/tests/test_deprecations.py,sha256=StN-maPV6dwIPn1LmJ_Fd9l_Ysrbzvl8BZy6zYeUru8,2340
numpy/ma/tests/test_deprecations.pyc,,
numpy/ma/tests/test_extras.py,sha256=f7wFcowBM60pnNwIJ221W9X6AWNS9pRK_VjVXV5Wqio,66791
numpy/ma/tests/test_extras.pyc,,
numpy/ma/tests/test_mrecords.py,sha256=SX0_-SgRqIQBlPaiDNVD0-oBAot0N9aLPWM7Gj4U804,19966
numpy/ma/tests/test_mrecords.pyc,,
numpy/ma/tests/test_old_ma.py,sha256=85NJMKj-TG8WGSMFT2KbDEsBsrgV58URkFUd1v9iuBc,32351
numpy/ma/tests/test_old_ma.pyc,,
numpy/ma/tests/test_regression.py,sha256=AGAA97e9_0q1VHSTOx6qIsh1qA56GzEKhWZWveuHf3w,2993
numpy/ma/tests/test_regression.pyc,,
numpy/ma/tests/test_subclassing.py,sha256=GEqxbqfodv1823cRitfJK3qMWTbDWIpv2HwuVB_kpXk,12997
numpy/ma/tests/test_subclassing.pyc,,
numpy/ma/testutils.py,sha256=meyy8_0sx4g2sebsVO1PrFSc6ogLzEU7vjOuu2VjY1U,10365
numpy/ma/testutils.pyc,,
numpy/ma/timer_comparison.py,sha256=Q1AyfHzNrWzVTrx6ebL9HgpQEkEJPHAkbWuTK_0bBkQ,15586
numpy/ma/timer_comparison.pyc,,
numpy/ma/version.py,sha256=KpJAmUE1s1TpbgqgdBpDoslxm7kOMpczLjEzLMGv9Ag,380
numpy/ma/version.pyc,,
numpy/matlib.py,sha256=bfk5RflWhOjnBKhpU4L-WDafyzoNIy5-K-8MMyIauN8,9809
numpy/matlib.pyc,,
numpy/matrixlib/__init__.py,sha256=W-2bi7zuMWQY5U1ikwfaBPubrcYkbxzPzzIeYz3RYPA,284
numpy/matrixlib/__init__.pyc,,
numpy/matrixlib/defmatrix.py,sha256=1tR1FsgapRQ2XbiAvV4ik4mwkKLJA1y6ABeztSeYr2k,30660
numpy/matrixlib/defmatrix.pyc,,
numpy/matrixlib/setup.py,sha256=7DS-rWnyWlLTuOj31UuhkyW8QhLQ7KD5wirtWT_DUhc,437
numpy/matrixlib/setup.pyc,,
numpy/matrixlib/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/matrixlib/tests/__init__.pyc,,
numpy/matrixlib/tests/test_defmatrix.py,sha256=FRkFPpDpgUEzEAgShORCVhPOuqclxBftHyEW5z2oV4o,15315
numpy/matrixlib/tests/test_defmatrix.pyc,,
numpy/matrixlib/tests/test_interaction.py,sha256=y0ldcMIKCeT_tRo_uON6Cvxuff-M4MxmqnzA0kDFHYU,12179
numpy/matrixlib/tests/test_interaction.pyc,,
numpy/matrixlib/tests/test_masked_matrix.py,sha256=4uslUEOdw_ACZ9R-VKX2m82HlDeNFrBs-zP8uuWj5gI,8962
numpy/matrixlib/tests/test_masked_matrix.pyc,,
numpy/matrixlib/tests/test_matrix_linalg.py,sha256=XYsAcC02YgvlfqAQOLY2hOuggeRlRhkztNsLYWGb4QQ,2125
numpy/matrixlib/tests/test_matrix_linalg.pyc,,
numpy/matrixlib/tests/test_multiarray.py,sha256=jM-cFU_ktanoyJ0ScRYv5xwohhE3pKpVhBBtd31b-IQ,628
numpy/matrixlib/tests/test_multiarray.pyc,,
numpy/matrixlib/tests/test_numeric.py,sha256=YPq5f11MUAV6WcLQbl8xKWcm17lMj9SJ09mamqGCpxA,515
numpy/matrixlib/tests/test_numeric.pyc,,
numpy/matrixlib/tests/test_regression.py,sha256=ou1TP5bFNpjRaL2-zQxzS11ChwvAkCVp3k71SBtOO9M,1001
numpy/matrixlib/tests/test_regression.pyc,,
numpy/polynomial/__init__.py,sha256=boBgsbz2Rr49pBTyGNT3TnLRTPSauyjBNeCVGek7oUM,1134
numpy/polynomial/__init__.pyc,,
numpy/polynomial/_polybase.py,sha256=GEr4yD6OnPtNo98Mf0p5r8vt_nEmTeqTRG3pljAADbQ,32779
numpy/polynomial/_polybase.pyc,,
numpy/polynomial/chebyshev.py,sha256=79hcfdqUHgAtBofN4ZZHTkOJNzYeJ12KsCgZm4zng6I,67424
numpy/polynomial/chebyshev.pyc,,
numpy/polynomial/hermite.py,sha256=14FITYGMDQzZLsAIu6TwIeS_Eh4O3dTizXHRmVLddAI,58113
numpy/polynomial/hermite.pyc,,
numpy/polynomial/hermite_e.py,sha256=NuXm8lrR5s8yli_bUauvgUsX0p0yM-EwtvNj6srObtU,58237
numpy/polynomial/hermite_e.pyc,,
numpy/polynomial/laguerre.py,sha256=o3ZvgUi9ivpWGqPIk6hCAGcs8P9mljAxP54oXpQfYiM,56513
numpy/polynomial/laguerre.pyc,,
numpy/polynomial/legendre.py,sha256=UvhOne6SyvBKj5DIYGyfD9bu_RcMqADY5ezbVkhBR8s,57701
numpy/polynomial/legendre.pyc,,
numpy/polynomial/polynomial.py,sha256=9XK_JxmTv4IjCgtJ03dd6ASNDIe8H0crEOa7MbstUTI,53443
numpy/polynomial/polynomial.pyc,,
numpy/polynomial/polyutils.py,sha256=2qA03OFnMiXQj6aF0vIUWN2B99D4yd-dEMSMOYDOLf0,11529
numpy/polynomial/polyutils.pyc,,
numpy/polynomial/setup.py,sha256=PKIUV6Jh7_0jBboPp3IHPmp6LWVs4tbIkdu_FtmI_5U,385
numpy/polynomial/setup.pyc,,
numpy/polynomial/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/polynomial/tests/__init__.pyc,,
numpy/polynomial/tests/test_chebyshev.py,sha256=ntXcwISDcgmlGGfMhwYWiWdjqtTVVUfFdQHm-Msx5yc,20719
numpy/polynomial/tests/test_chebyshev.pyc,,
numpy/polynomial/tests/test_classes.py,sha256=F07n2iV0_XPK2JC_8egdnO6FDETpttR7gW6e-8zDtEs,20056
numpy/polynomial/tests/test_classes.pyc,,
numpy/polynomial/tests/test_hermite.py,sha256=OQNcZGOg1FoqVVXrouHqanG2d2zCUEUdhutRV9WaIOs,18758
numpy/polynomial/tests/test_hermite.pyc,,
numpy/polynomial/tests/test_hermite_e.py,sha256=W1akH58gTi9VrXh2GiyJfPhpeJzf57XnAFVIgM33hp4,19092
numpy/polynomial/tests/test_hermite_e.pyc,,
numpy/polynomial/tests/test_laguerre.py,sha256=fyNsRBmdHn1Sd0uQaoXeL70kJb6nQCMeYE5X7utxkS0,17692
numpy/polynomial/tests/test_laguerre.pyc,,
numpy/polynomial/tests/test_legendre.py,sha256=Np3xtAMN5zlioM5HFsyLR4tdAJW0ibvfJbz9QHWMkOo,18456
numpy/polynomial/tests/test_legendre.pyc,,
numpy/polynomial/tests/test_polynomial.py,sha256=xbrdofA-XCwZhsyPL5tMKDEZ5cWzxNp6Pz4SV_4nKEU,19552
numpy/polynomial/tests/test_polynomial.pyc,,
numpy/polynomial/tests/test_polyutils.py,sha256=GzRz3leypd2UrWE-EwuIWL0lbbj6ks6Mjli3tozDN9U,3081
numpy/polynomial/tests/test_polyutils.pyc,,
numpy/polynomial/tests/test_printing.py,sha256=_7O-05q3JEjdxmuzBdWxligQVdC6qGygKmbhfiYW9KQ,2067
numpy/polynomial/tests/test_printing.pyc,,
numpy/random/__init__.py,sha256=RvKHC6GpPCEcZdGLYiDG3RH5vEbJfOkL4fM0igfBAAA,6053
numpy/random/__init__.pyc,,
numpy/random/info.py,sha256=OzPLVv_aA7kxLu9WdGiRqO2_yA2163PWQi3Lwwrhs3E,109
numpy/random/info.pyc,,
numpy/random/mtrand.so,sha256=m1nTioYCsspPoM5cqrMt5FkkqiGErpwL3ulG-HyKuYY,3190922
numpy/random/randomkit.h,sha256=GOfc27td8dO8YM0WeB_qM313pouCDUt9Ad7nc_lgKI0,6799
numpy/random/setup.py,sha256=Zm-rZze8r6GWKT-o9tYq2DVym0AMh2tNwE_s6m1Z-Bc,2286
numpy/random/setup.pyc,,
numpy/random/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/random/tests/__init__.pyc,,
numpy/random/tests/test_random.py,sha256=0V5bRWCOZiMrbv96Lhq-nR0R-o8yedZ8Jgy1ewfP_Gc,66167
numpy/random/tests/test_random.pyc,,
numpy/random/tests/test_regression.py,sha256=Eb0wEE5cbGklIwcSTNkPI6CpawspICJsx3lYtTDxl7A,5671
numpy/random/tests/test_regression.pyc,,
numpy/setup.py,sha256=lsyhnRXfo0ybq63nVUX8HnYhQ1mI0bSic-mk-lK3wnc,920
numpy/setup.pyc,,
numpy/testing/__init__.py,sha256=MHRK5eimwrC9RE723HlOcOQGxu5HAmQ-qwlcVX1sZ1k,632
numpy/testing/__init__.pyc,,
numpy/testing/_private/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/testing/_private/__init__.pyc,,
numpy/testing/_private/decorators.py,sha256=JSIBsQH4t1rdMcr1-Cf2jBJ6CXzIGEFyZoWxUJuXI7M,9015
numpy/testing/_private/decorators.pyc,,
numpy/testing/_private/noseclasses.py,sha256=nYtV16KcoqAcHswfYO-u6bRIrDBvCvpqjCNfl7zk-SA,14601
numpy/testing/_private/noseclasses.pyc,,
numpy/testing/_private/nosetester.py,sha256=S1nEtDBvNT87Zrt8XmuSVIBWpanJwjtD1YiRlcf7eoA,20515
numpy/testing/_private/nosetester.pyc,,
numpy/testing/_private/parameterized.py,sha256=S_cqBegd7kdwVq1kg_DAnywwFPT_g1bjDJ6-LMq0LO4,18316
numpy/testing/_private/parameterized.pyc,,
numpy/testing/_private/utils.py,sha256=TNDvuuT_SN73Hr07ODXOvRk8wgueYWF1uYdSSjIJhsk,78209
numpy/testing/_private/utils.pyc,,
numpy/testing/decorators.py,sha256=BEktn0PuVlmgUQ_zGVNXu0wQYh3W0_bu61LnQPrxY20,428
numpy/testing/decorators.pyc,,
numpy/testing/noseclasses.py,sha256=iZmGKPHAGQIshsEONB-oLt7gHPzx2Bg57oat_M4M5XE,423
numpy/testing/noseclasses.pyc,,
numpy/testing/nosetester.py,sha256=as3E0khSkTseCRpyvtOSSq4fJY1K1lrrAyIcXOErTMo,583
numpy/testing/nosetester.pyc,,
numpy/testing/print_coercion_tables.py,sha256=F44AObcou_xytUWszku8t1bWuui-4I_18o7Z7zW8l18,2705
numpy/testing/print_coercion_tables.pyc,,
numpy/testing/setup.py,sha256=9PnlgcejccUBzaGPi9Po-ElhmuQMAmWCBRdvCDwiKYw,676
numpy/testing/setup.pyc,,
numpy/testing/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/testing/tests/__init__.pyc,,
numpy/testing/tests/test_decorators.py,sha256=JB3wOfG4SHAvGNBJgEnotP6Y7uHgNq00-Ji8-vpTL0M,5921
numpy/testing/tests/test_decorators.pyc,,
numpy/testing/tests/test_doctesting.py,sha256=sKBXwuRZwMFSiem3R9egBzzSUB81kkpw9y-Y07iqU2M,1413
numpy/testing/tests/test_doctesting.pyc,,
numpy/testing/tests/test_utils.py,sha256=I8zSV7NrpCwC4hF9DXqR22OqMUF65Rg6oljOXBWp010,52756
numpy/testing/tests/test_utils.pyc,,
numpy/testing/utils.py,sha256=3Z2wHEc2f-0lZrdDueAdbe96KQw1DqM_aFosea9VRtY,1232
numpy/testing/utils.pyc,,
numpy/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
numpy/tests/__init__.pyc,,
numpy/tests/test_ctypeslib.py,sha256=Fy_dBd80RrBufyeXISkBu6kS3X700qOD5ob0pDjRssg,12276
numpy/tests/test_ctypeslib.pyc,,
numpy/tests/test_matlib.py,sha256=WKILeEOe3NdKP_XAy-uCs4VEi7r_ghQ7NUhIgH1LzoM,2158
numpy/tests/test_matlib.pyc,,
numpy/tests/test_numpy_version.py,sha256=VtTTZAPnsJ8xtKLy1qYqIwrpcjTtqJ9xP9qP5-p8DbU,647
numpy/tests/test_numpy_version.pyc,,
numpy/tests/test_public_api.py,sha256=CmikwegnRWXrMO7vvsZ4Z8O8bwDsfuq5tfOWO-0ccs8,3457
numpy/tests/test_public_api.pyc,,
numpy/tests/test_reloading.py,sha256=7sDoPGkvvZas7FhT4oOURt75A5JAcr_Ws2uoJ9cVMiY,1304
numpy/tests/test_reloading.pyc,,
numpy/tests/test_scripts.py,sha256=SxlQPb8EttfP4V5iGJyXMBtDWTS3EcYVBN-JWDTtSy4,1637
numpy/tests/test_scripts.pyc,,
numpy/tests/test_warnings.py,sha256=ye4TBGnOuPAZyu5bS5JDxYV5hLglUQQfKSrMWwY_phI,2594
numpy/tests/test_warnings.pyc,,
numpy/version.py,sha256=5fSzfrOy5GglDQLyQSQBrK0HuGT2cGqu3DYSwiL72Hw,294
numpy/version.pyc,,

@ -0,0 +1,5 @@
Wheel-Version: 1.0
Generator: bdist_wheel (0.31.1)
Root-Is-Purelib: false
Tag: cp27-cp27mu-manylinux1_x86_64

@ -0,0 +1,5 @@
[console_scripts]
f2py = numpy.f2py.f2py2e:main
f2py2 = numpy.f2py.f2py2e:main
f2py2.7 = numpy.f2py.f2py2e:main

@ -0,0 +1,940 @@
Copyright (c) 2005-2019, NumPy Developers.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
* Neither the name of the NumPy Developers nor the names of any
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The NumPy repository and source distributions bundle several libraries that are
compatibly licensed. We list these here.
Name: Numpydoc
Files: doc/sphinxext/numpydoc/*
License: 2-clause BSD
For details, see doc/sphinxext/LICENSE.txt
Name: scipy-sphinx-theme
Files: doc/scipy-sphinx-theme/*
License: 3-clause BSD, PSF and Apache 2.0
For details, see doc/scipy-sphinx-theme/LICENSE.txt
Name: lapack-lite
Files: numpy/linalg/lapack_lite/*
License: 3-clause BSD
For details, see numpy/linalg/lapack_lite/LICENSE.txt
Name: tempita
Files: tools/npy_tempita/*
License: BSD derived
For details, see tools/npy_tempita/license.txt
Name: dragon4
Files: numpy/core/src/multiarray/dragon4.c
License: One of a kind
For license text, see numpy/core/src/multiarray/dragon4.c
----
This binary distribution of NumPy also bundles the following software:
Name: OpenBLAS
Files: .libs/libopenb*.so
Description: bundled as a dynamically linked library
Availability: https://github.com/xianyi/OpenBLAS/
License: 3-clause BSD
Copyright (c) 2011-2014, The OpenBLAS Project
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
3. Neither the name of the OpenBLAS project nor the names of
its contributors may be used to endorse or promote products
derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Name: LAPACK
Files: .libs/libopenb*.so
Description: bundled in OpenBLAS
Availability: https://github.com/xianyi/OpenBLAS/
License 3-clause BSD
Copyright (c) 1992-2013 The University of Tennessee and The University
of Tennessee Research Foundation. All rights
reserved.
Copyright (c) 2000-2013 The University of California Berkeley. All
rights reserved.
Copyright (c) 2006-2013 The University of Colorado Denver. All rights
reserved.
$COPYRIGHT$
Additional copyrights may follow
$HEADER$
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
- Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer listed
in this license in the documentation and/or other materials
provided with the distribution.
- Neither the name of the copyright holders nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
The copyright holders provide no reassurances that the source code
provided does not infringe any patent, copyright, or any other
intellectual property rights of third parties. The copyright holders
disclaim any liability to any recipient for claims brought against
recipient by any third party for infringement of that parties
intellectual property rights.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Name: GCC runtime library
Files: .libs/libgfortran*.so
Description: dynamically linked to files compiled with gcc
Availability: https://gcc.gnu.org/viewcvs/gcc/
License: GPLv3 + runtime exception
Copyright (C) 2002-2017 Free Software Foundation, Inc.
Libgfortran is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
Libgfortran is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
Under Section 7 of GPL version 3, you are granted additional
permissions described in the GCC Runtime Library Exception, version
3.1, as published by the Free Software Foundation.
You should have received a copy of the GNU General Public License and
a copy of the GCC Runtime Library Exception along with this program;
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>.
----
Full text of license texts referred to above follows (that they are
listed below does not necessarily imply the conditions apply to the
present binary release):
----
GCC RUNTIME LIBRARY EXCEPTION
Version 3.1, 31 March 2009
Copyright (C) 2009 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.
This GCC Runtime Library Exception ("Exception") is an additional
permission under section 7 of the GNU General Public License, version
3 ("GPLv3"). It applies to a given file (the "Runtime Library") that
bears a notice placed by the copyright holder of the file stating that
the file is governed by GPLv3 along with this Exception.
When you use GCC to compile a program, GCC may combine portions of
certain GCC header files and runtime libraries with the compiled
program. The purpose of this Exception is to allow compilation of
non-GPL (including proprietary) programs to use, in this way, the
header files and runtime libraries covered by this Exception.
0. Definitions.
A file is an "Independent Module" if it either requires the Runtime
Library for execution after a Compilation Process, or makes use of an
interface provided by the Runtime Library, but is not otherwise based
on the Runtime Library.
"GCC" means a version of the GNU Compiler Collection, with or without
modifications, governed by version 3 (or a specified later version) of
the GNU General Public License (GPL) with the option of using any
subsequent versions published by the FSF.
"GPL-compatible Software" is software whose conditions of propagation,
modification and use would permit combination with GCC in accord with
the license of GCC.
"Target Code" refers to output from any compiler for a real or virtual
target processor architecture, in executable form or suitable for
input to an assembler, loader, linker and/or execution
phase. Notwithstanding that, Target Code does not include data in any
format that is used as a compiler intermediate representation, or used
for producing a compiler intermediate representation.
The "Compilation Process" transforms code entirely represented in
non-intermediate languages designed for human-written code, and/or in
Java Virtual Machine byte code, into Target Code. Thus, for example,
use of source code generators and preprocessors need not be considered
part of the Compilation Process, since the Compilation Process can be
understood as starting with the output of the generators or
preprocessors.
A Compilation Process is "Eligible" if it is done using GCC, alone or
with other GPL-compatible software, or if it is done without using any
work based on GCC. For example, using non-GPL-compatible Software to
optimize any GCC intermediate representations would not qualify as an
Eligible Compilation Process.
1. Grant of Additional Permission.
You have permission to propagate a work of Target Code formed by
combining the Runtime Library with Independent Modules, even if such
propagation would otherwise violate the terms of GPLv3, provided that
all Target Code was generated by Eligible Compilation Processes. You
may then convey such a combination under terms of your choice,
consistent with the licensing of the Independent Modules.
2. No Weakening of GCC Copyleft.
The availability of this Exception does not imply any general
presumption that third-party software is unaffected by the copyleft
requirements of the license of GCC.
----
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
<program> Copyright (C) <year> <name of author>
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<http://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<http://www.gnu.org/philosophy/why-not-lgpl.html>.

@ -0,0 +1,39 @@
# This file is generated by numpy's setup.py
# It contains system_info results at the time of building this package.
__all__ = ["get_info","show"]
import os
import sys
extra_dll_dir = os.path.join(os.path.dirname(__file__), '.libs')
if sys.platform == 'win32' and os.path.isdir(extra_dll_dir):
os.environ.setdefault('PATH', '')
os.environ['PATH'] += os.pathsep + extra_dll_dir
lapack_opt_info={'libraries': ['openblas', 'openblas'], 'library_dirs': ['/usr/local/lib'], 'language': 'c', 'define_macros': [('HAVE_CBLAS', None)]}
blas_opt_info={'libraries': ['openblas', 'openblas'], 'library_dirs': ['/usr/local/lib'], 'language': 'c', 'define_macros': [('HAVE_CBLAS', None)]}
blis_info={}
openblas_info={'libraries': ['openblas', 'openblas'], 'library_dirs': ['/usr/local/lib'], 'language': 'c', 'define_macros': [('HAVE_CBLAS', None)]}
openblas_lapack_info={'libraries': ['openblas', 'openblas'], 'library_dirs': ['/usr/local/lib'], 'language': 'c', 'define_macros': [('HAVE_CBLAS', None)]}
lapack_mkl_info={}
blas_mkl_info={}
def get_info(name):
g = globals()
return g.get(name, g.get(name + "_info", {}))
def show():
for name,info_dict in globals().items():
if name[0] == "_" or type(info_dict) is not type({}): continue
print(name + ":")
if not info_dict:
print(" NOT AVAILABLE")
for k,v in info_dict.items():
v = str(v)
if k == "sources" and len(v) > 200:
v = v[:60] + " ...\n... " + v[-60:]
print(" %s = %s" % (k,v))

@ -0,0 +1,219 @@
"""
NumPy
=====
Provides
1. An array object of arbitrary homogeneous items
2. Fast mathematical operations over arrays
3. Linear Algebra, Fourier Transforms, Random Number Generation
How to use the documentation
----------------------------
Documentation is available in two forms: docstrings provided
with the code, and a loose standing reference guide, available from
`the NumPy homepage <https://www.scipy.org>`_.
We recommend exploring the docstrings using
`IPython <https://ipython.org>`_, an advanced Python shell with
TAB-completion and introspection capabilities. See below for further
instructions.
The docstring examples assume that `numpy` has been imported as `np`::
>>> import numpy as np
Code snippets are indicated by three greater-than signs::
>>> x = 42
>>> x = x + 1
Use the built-in ``help`` function to view a function's docstring::
>>> help(np.sort)
... # doctest: +SKIP
For some objects, ``np.info(obj)`` may provide additional help. This is
particularly true if you see the line "Help on ufunc object:" at the top
of the help() page. Ufuncs are implemented in C, not Python, for speed.
The native Python help() does not know how to view their help, but our
np.info() function does.
To search for documents containing a keyword, do::
>>> np.lookfor('keyword')
... # doctest: +SKIP
General-purpose documents like a glossary and help on the basic concepts
of numpy are available under the ``doc`` sub-module::
>>> from numpy import doc
>>> help(doc)
... # doctest: +SKIP
Available subpackages
---------------------
doc
Topical documentation on broadcasting, indexing, etc.
lib
Basic functions used by several sub-packages.
random
Core Random Tools
linalg
Core Linear Algebra Tools
fft
Core FFT routines
polynomial
Polynomial tools
testing
NumPy testing tools
f2py
Fortran to Python Interface Generator.
distutils
Enhancements to distutils with support for
Fortran compilers support and more.
Utilities
---------
test
Run numpy unittests
show_config
Show numpy build configuration
dual
Overwrite certain functions with high-performance Scipy tools
matlib
Make everything matrices.
__version__
NumPy version string
Viewing documentation using IPython
-----------------------------------
Start IPython with the NumPy profile (``ipython -p numpy``), which will
import `numpy` under the alias `np`. Then, use the ``cpaste`` command to
paste examples into the shell. To see which functions are available in
`numpy`, type ``np.<TAB>`` (where ``<TAB>`` refers to the TAB key), or use
``np.*cos*?<ENTER>`` (where ``<ENTER>`` refers to the ENTER key) to narrow
down the list. To view the docstring for a function, use
``np.cos?<ENTER>`` (to view the docstring) and ``np.cos??<ENTER>`` (to view
the source code).
Copies vs. in-place operation
-----------------------------
Most of the functions in `numpy` return a copy of the array argument
(e.g., `np.sort`). In-place versions of these functions are often
available as array methods, i.e. ``x = np.array([1,2,3]); x.sort()``.
Exceptions to this rule are documented.
"""
from __future__ import division, absolute_import, print_function
import sys
import warnings
from ._globals import ModuleDeprecationWarning, VisibleDeprecationWarning
from ._globals import _NoValue
# We first need to detect if we're being called as part of the numpy setup
# procedure itself in a reliable manner.
try:
__NUMPY_SETUP__
except NameError:
__NUMPY_SETUP__ = False
if __NUMPY_SETUP__:
sys.stderr.write('Running from numpy source directory.\n')
else:
try:
from numpy.__config__ import show as show_config
except ImportError:
msg = """Error importing numpy: you should not try to import numpy from
its source directory; please exit the numpy source tree, and relaunch
your python interpreter from there."""
raise ImportError(msg)
from .version import git_revision as __git_revision__
from .version import version as __version__
__all__ = ['ModuleDeprecationWarning',
'VisibleDeprecationWarning']
# Allow distributors to run custom init code
from . import _distributor_init
from . import core
from .core import *
from . import compat
from . import lib
from .lib import *
from . import linalg
from . import fft
from . import polynomial
from . import random
from . import ctypeslib
from . import ma
from . import matrixlib as _mat
from .matrixlib import *
from .compat import long
# Make these accessible from numpy name-space
# but not imported in from numpy import *
if sys.version_info[0] >= 3:
from builtins import bool, int, float, complex, object, str
unicode = str
else:
from __builtin__ import bool, int, float, complex, object, unicode, str
from .core import round, abs, max, min
# now that numpy modules are imported, can initialize limits
core.getlimits._register_known_types()
__all__.extend(['__version__', 'show_config'])
__all__.extend(core.__all__)
__all__.extend(_mat.__all__)
__all__.extend(lib.__all__)
__all__.extend(['linalg', 'fft', 'random', 'ctypeslib', 'ma'])
# Filter out Cython harmless warnings
warnings.filterwarnings("ignore", message="numpy.dtype size changed")
warnings.filterwarnings("ignore", message="numpy.ufunc size changed")
warnings.filterwarnings("ignore", message="numpy.ndarray size changed")
# oldnumeric and numarray were removed in 1.9. In case some packages import
# but do not use them, we define them here for backward compatibility.
oldnumeric = 'removed'
numarray = 'removed'
# We don't actually use this ourselves anymore, but I'm not 100% sure that
# no-one else in the world is using it (though I hope not)
from .testing import Tester
# Pytest testing
from numpy._pytesttester import PytestTester
test = PytestTester(__name__)
del PytestTester
def _sanity_check():
"""
Quick sanity checks for common bugs caused by environment.
There are some cases e.g. with wrong BLAS ABI that cause wrong
results under specific runtime conditions that are not necessarily
achieved during test suite runs, and it is useful to catch those early.
See https://github.com/numpy/numpy/issues/8577 and other
similar bug reports.
"""
try:
x = ones(2, dtype=float32)
if not abs(x.dot(x) - 2.0) < 1e-5:
raise AssertionError()
except AssertionError:
msg = ("The current Numpy installation ({!r}) fails to "
"pass simple sanity checks. This can be caused for example "
"by incorrect BLAS library being linked in, or by mixing "
"package managers (pip, conda, apt, ...). Search closed "
"numpy issues for similar problems.")
raise RuntimeError(msg.format(__file__))
_sanity_check()
del _sanity_check

@ -0,0 +1,10 @@
""" Distributor init file
Distributors: you can add custom code here to support particular distributions
of numpy.
For example, this is a good place to put any checks for hardware requirements.
The numpy standard source distribution will not put code in this file, so you
can safely replace this file with your own version.
"""

@ -0,0 +1,81 @@
"""
Module defining global singleton classes.
This module raises a RuntimeError if an attempt to reload it is made. In that
way the identities of the classes defined here are fixed and will remain so
even if numpy itself is reloaded. In particular, a function like the following
will still work correctly after numpy is reloaded::
def foo(arg=np._NoValue):
if arg is np._NoValue:
...
That was not the case when the singleton classes were defined in the numpy
``__init__.py`` file. See gh-7844 for a discussion of the reload problem that
motivated this module.
"""
from __future__ import division, absolute_import, print_function
__ALL__ = [
'ModuleDeprecationWarning', 'VisibleDeprecationWarning', '_NoValue'
]
# Disallow reloading this module so as to preserve the identities of the
# classes defined here.
if '_is_loaded' in globals():
raise RuntimeError('Reloading numpy._globals is not allowed')
_is_loaded = True
class ModuleDeprecationWarning(DeprecationWarning):
"""Module deprecation warning.
The nose tester turns ordinary Deprecation warnings into test failures.
That makes it hard to deprecate whole modules, because they get
imported by default. So this is a special Deprecation warning that the
nose tester will let pass without making tests fail.
"""
ModuleDeprecationWarning.__module__ = 'numpy'
class VisibleDeprecationWarning(UserWarning):
"""Visible deprecation warning.
By default, python will not show deprecation warnings, so this class
can be used when a very visible warning is helpful, for example because
the usage is most likely a user bug.
"""
VisibleDeprecationWarning.__module__ = 'numpy'
class _NoValueType(object):
"""Special keyword value.
The instance of this class may be used as the default value assigned to a
deprecated keyword in order to check if it has been given a user defined
value.
"""
__instance = None
def __new__(cls):
# ensure that only one instance exists
if not cls.__instance:
cls.__instance = super(_NoValueType, cls).__new__(cls)
return cls.__instance
# needed for python 2 to preserve identity through a pickle
def __reduce__(self):
return (self.__class__, ())
def __repr__(self):
return "<no value>"
_NoValue = _NoValueType()

@ -0,0 +1,209 @@
"""
Pytest test running.
This module implements the ``test()`` function for NumPy modules. The usual
boiler plate for doing that is to put the following in the module
``__init__.py`` file::
from numpy._pytesttester import PytestTester
test = PytestTester(__name__).test
del PytestTester
Warnings filtering and other runtime settings should be dealt with in the
``pytest.ini`` file in the numpy repo root. The behavior of the test depends on
whether or not that file is found as follows:
* ``pytest.ini`` is present (develop mode)
All warnings except those explicily filtered out are raised as error.
* ``pytest.ini`` is absent (release mode)
DeprecationWarnings and PendingDeprecationWarnings are ignored, other
warnings are passed through.
In practice, tests run from the numpy repo are run in develop mode. That
includes the standard ``python runtests.py`` invocation.
This module is imported by every numpy subpackage, so lies at the top level to
simplify circular import issues. For the same reason, it contains no numpy
imports at module scope, instead importing numpy within function calls.
"""
from __future__ import division, absolute_import, print_function
import sys
import os
__all__ = ['PytestTester']
def _show_numpy_info():
import numpy as np
print("NumPy version %s" % np.__version__)
relaxed_strides = np.ones((10, 1), order="C").flags.f_contiguous
print("NumPy relaxed strides checking option:", relaxed_strides)
class PytestTester(object):
"""
Pytest test runner.
This class is made available in ``numpy.testing``, and a test function
is typically added to a package's __init__.py like so::
from numpy.testing import PytestTester
test = PytestTester(__name__).test
del PytestTester
Calling this test function finds and runs all tests associated with the
module and all its sub-modules.
Attributes
----------
module_name : str
Full path to the package to test.
Parameters
----------
module_name : module name
The name of the module to test.
"""
def __init__(self, module_name):
self.module_name = module_name
def __call__(self, label='fast', verbose=1, extra_argv=None,
doctests=False, coverage=False, durations=-1, tests=None):
"""
Run tests for module using pytest.
Parameters
----------
label : {'fast', 'full'}, optional
Identifies the tests to run. When set to 'fast', tests decorated
with `pytest.mark.slow` are skipped, when 'full', the slow marker
is ignored.
verbose : int, optional
Verbosity value for test outputs, in the range 1-3. Default is 1.
extra_argv : list, optional
List with any extra arguments to pass to pytests.
doctests : bool, optional
.. note:: Not supported
coverage : bool, optional
If True, report coverage of NumPy code. Default is False.
Requires installation of (pip) pytest-cov.
durations : int, optional
If < 0, do nothing, If 0, report time of all tests, if > 0,
report the time of the slowest `timer` tests. Default is -1.
tests : test or list of tests
Tests to be executed with pytest '--pyargs'
Returns
-------
result : bool
Return True on success, false otherwise.
Notes
-----
Each NumPy module exposes `test` in its namespace to run all tests for
it. For example, to run all tests for numpy.lib:
>>> np.lib.test() #doctest: +SKIP
Examples
--------
>>> result = np.lib.test() #doctest: +SKIP
...
1023 passed, 2 skipped, 6 deselected, 1 xfailed in 10.39 seconds
>>> result
True
"""
import pytest
import warnings
#FIXME This is no longer needed? Assume it was for use in tests.
# cap verbosity at 3, which is equivalent to the pytest '-vv' option
#from . import utils
#verbose = min(int(verbose), 3)
#utils.verbose = verbose
#
module = sys.modules[self.module_name]
module_path = os.path.abspath(module.__path__[0])
# setup the pytest arguments
pytest_args = ["-l"]
# offset verbosity. The "-q" cancels a "-v".
pytest_args += ["-q"]
# Filter out distutils cpu warnings (could be localized to
# distutils tests). ASV has problems with top level import,
# so fetch module for suppression here.
with warnings.catch_warnings():
warnings.simplefilter("always")
from numpy.distutils import cpuinfo
# Filter out annoying import messages. Want these in both develop and
# release mode.
pytest_args += [
"-W ignore:Not importing directory",
"-W ignore:numpy.dtype size changed",
"-W ignore:numpy.ufunc size changed",
"-W ignore::UserWarning:cpuinfo",
]
# When testing matrices, ignore their PendingDeprecationWarnings
pytest_args += [
"-W ignore:the matrix subclass is not",
]
# Ignore python2.7 -3 warnings
pytest_args += [
r"-W ignore:sys\.exc_clear\(\) not supported in 3\.x:DeprecationWarning",
r"-W ignore:in 3\.x, __setslice__:DeprecationWarning",
r"-W ignore:in 3\.x, __getslice__:DeprecationWarning",
r"-W ignore:buffer\(\) not supported in 3\.x:DeprecationWarning",
r"-W ignore:CObject type is not supported in 3\.x:DeprecationWarning",
r"-W ignore:comparing unequal types not supported in 3\.x:DeprecationWarning",
r"-W ignore:the commands module has been removed in Python 3\.0:DeprecationWarning",
r"-W ignore:The 'new' module has been removed in Python 3\.0:DeprecationWarning",
]
if doctests:
raise ValueError("Doctests not supported")
if extra_argv:
pytest_args += list(extra_argv)
if verbose > 1:
pytest_args += ["-" + "v"*(verbose - 1)]
if coverage:
pytest_args += ["--cov=" + module_path]
if label == "fast":
pytest_args += ["-m", "not slow"]
elif label != "full":
pytest_args += ["-m", label]
if durations >= 0:
pytest_args += ["--durations=%s" % durations]
if tests is None:
tests = [self.module_name]
pytest_args += ["--pyargs"] + list(tests)
# run tests.
_show_numpy_info()
try:
code = pytest.main(pytest_args)
except SystemExit as exc:
code = exc.code
return code == 0

@ -0,0 +1,20 @@
"""
Compatibility module.
This module contains duplicated code from Python itself or 3rd party
extensions, which may be included for the following reasons:
* compatibility
* we may only need a small subset of the copied library/module
"""
from __future__ import division, absolute_import, print_function
from . import _inspect
from . import py3k
from ._inspect import getargspec, formatargspec
from .py3k import *
__all__ = []
__all__.extend(_inspect.__all__)
__all__.extend(py3k.__all__)

@ -0,0 +1,193 @@
"""Subset of inspect module from upstream python
We use this instead of upstream because upstream inspect is slow to import, and
significantly contributes to numpy import times. Importing this copy has almost
no overhead.
"""
from __future__ import division, absolute_import, print_function
import types
__all__ = ['getargspec', 'formatargspec']
# ----------------------------------------------------------- type-checking
def ismethod(object):
"""Return true if the object is an instance method.
Instance method objects provide these attributes:
__doc__ documentation string
__name__ name with which this method was defined
im_class class object in which this method belongs
im_func function object containing implementation of method
im_self instance to which this method is bound, or None
"""
return isinstance(object, types.MethodType)
def isfunction(object):
"""Return true if the object is a user-defined function.
Function objects provide these attributes:
__doc__ documentation string
__name__ name with which this function was defined
func_code code object containing compiled function bytecode
func_defaults tuple of any default values for arguments
func_doc (same as __doc__)
func_globals global namespace in which this function was defined
func_name (same as __name__)
"""
return isinstance(object, types.FunctionType)
def iscode(object):
"""Return true if the object is a code object.
Code objects provide these attributes:
co_argcount number of arguments (not including * or ** args)
co_code string of raw compiled bytecode
co_consts tuple of constants used in the bytecode
co_filename name of file in which this code object was created
co_firstlineno number of first line in Python source code
co_flags bitmap: 1=optimized | 2=newlocals | 4=*arg | 8=**arg
co_lnotab encoded mapping of line numbers to bytecode indices
co_name name with which this code object was defined
co_names tuple of names of local variables
co_nlocals number of local variables
co_stacksize virtual machine stack space required
co_varnames tuple of names of arguments and local variables
"""
return isinstance(object, types.CodeType)
# ------------------------------------------------ argument list extraction
# These constants are from Python's compile.h.
CO_OPTIMIZED, CO_NEWLOCALS, CO_VARARGS, CO_VARKEYWORDS = 1, 2, 4, 8
def getargs(co):
"""Get information about the arguments accepted by a code object.
Three things are returned: (args, varargs, varkw), where 'args' is
a list of argument names (possibly containing nested lists), and
'varargs' and 'varkw' are the names of the * and ** arguments or None.
"""
if not iscode(co):
raise TypeError('arg is not a code object')
nargs = co.co_argcount
names = co.co_varnames
args = list(names[:nargs])
# The following acrobatics are for anonymous (tuple) arguments.
# Which we do not need to support, so remove to avoid importing
# the dis module.
for i in range(nargs):
if args[i][:1] in ['', '.']:
raise TypeError("tuple function arguments are not supported")
varargs = None
if co.co_flags & CO_VARARGS:
varargs = co.co_varnames[nargs]
nargs = nargs + 1
varkw = None
if co.co_flags & CO_VARKEYWORDS:
varkw = co.co_varnames[nargs]
return args, varargs, varkw
def getargspec(func):
"""Get the names and default values of a function's arguments.
A tuple of four things is returned: (args, varargs, varkw, defaults).
'args' is a list of the argument names (it may contain nested lists).
'varargs' and 'varkw' are the names of the * and ** arguments or None.
'defaults' is an n-tuple of the default values of the last n arguments.
"""
if ismethod(func):
func = func.__func__
if not isfunction(func):
raise TypeError('arg is not a Python function')
args, varargs, varkw = getargs(func.__code__)
return args, varargs, varkw, func.__defaults__
def getargvalues(frame):
"""Get information about arguments passed into a particular frame.
A tuple of four things is returned: (args, varargs, varkw, locals).
'args' is a list of the argument names (it may contain nested lists).
'varargs' and 'varkw' are the names of the * and ** arguments or None.
'locals' is the locals dictionary of the given frame.
"""
args, varargs, varkw = getargs(frame.f_code)
return args, varargs, varkw, frame.f_locals
def joinseq(seq):
if len(seq) == 1:
return '(' + seq[0] + ',)'
else:
return '(' + ', '.join(seq) + ')'
def strseq(object, convert, join=joinseq):
"""Recursively walk a sequence, stringifying each element.
"""
if type(object) in [list, tuple]:
return join([strseq(_o, convert, join) for _o in object])
else:
return convert(object)
def formatargspec(args, varargs=None, varkw=None, defaults=None,
formatarg=str,
formatvarargs=lambda name: '*' + name,
formatvarkw=lambda name: '**' + name,
formatvalue=lambda value: '=' + repr(value),
join=joinseq):
"""Format an argument spec from the 4 values returned by getargspec.
The first four arguments are (args, varargs, varkw, defaults). The
other four arguments are the corresponding optional formatting functions
that are called to turn names and values into strings. The ninth
argument is an optional function to format the sequence of arguments.
"""
specs = []
if defaults:
firstdefault = len(args) - len(defaults)
for i in range(len(args)):
spec = strseq(args[i], formatarg, join)
if defaults and i >= firstdefault:
spec = spec + formatvalue(defaults[i - firstdefault])
specs.append(spec)
if varargs is not None:
specs.append(formatvarargs(varargs))
if varkw is not None:
specs.append(formatvarkw(varkw))
return '(' + ', '.join(specs) + ')'
def formatargvalues(args, varargs, varkw, locals,
formatarg=str,
formatvarargs=lambda name: '*' + name,
formatvarkw=lambda name: '**' + name,
formatvalue=lambda value: '=' + repr(value),
join=joinseq):
"""Format an argument spec from the 4 values returned by getargvalues.
The first four arguments are (args, varargs, varkw, locals). The
next four arguments are the corresponding optional formatting functions
that are called to turn names and values into strings. The ninth
argument is an optional function to format the sequence of arguments.
"""
def convert(name, locals=locals,
formatarg=formatarg, formatvalue=formatvalue):
return formatarg(name) + formatvalue(locals[name])
specs = [strseq(arg, convert, join) for arg in args]
if varargs:
specs.append(formatvarargs(varargs) + formatvalue(locals[varargs]))
if varkw:
specs.append(formatvarkw(varkw) + formatvalue(locals[varkw]))
return '(' + ', '.join(specs) + ')'

@ -0,0 +1,243 @@
"""
Python 3 compatibility tools.
"""
from __future__ import division, absolute_import, print_function
__all__ = ['bytes', 'asbytes', 'isfileobj', 'getexception', 'strchar',
'unicode', 'asunicode', 'asbytes_nested', 'asunicode_nested',
'asstr', 'open_latin1', 'long', 'basestring', 'sixu',
'integer_types', 'is_pathlib_path', 'npy_load_module', 'Path',
'contextlib_nullcontext', 'os_fspath', 'os_PathLike']
import sys
try:
from pathlib import Path, PurePath
except ImportError:
Path = PurePath = None
if sys.version_info[0] >= 3:
import io
long = int
integer_types = (int,)
basestring = str
unicode = str
bytes = bytes
def asunicode(s):
if isinstance(s, bytes):
return s.decode('latin1')
return str(s)
def asbytes(s):
if isinstance(s, bytes):
return s
return str(s).encode('latin1')
def asstr(s):
if isinstance(s, bytes):
return s.decode('latin1')
return str(s)
def isfileobj(f):
return isinstance(f, (io.FileIO, io.BufferedReader, io.BufferedWriter))
def open_latin1(filename, mode='r'):
return open(filename, mode=mode, encoding='iso-8859-1')
def sixu(s):
return s
strchar = 'U'
else:
bytes = str
long = long
basestring = basestring
unicode = unicode
integer_types = (int, long)
asbytes = str
asstr = str
strchar = 'S'
def isfileobj(f):
return isinstance(f, file)
def asunicode(s):
if isinstance(s, unicode):
return s
return str(s).decode('ascii')
def open_latin1(filename, mode='r'):
return open(filename, mode=mode)
def sixu(s):
return unicode(s, 'unicode_escape')
def getexception():
return sys.exc_info()[1]
def asbytes_nested(x):
if hasattr(x, '__iter__') and not isinstance(x, (bytes, unicode)):
return [asbytes_nested(y) for y in x]
else:
return asbytes(x)
def asunicode_nested(x):
if hasattr(x, '__iter__') and not isinstance(x, (bytes, unicode)):
return [asunicode_nested(y) for y in x]
else:
return asunicode(x)
def is_pathlib_path(obj):
"""
Check whether obj is a pathlib.Path object.
Prefer using `isinstance(obj, os_PathLike)` instead of this function.
"""
return Path is not None and isinstance(obj, Path)
# from Python 3.7
class contextlib_nullcontext(object):
"""Context manager that does no additional processing.
Used as a stand-in for a normal context manager, when a particular
block of code is only sometimes used with a normal context manager:
cm = optional_cm if condition else nullcontext()
with cm:
# Perform operation, using optional_cm if condition is True
"""
def __init__(self, enter_result=None):
self.enter_result = enter_result
def __enter__(self):
return self.enter_result
def __exit__(self, *excinfo):
pass
if sys.version_info[0] >= 3 and sys.version_info[1] >= 4:
def npy_load_module(name, fn, info=None):
"""
Load a module.
.. versionadded:: 1.11.2
Parameters
----------
name : str
Full module name.
fn : str
Path to module file.
info : tuple, optional
Only here for backward compatibility with Python 2.*.
Returns
-------
mod : module
"""
import importlib.machinery
return importlib.machinery.SourceFileLoader(name, fn).load_module()
else:
def npy_load_module(name, fn, info=None):
"""
Load a module.
.. versionadded:: 1.11.2
Parameters
----------
name : str
Full module name.
fn : str
Path to module file.
info : tuple, optional
Information as returned by `imp.find_module`
(suffix, mode, type).
Returns
-------
mod : module
"""
import imp
import os
if info is None:
path = os.path.dirname(fn)
fo, fn, info = imp.find_module(name, [path])
else:
fo = open(fn, info[1])
try:
mod = imp.load_module(name, fo, fn, info)
finally:
fo.close()
return mod
# backport abc.ABC
import abc
if sys.version_info[:2] >= (3, 4):
abc_ABC = abc.ABC
else:
abc_ABC = abc.ABCMeta('ABC', (object,), {'__slots__': ()})
# Backport os.fs_path, os.PathLike, and PurePath.__fspath__
if sys.version_info[:2] >= (3, 6):
import os
os_fspath = os.fspath
os_PathLike = os.PathLike
else:
def _PurePath__fspath__(self):
return str(self)
class os_PathLike(abc_ABC):
"""Abstract base class for implementing the file system path protocol."""
@abc.abstractmethod
def __fspath__(self):
"""Return the file system path representation of the object."""
raise NotImplementedError
@classmethod
def __subclasshook__(cls, subclass):
if PurePath is not None and issubclass(subclass, PurePath):
return True
return hasattr(subclass, '__fspath__')
def os_fspath(path):
"""Return the path representation of a path-like object.
If str or bytes is passed in, it is returned unchanged. Otherwise the
os.PathLike interface is used to get the path representation. If the
path representation is not str or bytes, TypeError is raised. If the
provided path is not str, bytes, or os.PathLike, TypeError is raised.
"""
if isinstance(path, (unicode, bytes)):
return path
# Work from the object's type to match method resolution of other magic
# methods.
path_type = type(path)
try:
path_repr = path_type.__fspath__(path)
except AttributeError:
if hasattr(path_type, '__fspath__'):
raise
elif PurePath is not None and issubclass(path_type, PurePath):
return _PurePath__fspath__(path)
else:
raise TypeError("expected str, bytes or os.PathLike object, "
"not " + path_type.__name__)
if isinstance(path_repr, (unicode, bytes)):
return path_repr
else:
raise TypeError("expected {}.__fspath__() to return str or bytes, "
"not {}".format(path_type.__name__,
type(path_repr).__name__))

@ -0,0 +1,12 @@
from __future__ import division, print_function
def configuration(parent_package='',top_path=None):
from numpy.distutils.misc_util import Configuration
config = Configuration('compat', parent_package, top_path)
config.add_data_dir('tests')
return config
if __name__ == '__main__':
from numpy.distutils.core import setup
setup(configuration=configuration)

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save