2012 Seguros Bolívar Open Bucaramanga – Singles
Éric Prodon was the defending champion, but lost in the semifinals to Wayne Odesnik.
Singles | |
---|---|
2012 Seguros Bolívar Open Bucaramanga | |
Champion | ![]() |
Runner-up | ![]() |
Final score | 6–1, 7–6(7–4) |
Odesnik then went on to win the title, defeating Adrian Ungur in the final 6–1, 7–6(7–4).
Seeds
Éric Prodon (Semi Finals) Paolo Lorenzi (Semi Finals) Horacio Zeballos (Quarterfinals) Adrian Ungur (Final) Máximo González (Quarterfinals) Wayne Odesnik (Champion) Paul Capdeville (Second Round) Júlio Silva (Quarterfinals)
Draw
Key
- Q = Qualifier
- WC = Wild Card
- LL = Lucky Loser
- Alt = Alternate
- SE = Special Exempt
- PR = Protected Ranking
- ITF = ITF entry
- JE = Junior Exempt
- w/o = Walkover
- r = Retired
- d = Defaulted
Finals
Semifinals | Final | ||||||||||||
1 | ![]() | 5 | 0 | ||||||||||
6 | ![]() | 7 | 6 | ||||||||||
6 | ![]() | 6 | 77 | ||||||||||
4 | ![]() | 1 | 64 | ||||||||||
4 | ![]() | 4 | 6 | 6 | |||||||||
2 | ![]() | 6 | 3 | 4 | |||||||||
Top Half
First Round | Second Round | Quarterfinals | Semifinals | ||||||||||||||||||||||||
1 | ![]() | 6 | 4 | 6 | |||||||||||||||||||||||
![]() | 3 | 6 | 3 | 1 | ![]() | 6 | 7 | ||||||||||||||||||||
![]() | 6 | 2 | 2 | ![]() | 4 | 5 | |||||||||||||||||||||
![]() | 3 | 6 | 6 | 1 | ![]() | 3 | 6 | 7 | |||||||||||||||||||
![]() | 77 | 6 | 8 | ![]() | 6 | 1 | 5 | ||||||||||||||||||||
![]() | 61 | 3 | ![]() | 5 | 2 | ||||||||||||||||||||||
![]() | 3 | 3 | 8 | ![]() | 7 | 6 | |||||||||||||||||||||
8 | ![]() | 6 | 6 | 1 | ![]() | 5 | 0 | ||||||||||||||||||||
3 | ![]() | 7 | 6 | 6 | ![]() | 7 | 6 | ||||||||||||||||||||
WC | ![]() | 5 | 1 | 3 | ![]() | 6 | 6 | ||||||||||||||||||||
![]() | 3 | 3 | ![]() | 4 | 4 | ||||||||||||||||||||||
![]() | 6 | 6 | 3 | ![]() | 3 | 4 | |||||||||||||||||||||
WC | ![]() | 4 | 1 | 6 | ![]() | 6 | 6 | ||||||||||||||||||||
![]() | 6 | 6 | ![]() | 4 | 3 | ||||||||||||||||||||||
![]() | 4 | 5 | 6 | ![]() | 6 | 6 | |||||||||||||||||||||
6 | ![]() | 6 | 7 |
Bottom Half
First Round | Second Round | Quarterfinals | Semifinals | ||||||||||||||||||||||||
7 | ![]() | 6 | 6 | ||||||||||||||||||||||||
Q | ![]() | 3 | 2 | 7 | ![]() | 4 | 6 | 65 | |||||||||||||||||||
Q | ![]() | 0 | 7 | 4 | ![]() | 6 | 4 | 77 | |||||||||||||||||||
![]() | 6 | 5 | 6 | ![]() | 3 | 2 | |||||||||||||||||||||
![]() | 6 | 6 | 4 | ![]() | 6 | 6 | |||||||||||||||||||||
WC | ![]() | 0 | 3 | ![]() | 4 | 1 | |||||||||||||||||||||
Q | ![]() | 7 | 4 | 1 | 4 | ![]() | 6 | 6 | |||||||||||||||||||
4 | ![]() | 5 | 6 | 6 | 4 | ![]() | 4 | 6 | 6 | ||||||||||||||||||
5/WC | ![]() | 6 | 6 | 2 | ![]() | 6 | 3 | 4 | |||||||||||||||||||
![]() | 3 | 3 | 5/WC | ![]() | 6 | 6 | |||||||||||||||||||||
![]() | 7 | 64 | 0 | ![]() | 4 | 0 | |||||||||||||||||||||
![]() | 5 | 77 | 6 | 5/WC | ![]() | 5 | 6 | 1 | |||||||||||||||||||
Q | ![]() | 64 | 1 | 2 | ![]() | 7 | 3 | 6 | |||||||||||||||||||
![]() | 77 | 6 | ![]() | 2 | 2 | ||||||||||||||||||||||
![]() | 2 | 2 | 2 | ![]() | 6 | 6 | |||||||||||||||||||||
2 | ![]() | 6 | 6 |
gollark: ```python#!/usr/bin/env python3import argparseimport subprocessimport randomimport stringparser = argparse.ArgumentParser(description="Compile a WHY program using WHYJIT.")parser.add_argument("input", help="File containing WHY source code")parser.add_argument("-o", "--output", help="Filename of the output executable to make", default="./a.why")parser.add_argument("-O", "--optimize", help="Optimization level", type=int, default="0")args = parser.parse_args()def randomword(length): letters = string.ascii_lowercase return ''.join(random.choice(letters) for i in range(length))def which(program): proc = subprocess.run(["which", program], stdout=subprocess.PIPE) if proc.returncode == 0: return proc.stdout.replace(b"\n", b"") else: return Nonedef find_C_compiler(): compilers = ["gcc", "clang", "tcc", "cc"] for compiler in compilers: path = which(compiler) if path != None: return pathdef build_output(code, mx): C_code = f"""#define QUITELONG long long intconst QUITELONG max = {mx};int main() {{ volatile QUITELONG i = 0; // disable some "optimizations" that RUIN OUR BEAUTIFUL CODE! while (i < max) {{ i++; }} {code}}} """ heredoc = randomword(100) devnull = "2>/dev/null" shell_script = f"""#!/bin/shTMP1=/tmp/ignore-meTMP2=/tmp/ignore-me-tooTMP3=/tmp/dont-look-here cat << {heredoc} > $TMP1{C_code}{heredoc}sed -e '1,/^exit \$?$/d' "$0" > $TMP3chmod +x $TMP3$TMP3 -x c -o $TMP2 $TMP1chmod +x $TMP2$TMP2exit $?""".encode("utf-8") with open(find_C_compiler(), "rb") as f: return shell_script + f.read()input = args.inputoutput = args.outputwith open(input, "r") as f: contents = f.read() looplen = max(1000, (2 ** -args.optimize) * 1000000000) code = build_output( contents, looplen ) with open(output, "wb") as out: out.write(code)```
gollark: I mean, it uses (y, x) coordinates, if I remember correctly!
gollark: Where n = infinity.
gollark: Which bot? And what is `FALSE`?
gollark: Also, add Rust support!
References
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.